状態遷移図とは(全体像)
状態遷移図は、システムやモノが取りうる「状態」と、その「移り変わり(遷移)」を図にした書き方のことだ。
身近な例だと、信号機。「青→黄→赤→青…」と状態が移り変わる。この「いまどの状態か」と「どう移るか」を図にするのが、状態遷移図だ。組み込みシステム(信号機など)や、画面の移り変わり、申請の進み具合(ワークフロー)などで使う。
ここで一番のポイントは、状態遷移図は「状態の移り変わり」に注目すること。データがどう動くか(後で出てくるDFD)ではなく、いまどの状態で、何をきっかけにどこへ移るかを表す。
詳しく:4つの要素とDFDとの違い
ここが心臓部。状態遷移図で使う4つの要素を表で押さえよう。
状態遷移図の4つの要素
| 要素 | 何を表すか | 記号 |
|---|---|---|
| 状態 | いまの状況(信号なら「青」など) | 円 |
| 遷移 | 状態から状態への移り変わり | 矢印 |
| イベント | 移り変わりの「きっかけ」 | 矢印に書く |
| アクション | 移り変わるときに行う動作 | 矢印に書く |
「状態(円)」を「遷移(矢印)」でつなぎ、矢印に「イベント(きっかけ)」と「アクション(動作)」を書き込む、というのが基本の形だ。
ここで2つ、注意点がある。
1つ目。状態遷移図とDFDは別もの。状態遷移図は状態の移り変わりを表し、DFD(データフロー図)はデータの流れを表す。「状態遷移図=DFD」と思い込むと誤りになる。状態か、データかで見分けよう。
2つ目。遷移は一方通行とは限らない。状態の間を、行ったり来たり(双方向)に移れることもある。「いつも一方向だけ」と思い込むのも誤りだ。
わかりやすく言い換えると
身近なたとえで整理しよう。
状態遷移図は、「信号機の青・黄・赤のように、状態が移っていく様子の地図」のイメージ。いまどの状態で、何をきっかけに次へ移るかを描く。
4つの要素は、「状態(いまの姿)・遷移(移り変わり)・イベント(きっかけ)・アクション(そのとき行う動作)」。つまり、「どの状態から、何をきっかけに、何をしながら、どこへ移るか」を表す部品だ。
状態遷移図とDFDの違いは、「状態の移り変わり(状態遷移図)」と「データの流れ(DFD)」。つまり、見ているものが違う、ということだ。
試験のツボ
🔴 一番出る:状態遷移図の正体
①システムの状態と、その移り変わり(遷移)を図にする書き方
②信号機・画面の移り変わり・ワークフローなどで使う
🔴 次に出る:4つの要素
①状態(円)・遷移(矢印)
②イベント(きっかけ)・アクション(動作)
🟡 押さえると安定:DFDとの違い
①状態遷移図=状態の移り変わり/DFD=データの流れ
②遷移は双方向(行ったり来たり)もできる
よくある間違い
①「状態遷移図とDFDは、まったく同じものだ」→ ✗ 状態遷移図は状態の移り変わり、DFDはデータの流れ。表すものが違う。
②「状態遷移図の遷移は、つねに一方向だけだ」→ ✗ 状態の間を、行ったり来たり(双方向)に移れることもある。
③「状態遷移図は、データがどう流れるかを表す図だ」→ ✗ データの流れを表すのはDFD。状態遷移図は、状態の移り変わりを表す。
試験での出題パターン
実際の問題でたしかめてみよう。
オリジナル問題1(状態遷移図の正体)
状態遷移図に関する次の記述のうち、最も適切なものはどれか。
- 社員の出退勤を記録して、毎月の給与を計算するためのしくみである
- 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指している
- システムの状態と、その移り変わり(遷移)を図にする書き方である
- 完成したシステムを宣伝して、より多く売るための広告活動のことである
解答は 3 だよ。
状態遷移図は、システムの状態と、その移り変わり(遷移)を図にする書き方だよ。信号機の青・黄・赤のような移り変わりを描くんだ。
選択肢1は給与計算、選択肢2は請求書の事務、選択肢4は広告で、どれも違うよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 給与計算のしくみではない |
| 2 | ✗ | 請求書の事務の話 |
| 3 | ✓ | 状態の移り変わりを図にする書き方で正しい |
| 4 | ✗ | 広告活動ではない |
オリジナル問題2(4つの要素)
状態遷移図で使う4つの要素として、最も適切なものはどれか。
- 売上・費用・利益・税金という、決算で使う4つの数字のことである
- 朝・昼・夕・夜という、1日の4つの時間帯のことを指している言葉だ
- 北・東・南・西という、4つの方角のことを指している言葉である
- 状態・遷移・イベント・アクションという、4つの要素のことである
解答は 4 だよ。
状態遷移図の4つの要素は、状態・遷移・イベント・アクションだよ。状態(円)を遷移(矢印)でつなぎ、きっかけと動作を書き込むんだ。
選択肢1の決算の数字、選択肢2の時間帯、選択肢3の方角は、いずれも誤りだよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 決算の数字ではない |
| 2 | ✗ | 時間帯のことではない |
| 3 | ✗ | 方角のことではない |
| 4 | ✓ | 状態・遷移・イベント・アクションで正しい |
オリジナル問題3(DFDとの違い)
状態遷移図とDFDの違いに関する次の記述のうち、最も適切なものはどれか。
- 状態遷移図もDFDも同じで、呼び名が2つあるだけで違いはないとされる
- 状態遷移図は状態の移り変わり、DFDはデータの流れを表す(別もの)
- 状態遷移図もDFDも、社員の給与を計算するためだけに使う図である
- 状態遷移図は、取引先へ請求書を郵送する事務だけを表す図である
解答は 2 だよ。
状態遷移図は状態の移り変わり、DFDはデータの流れを表すよ。「状態か、データか」で見分けてね。
選択肢1は「違いはない」、選択肢3は給与計算、選択肢4は請求書の事務で、いずれも誤りだよ。
| 選択肢 | 判定 | 理由 |
|---|---|---|
| 1 | ✗ | 両者には違いがある |
| 2 | ✓ | 状態の移り変わりとデータの流れで正しい |
| 3 | ✗ | 給与計算の図ではない |
| 4 | ✗ | 請求書の事務の図ではない |
まとめ
押さえどころ
- 🔴 状態遷移図 = システムの状態と、その移り変わり(遷移)を図にする書き方。
- 🔴 4つの要素 = 状態(円)・遷移(矢印)・イベント(きっかけ)・アクション(動作)。
- 🟡 DFDとの違い = 状態遷移図は状態の移り変わり、DFDはデータの流れ。遷移は双方向もできる。
次に学ぶ
- DFD(データフロー図) ── データの流れを表す図。状態遷移図とは見ているものが違う。
- UML ── 構造や動きを図にする共通の書き方。状態遷移図はUMLの状態図として使う。
執筆: SikakuQuest編集部