状態マシン図を使用したオブジェクトの振る舞いのモデリング
状態マシン図を使用して、クラス、コラボレーション、コンポーネント、ノード、操作、ユースケース、またはシステム全体の振る舞いを図示できます。
状態マシンの作成
状態マシンを作成すると、複雑または重要な振る舞いをするオブジェクトを記述することができます。状態マシンを作成すると、デフォルトでは単一のダイアグラムおよび領域が作成されます。領域は、オブジェクトの振る舞いをグラフィカルに記述するためにダイアグラムに追加する状態および遷移を保持するコンテナーです。 状態マシンは、クラス、コンポーネント、および操作用に作成できます。
状態マシンへのダイアグラムの追加
状態マシンを作成すると、状態マシン図が開きます。状態マシンに図を追加して、オブジェクトのさまざまな振る舞いの特徴を記述できます。状態マシン図は、クラス、コラボレーション、コンポーネント、ノード、およびユースケースに対して作成できます。
状態と疑似状態の状態マシンへの追加
UML モデリングでは、状態を状態マシン、コンポジット状態、または 直交状態の領域に追加して、オブジェクトの振る舞いを記述することが できます。
状態マシンおよび状態へのリージョンの追加
UML モデリングでは、リージョンは、状態、疑似状態、および遷移を保持するコンテナーです。リージョンは、状態マシンまたは状態に追加できます。リージョンを使用すると、ネストされた状態および遷移を定義できます。
領域に対する編集の設定の変更
「モデル・エクスプローラー」ビューでの領域の変更は、同じ状態マシンが所有するダイアグラムに反映され、ダイアグラム・エディターでの領域の変更は、「モデル・エクスプローラー」ビューに反映されます。領域の正規プロパティー値を false に設定すると、「モデル・エクスプローラー」ビューでの領域への変更が、対応する状態マシン図に反映されなくなり、同じ状態マシン内の他のダイアグラムと独立に領域を編集できるようになります。
状態の区画タイトルの表示
UML 状態マシン図では、状態は区画に分割されます。状態のアクションおよび領域区画のタイトルを表示することができます。
状態の区画の非表示
状態のアクション区画および領域区画を非表示にすることができます。
状態間の遷移の作成
UML モデリングでは、状態マシン図に遷移を追加し、オブジェクトの状態変化を表示できます。 遷移の 3 つのオプション・パートとして、トリガー、ガード条件、および効果があります。 遷移の開始にイベントの発生が必要であることを示すには、トリガーを遷移に追加します。 遷移の発生に特定のブール条件が true になる必要があることを示すには、ガード条件を遷移に追加します。 ガード条件に適合した場合にオブジェクトが特定のアクティビティーを実行することを示すには、効果を遷移に追加します。
新規のコンポジット状態への状態マシンのモデル要素のグループ化
UML モデリングでは、状態マシン内の選択されたモデル要素を新規の状態にグループ化し、複雑な状態マシンの詳細を非表示にすることができます。
状態のコンポジット状態からの削除
UML モデリングでは、コンポジット状態をその個々の状態に分割する ことによって、状態をコンポジット状態から削除することができます。 コンポジット状態は状態マシンから削除されて、コンポジット状態に含まれた 状態で置換されます。
状態への入状時、実行時、および退状時アクティビティーの追加
UML モデリングでは、入状時、実行時、または退状時アクティビティーを状態に追加して、ある状態に入ったときだけ、または状態から出たときだけに実行するアクティビティー、または特定の状態で進行中のアクティビティーを記述することができます。
関連概念
状態マシン