統一モデリング言語 (UML) シーケンス図では、相互作用演算子は結合フラグメントのセマンティクスを定義し、結合フラグメントにおける相互作用オペランドの使用方法を決めます。
結合フラグメントは以下の相互作用演算子で構成されることがあります。
相互作用演算子 | 説明 |
---|---|
代替 | 代替相互作用演算子は、指定された基準に従って相互作用が選択できる一連の振る舞いを識別します。 相互作用を通る任意の 1 つのパスに対して、提示された代替相互作用が 1 つのみ実行されます。 ただし、オペランドの場合と同様に、代替構造内の選択されたオペランドはガード条件テストが真の場合のみ実行されます。 ガードが存在しない場合は、オペランドを選択すると、常にオペランドが実行されます。 代替結合フラグメントの else 節は、その他のオプションがどれも選択されていない場合に実行されます。 |
オプション | オプション相互作用演算子は、相互作用の一部として使用される場合と使用されない場合のある振る舞いを表します。振る舞いを使用するには、ガード条件を満たしている必要があります。 ガード条件を満たしていない場合、振る舞いは無視されます。 オプション結合フラグメントのグラフィック表現は、1 つの相互作用のみを提供する代替と似ています。 |
ループ | ループ相互作用演算子は、相互作用フラグメントが繰り返し実行されることを示します。 実行回数は、オペレーターの minint および maxint パラメーターで判別されます。ループ・オペレーターの構文は、loop (minint, maxint) です。maxint には無限大 (*) も設定できます。最小反復数を満たすと、ブール式がパスごとにテストされます。 ブール式テストが偽の場合、ループが終了します。 |
以下の図に、相互作用での相互作用演算子の表現方法を示します。