Я бы посмотрел на диаграмму активности UML для отображения нескольких потоков и их параллельного выполнения. На диаграммах связи вы также иногда видите буквы потоков (например, A, B, C), чтобы попытаться обозначить параллельные потоки, но я почти всегда нахожу это запутанным. В UML 2 есть фрагменты, которые могут помочь показать параллелизм в диаграммах последовательности, но я всегда нахожу это громоздким и трудным для рефакторинга диаграмм (что означает, что они быстро устаревают).
Если потоки выполняют те же задачи, но работают параллельно, вы можете просто добавить примечание к диаграмме, чтобы объяснить это. Таким образом, вы можете сосредоточиться на моделировании одного потока точно и чисто.
Что касается того, какой инструмент использовать в большинстве IDE, в некоторой степени будет включен инструмент моделирования UML, например, Я счастлив использовать инструменты на основе EMF, которые поставляются с Eclipse.