状態、リージョン、および遷移

UML モデリングでの状態は、1 つのオブジェクトの振る舞いの変更を表します。状態の変更は、2 つの状態の間のパスを示す遷移を使用して記述されます。

状態

1 つの状態に他の状態を含めることができます。含まれている状態を、ネストされた状態またはサブ状態ということもあります。複雑な状態マシンをモデリングする場合は、ネストされた状態を使用して、詳細な振る舞いを複数のレベルに分離します。状態にアクションを含めることにより、オブジェクトが特定の状態にあるときに発生する可能性のあるタスクをアクションによって識別することもできます。

状態タイプとリージョン

各状態は、複数の区画に分割されます。一番上の区画には、状態の名前が表示されます。名前区画の下にある区画は、アクション区画です。アクション区画には、状態に含まれる実行、入状、および退状の各アクティビティーが表示されます。アクティビティー区画の下の各区画は、リージョンを表します。状態マシン、コンポジット状態、および直交状態にリージョンが含まれます。リージョンには、状態、疑似状態、および遷移を含めることができます。リージョンを使用して、ネストされた状態および遷移を定義します。
状態タイプ 説明 図要素
簡単 リージョンを持たない状態 簡単状態の名前は、コーナーが丸みを帯びた長方形の一番上の区画に表示されます。
コンポジット 1 つのリージョンを持っている状態 コンポジット状態の名前は、コーナーが丸みを帯びた長方形の一番上の区画に表示されます。
直交 複数のリージョンを持っている状態 直交状態の名前は、コーナーが丸みを帯びた長方形の一番上の区画に表示されます。
終了 リージョン内のアクティビティーが完了したことを示すためにコンポジット状態のリージョン内に配置される状態 終了状態の名前は、中に黒丸がある円の下に表示されます。
サブマシン状態 別の状態マシンを参照する状態 サブマシン状態の名前は、コーナーが丸みを帯びた長方形の一番上の区画に表示されます。

遷移

遷移は、状態の変更が発生していることを示す状態間のパスを示します。遷移の 3 つの部分はトリガー、ガード条件、および効果であり、そのすべてがオプションです。

トリガーはイベントであり、遷移を開始するにはこのイベントが発生する必要があります。ガード条件はブール条件であり、遷移が発生するにはこの条件が真である必要があります。効果はアクションまたはアクティビティーであり、ガード条件が満たされたときにはオブジェクトがこのアクションまたはアクティビティーを実行します。
イベント・タイプ 説明 アイコン
呼び出し オブジェクトは、操作を呼び出すための要求を受け取ります。操作の呼び出しによって、遷移がトリガーされます。 「呼び出しトリガー」アイコン。
変更 条件が真であるときに遷移をトリガーするブール条件が指定されます。 「変更トリガー」アイコン。
シグナル 指定されたメッセージをオブジェクトが受け取ると、遷移がトリガーされます。 「シグナル・トリガー」アイコン。
時間 経過する必要のある時間の長さまたは遷移をトリガーする時刻が指定されます。 「時間トリガー」アイコン。
関連タスク
状態と疑似状態の状態マシンへの追加
状態間の遷移の作成
遷移へのトリガーの追加
遷移へのガード条件の追加
遷移への効果の追加
ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved. (C) Copyright IBM Japan 2005