シーケンス図または同様の図で、実行の複数のスレッドをどのように明確に説明できますか?
明確な例を見つけることができませんでした。私が見るすべての図は、単一のスレッドを示すために使用されます。
更新:受け入れられた答えは私が見た最良の例でしたが、それは望まれるべきかなりのビットを残しています。最終的に、スレッドを別々のシーケンス図に示しました。シーケンス図が複数のスレッドで必ず機能するかどうかはわかりません。
役に立つかもしれない1つの図があり、左側に説明があります: http://sdedit.sourceforge.net/multithreading/example/index.html
「par」フラグメントを使用して、並行して実行される複数の同期呼び出しをモデル化できます。フラグメントは、ラベル「par」を持つ長方形で構成されています。長方形は複数のボックスに分割され、それぞれが実行のスレッドを表します。
リンクから抽出された例の下。
このページに例を示します。 http://www.ibm.com/developerworks/rational/library/3101.html#N10227
これは、sihayaの答えの複製ですが、Web上のツールを使用してそれを達成する方法の詳細と、消えない視覚的な例があります。
UMLシーケンス図のアプローチは、「par」フラグメントを使用して、並行して処理される複数のメッセージをモデル化することです。以下は、Webで利用可能な PlantUML ツールに入力すると、下の図を生成するテキストの説明です。
@startuml
Person -> MicrowaveOven : Cook Food
activate MicrowaveOven
par
MicrowaveOven -> MicrowaveOven : Activate Magnetron
else
MicrowaveOven -> MicrowaveOven : Activate Rotation Motor
end
MicrowaveOven --> Person : Delicious Food
deactivate MicrowaveOven
@enduml
メッセージシーケンスチャート 、またはMSCに興味があるかもしれません。
ここ は、MSCを簡単に説明したスライドです。