それは『まだ「運転中」状態に一度も遷移していない時に履歴状態へ遷移が起こったらどうすれば良いのか?』が明示されていないという点です。 このような便利なモデル要素は知らないと損ですよね。 「運転切替」イベントが発生し、現在の状態が「暖房」になる。
しかしシーケンス図の場合は、命令から実行までの流れを時系列的に詳述している点、オブジェクト間の通信関係を全体的に表示している点が特徴です。 例として前出のエアコンの状態遷移を考えてみてください。 図7:入れ子の初期状態を明示した正しい例 図7 のステートマシン図では、「運転中」状態の入れ子の状態遷移に初期状態が明示されています。
20そして、状態には「初期状態 initial state 」「最終状態 final state 」といった特別な状態があります。 内部遷移 合成状態に対して定義した切り替えを一覧表示します。 このように非決定な状態遷移になってしまうことを避けるために、 初期状態と同じように 最大1本だけ履歴状態から出て行く遷移線を引くことができます 状態遷移が決定的にできる場合はこのような遷移線を引かなくてもOKです。
1