I see myself using sequence diagram when dealing with a really complex process that normally almost always include threading and/or message passing.