応用情報技術者試験のモデリング知識:状態遷移図とは?
状態遷移図(State Transition Diagram)とは、オブジェクトやシステムがとり得る状態と、その状態がイベントによってどのように変化するかを視覚的に表した図です。
主にUML(統一モデリング言語)や仕様設計の段階で使用され、振る舞いの明確化に役立ちます。
状態遷移図の目的
- システムやオブジェクトの動作・ライフサイクルを明確にする
- 入力に対する挙動の整理(仕様の漏れや矛盾を防止)
- 開発者・テスト担当者間での共通理解を形成する
状態遷移図の構成要素
- 状態(State): 対象がある一定の条件下にあること(例:ログイン中/待機中)
- 遷移(Transition): イベントが発生して状態が変化すること
- イベント(Event): 状態を変化させる外部または内部の要因
- 開始状態: システムやオブジェクトが最初にいる状態(黒丸で表現)
- 終了状態: 処理が完了し遷移が終わる状態(二重丸)
図のイメージ(簡略)
●(開始)
↓
[未ログイン]
──「ログイン要求」→ [ログイン中]
──「タイムアウト」→ [終了]
──「ログアウト」→ [未ログイン]
◎(終了)
例:自動販売機の状態遷移
- 状態:「待機中」→「お金投入済み」→「商品選択中」→「商品提供」
- 遷移イベント:「お金を入れる」「商品ボタンを押す」「商品を取り出す」など
状態遷移表との違い
- 状態遷移図: グラフィカルに表現し、全体像が視覚的に理解しやすい
- 状態遷移表: 状態とイベントを表で整理し、網羅性と正確性に優れる
応用情報技術者試験での出題ポイント
- 状態/遷移/イベントの理解
- 図から適切な動作順や最終状態を読み取れるか
- 状態遷移表との比較理解
学習のコツ
- 「動きのあるもの」をイメージして状態とイベントを洗い出す
- 図に描くだけでなく、「その次に何が起こるか?」と流れを追って考える
- テスト設計(状態遷移テスト)とも関連して学ぶと理解が深まる
まとめ
- 状態遷移図: 状態の変化とその条件を示す図
- 動作仕様を視覚的に把握できるモデリング手法
- 試験では状態・イベント・遷移の関係を読み解く力が問われる
状態遷移図は、「システムがどう動くか」を直感的に示す強力なツールです。
応用情報技術者試験では、図の構造を正しく読み解き、状態とイベントの関係を論理的に説明できるかが問われます。