<< 目次を表示 >> ページ位置: プログラムの動作解析 > 動作の記録 > 状態遷移の情報を追加 > 状態マシン |
状態マシンと、状態マシンに含まれるステートマシン図では、アプリケーションの実行中に発生する状態の変化を図示します。ステートマシン図では、有効な状態と、状態間の明示的な遷移を定義します。
手順
まず、対象のクラス要素の子要素として、状態マシン要素を作成する必要があります。状態マシンに含まれるステートマシン図に、対象のクラス要素内部の状態変化をモデリングします。
次に、それぞれの状態の「制約」として、それぞれの状態であるを示すための条件を入力します。
条件は、クラスの属性を利用して実際のコードとして記述します。OCLを利用するのではありません。複数の内容の場合には、改行して記載してください。以下は定義の一例です。
m_strColor == "Blue"
設定後、記録サブウィンドウからデバッガを起動します。
記録サブウィンドウの実行ボタンを押します。
シーケンス図の自動生成を実行する際に、関係するステートマシン図として、このステートマシン図を指定します。指定する際には、モデル内に存在するすべての状態マシン要素が一覧に含まれ、その中のステートマシン図を指定します。
デバッグを実行し終了すると、シーケンス図を生成するかどうかの確認ダイアログが表示されます。その際に、状態遷移をシーケンス図上に表現するかどうかを指定できます。対象のクラスを示すライフライン上で状態の変化がある位置に、状態要素が配置されます。
例:
下の図は、メルボルンの地下鉄のシステムに含まれる状態を示しています。地下鉄のネットワーク上を移動する電車は、下の状態マシン図で定義される駅に停車します。
この駅のステートマシン図を含む状態マシン要素は、CTrainクラスの下に配置されます。
対象のダイアグラムを指定する状態遷移の記録ダイアログでは、モデルルートが表示されています。状態マシン要素の子ダイアグラムになっているステートマシン図が指定できます。
参照: