状態遷移図(じょうたいせんいず)
単一のシステムやオブジェクトが取り得る状態と、外部や内部で発生する事象(イベント・トリガ)を契機として別の状態へ移り変わる関係を図式化した動的なモデル。複数のオブジェクト間でやり取りされるメッセージの時系列的な順序を表すものではなく、1つの対象における状態の移り変わりと遷移条件の記述に用いる。
詳細解説
状態を表す円や角の丸い長方形をノードとして配置し、状態間の遷移を有向線(矢印)で結び、矢印の近くに遷移を引き起こすイベントや条件、遷移時の動作を添えて記述します。同じ状態にとどまる場合は、自分自身へ戻る矢印(自己遷移)で表します。

UMLのステートマシン図では、塗りつぶした黒丸で開始状態(初期擬似状態)を、黒丸を丸で囲んだ記号で終了状態を表します。1つの状態の中に破線で区切った複数の領域を設け、並行して動く振る舞いを表す直交状態の記法もあります。一方、複数のオブジェクトが時系列に沿ってメッセージをやり取りする相互作用の設計には、状態遷移図ではなくシーケンス図を用います。
状態とイベントの組合せを網羅的に整理して抜けや漏れを防ぐには、同じ内容を二次元の表で表した状態遷移表も併用されます。

状態遷移表をたどる際は、現在の状態の列と発生したイベントの行が交差するセルを見て、次の状態へ順に移ります。空欄のセルが「状態が変化しない」のか「発生し得ない組合せ」なのかは表の約束に従います。
状態遷移図が問われた過去問
- 2022(R4)秋 午前II 問22次の状態遷移図に従って動作する組込みシステムがある。最初の状態が S0 の場合に,最後の状態が S4 になるイベントの発生順序はどれか。ここ
状態遷移図が登場する過去問
- 2022(R4)秋 午前II 問19イベント駆動型のアプリケーションプログラムにおける,時系列でのオブジェクト間の相互作用を設計するのに有用なものはどれか。
- 2021(R3)春 午前II 問4イベント駆動型のアプリケーションプログラムにおけるイベント処理のタイミングを設計するのに有用なものはどれか。
- 2018(H30)秋 午前II 問7ソフトウェアの要件定義や分析・設計で用いられる技法に関する記述のうち,適切なものはどれか。