シーケンス図で "実行仕様" を付与
PlantUML を使って、シーケンス図を描いてみます。
注:UMLとしての記述の厳密さ && 例題は気にしないで。
actor ann as a #red actor bob as b #blue a -> b : attack a <- b : counter-attack hide footbox
この例では、2つのオブジェクト (annさんとbobさん) で、メッセージのやり取りをしています。
注:UMLとしての記述の厳密さは、ここでは気にしないでください。
ここで、annさんからbobさんがメッセージを受けてなにかを実行する場合、これを「四角いバー」で示すことができます。
PlantUML では、ライフライン(Lifeline) に 実行仕様 (Execution Specification) (または活性区間)を付与する方法は、いくつかあるようです。
必要な部分に明示する方法 (activate, deactivate)
実行仕様の記述が必要になった部分/不要になった部分に、明示的に記述します。
actor ann as a #red actor bob as b #blue a -> b : attack activate b a <- b : counter-attack deactivate b hide footbox
自動的に付与する方法 (autoactivate)
autoactivate on
を書いておくと、自動的に実行仕様を付与することができます。
actor ann as a #red actor bob as b #blue autoactivate on a -> b : attack a <- b : counter-attack hide footbox
必要な部分に明示する方法 2 (++, --)
実行仕様の記述が必要になった部分/不要になった部分に、明示的に記述します。
前述の方法とは異なり、メッセージ(Message) の記述と同時に、実行仕様を指定できます。
個人的に便利に感じる の使い方です。
actor ann as a #red actor bob as b #blue a -> b ++ : attack a <- b -- : counter-attack hide footbox
おまけ: 実行仕様に 色を付ける
メッセージの最後に色コードを付与すると、実行仕様に色が付きます。
actor ann as a #red actor bob as b #blue a -> b ++ #green: attack a <- b -- : counter-attack hide footbox