擬似状態について

アクティビティ・モデラーでは、ANDORの2つの擬似状態、およびINITIALFINALの2つの状態を使用できます。AND擬似状態とOR擬似状態はアクティビティ図において遷移の結合または分割に使用され、ダイアグラムのアクティビティを通るパラレルな(同時)パスまたは排他的(代替)パス(あるいはその両方)を表します。AND擬似状態およびOR擬似状態は、結合、分岐またはブランチの形式を取ります。INITIAL状態とFINAL状態は、アクティビティ・モデルを開始および終了します。

擬似状態は、有効な遷移内でのみ使用できます。1つの遷移内で、2つのアクティビティ間に複数のオブジェクト・フロー状態を指定することはできません。擬似状態は1つの遷移に複数挿入できます。

AND擬似状態

ANDは、結合または分岐を表します。結合には、2つ以上の入力遷移および1つの出力遷移があります。結合の前までは、それぞれのパスに関連付けられたアクティビティはパラレルに継続しています。入力フローがすべて結合に到達するまで同時フローが待機した後、1つの制御フローが継続します。分岐では、1つの制御フローが2つ以上の同時制御フローに分割されます。分岐には、1つの入力遷移および2つ以上の出力遷移があります。分岐では、アクティビティのパラレル・スレッドが可能です。

OR擬似状態

ORは、結合またはブランチを表します。結合には、2つ以上の入力遷移および1つの出力遷移があります。結合の前までは、それぞれのパスに関連付けられたアクティビティはパラレルに継続しています。OR結合では、入力フローが1つだけ結合に到達した時点で1つの制御フローが継続します。ブランチは、1つのフローが2つ以上の同時制御フローに分割される状態を表します。ブランチには、1つの入力遷移および2つ以上の出力遷移があります。遷移に連結されているガード条件によって、どの出力遷移が発生するかが決まります。ブランチは、アクティビティが順に実行される代替スレッドを表します。

INITIAL状態とFINAL状態

INITIAL(INITIAL pseudostate状態は、事前条件が検証されるアクティビティの初期状態を表します。初期状態を指定できるのは1回のみです。

FINAL(FINAL pseudostate状態は、事後条件が検証されるアクティビティの終了状態を表します。終了状態は何回でも指定できます。

結合について

結合は2つ以上の同時制御フローの同期を表し、ANDまたはORの2つの種類があります。どちらのタイプにも、2つ以上の入力遷移および1つの出力遷移があります。結合の前までは、それぞれのパスに関連付けられたアクティビティはパラレルに継続しています。AND結合では、入力フローがすべて結合に到達するまで同時フローが待機した後、1つの制御フローが継続します。OR結合では、入力フローが1つだけ結合に到達した時点で1つの制御フローが継続します。図1は、この2種類の結合を示しています。

図1: 2種類の結合の疑似状態

This illustration is described in the text.

分岐とブランチについて

分岐とブランチは、1つの制御フローが2つ以上の同時制御フローに分割される状態を表し、どちらにも1つの入力遷移および2つ以上の出力遷移があります。遷移に連結されているガード条件(規則)によって、複数の出力遷移がパラレルで発生する(分岐)か、その中の1つの出力遷移のみが発生する(ブランチ)かが判断されます。分岐ではアクティビティのパラレル・スレッドが可能で、ブランチはアクティビティが順に実行される単一スレッドを表します。図2は分岐とブランチを示しています。

図2: 分岐とブランチ

This illustration is described in the text.


関連項目

擬似状態の作成