本文へスキップ
BecomeCoder

UMLコース · 第4章 状態遷移図 · レッスン9

開始・終了と分岐

導入

多くの状態機械には「はじまり」と「おわり」があります。また、同じ状態からでも、起きたイベントによって 別々の状態へ分かれる ことがあります。

説明

  • [*] --> 状態開始(黒丸から最初の状態へ)
  • 状態 --> [*]終了(最後の状態から黒丸へ)
  • 1つの状態から複数の遷移を引けば、イベントによる分岐になる
stateDiagram-v2
    [*] --> 未払い
    未払い --> 支払済: 入金
    未払い --> キャンセル: 取消
    支払済 --> 発送済: 出荷
    発送済 --> [*]
    キャンセル --> [*]

[*] は特別な印で、上にあれば開始、下にあれば終了を表します。未払い からは「入金なら支払済」「取消ならキャンセル」と2方向に分かれています。

読んでみよう

この図は注文の一生(ライフサイクル)です。開始の [*] から始め、入金ルートと取消ルートの2つの終わり方があることを追ってみましょう。「どの状態からどのイベントで、どこへ行けるか」を全部たどれれば、仕様を正確に読めたことになります。次章では、システムの機能一覧を表す ユースケース図 に進みます。