📖 テーマ設定
🔊 音声設定
1.2
1.0
1.0
▶️ 再生コントロール
🎵 BGM設定
0.3
🔔 効果音設定
0.3

画面一覧・機能一覧の作成

概要

  • 日程: Day 5 / セッション 3
  • 時間: [11:10-12:40]
  • 形式: 実習
  • ゴール: 情報の状態遷移図から、画面一覧と機能一覧を漏れなく時間内に作成できる
  • 学習形式: ハンズオン実習(AIサポートあり)

導入(5分)

セッション2で、皆さんの情報モデルすべての状態遷移図ができました。
図の中には、操作のラベルがついた矢印がたくさんありますね。

ここで問いかけです。

「その矢印1本1本は、次のセッションで何に変身するでしょうか?」

答えは機能です。セッション1で学んだ通り、「情報を状態遷移させるのが機能であり、画面になる」。
矢印(状態遷移)= 機能の種、そして機能をユーザが操作する場所が画面です。

このセッションでは、状態遷移図を機能一覧画面一覧に変換します。
思いつきは禁止。矢印との突き合わせだけで作ります。これが「前のタスクの成果物を利用する」というこの研修の鉄則です。

本編(15分)

1. 状態遷移図から機能一覧をつくる

手順は機械的です。だからこそ漏れません。

  1. 状態遷移図の矢印を1本ずつ見る
  2. 矢印のラベル(操作)を「〜機能」という名前にして機能一覧に書く
  3. Read(参照)を忘れずに追加する。図に矢印がなくても、「一覧を見る」「詳細を見る」機能は必要
  4. すべての情報モデルの図について繰り返す

予約情報の状態遷移図から機能一覧を作るとこうなります。

機能ID 機能名 対応する情報モデル CRUD 元になった遷移
F01 予約登録機能 予約情報 C 開始 → 予約済み
F02 予約一覧参照機能 予約情報 R (Readのため遷移なし)
F03 予約詳細参照機能 予約情報 R (Readのため遷移なし)
F04 予約変更機能 予約情報 U 予約済み → 予約済み
F05 予約キャンセル機能 予約情報 U 予約済み → キャンセル済み
F06 予約データ削除機能 予約情報 D キャンセル済み → 終了

ポイントは「元になった遷移」の列です。これがあると、全部の矢印が機能になったかを逆からチェックできます。

ここがポイント

  • 機能一覧は矢印との突き合わせで作る。矢印の数 ≦ 機能の数(Read分が加わるため)になるのが自然
  • 機能名は「〜機能」で統一し、CRUDのどれかを必ず添える
  • 「対応する情報モデル」列は必須。Day 8のCRUD図でそのまま使う

コラム

機能一覧の「漏れ」は、IT業界で最も高くつくミスの1つです。要件・設計段階の欠陥をリリース後に直すコストは、設計段階で直す場合の数十倍から100倍に膨らむという調査が昔から知られています(バリー・ベームの研究が有名)。「画面を1枚作り忘れた」が実装後に発覚すると、設計・実装・テスト・他画面への影響調査までやり直しです。矢印1本の突き合わせを面倒がらない人が、結果的に一番速いのです。

2. 機能一覧から画面一覧をつくる

次に、各機能を「ユーザがどこで操作するか」を考えて画面に割り当てます。

ここで大事な感覚があります。機能と画面は1対1とは限りません

  • 「予約一覧画面」には、一覧参照(R)とキャンセルボタン(U)の2機能が載るかもしれません
  • 「予約登録機能」には、入力画面と確認画面の2画面が要るかもしれません

予約システムの画面一覧の例です。

画面ID 画面名 載る機能(機能ID) 備考
S01 メニュー画面 入口画面(CRUD由来ではない)
S02 予約登録画面 F01 入力フォーム
S03 予約登録確認画面 F01 登録前の確認
S04 予約一覧画面 F02, F05 一覧+キャンセルボタン
S05 予約詳細画面 F03, F04 詳細表示+変更へ

最後に、CRUD由来でない画面(メニュー画面、ログイン画面など)を補います。
「土台はCRUDで、入口系は最後に補う」でしたね。

ここがポイント

  • 全機能がどこかの画面に載っているか、機能ID側から逆引きチェックする
  • 画面を増やしすぎない。「確認画面は本当に必要?」とペルソナの気持ちで考える
  • 管理者(お店側)の画面を忘れがち。ペルソナ(お客様)だけでなく、運用する人のCRUDも思い出す

コラム

「確認画面は必要か」論争は、Web業界の定番ネタです。日本のECサイトは「入力→確認→完了」の3段構成が伝統ですが、海外サイトは確認画面なしの2段構成が主流です。Amazonにいたっては「1-Click注文」で全部すっ飛ばして特許まで取りました(2017年に失効)。確認画面は誤操作を防ぐ反面、購入完了率を下げるとも言われます。正解は1つではなく「ペルソナとってどちらが幸せか」で決める——まさに外部設計の腕の見せどころです。

💬 AIに聞いてみよう

実習中に迷ったら、AIに相談しましょう。たとえば:

  • 「この状態遷移図から機能一覧を作ったので、漏れがないかチェックして」(図と一覧を貼る)
  • 「この機能一覧に対して画面一覧を作りたい。画面の分け方の案を2パターン出して」
  • 「管理者側に必要な画面が漏れていないか、この一覧を見て指摘して」
  • 「確認画面を入れるべきか、ペルソナ(○○な人)の視点で意見を聞かせて」

実習・演習(45分)

課題

セッション2で作成したすべての情報の状態遷移図を入力として、機能一覧と画面一覧を作成してください。

手順:

  1. 状態遷移図の矢印を1本ずつ機能に変換する(15分)
  2. Read(参照)機能を情報モデルごとに追加する
  3. 機能を画面に割り当て、画面一覧を作る(15分)
  4. CRUD由来でない画面(メニュー・ログイン等)を補う
  5. 突き合わせチェック(10分):
    • すべての矢印が機能になっているか(状態遷移図 → 機能一覧)
    • すべての機能が画面に載っているか(機能一覧 → 画面一覧)
  6. チーム内で一覧を声に出して読み合わせる(5分)。「F01 予約登録機能、画面はS02とS03」のように読み上げ、全員で頷けるか確認する(話す&行う)

成果物

  • 「機能一覧」(機能ID・機能名・対応する情報モデル・CRUD・元になった遷移の列を含む)
  • 「画面一覧」(画面ID・画面名・載る機能IDの列を含む)
  • 突き合わせチェックで見つけた漏れと修正内容のメモ

ヒント

  • 機能の粒度に迷う → 「ユーザの1つの目的が達成される単位」が目安です。「予約する」は1機能、「氏名を入力する」は機能ではなく画面項目です
  • 画面が多くなりすぎる → 似た画面(登録と変更など)は1画面にまとめられないか検討しましょう。AIに「この画面一覧、統合できる画面はある?」と聞くのも有効です
  • 管理者側を忘れた → 状態遷移図の矢印のうち「お店側の操作」(来店記録など)を誰がどの画面でやるのか確認しましょう
  • チェックの順番 → 必ず「状態遷移図→機能一覧」「機能一覧→画面一覧」の両方向で突き合わせます。片方向だけだと漏れが残ります
  • AIへの依頼のコツ → 一覧を丸ごと貼って「漏れの指摘」を頼むと精度が上がります。「うちのシステムは○○で、ペルソナは○○」という前提も一緒に伝えましょう

まとめ(5分)

今回学んだことを一言でまとめると、**「機能一覧と画面一覧は、状態遷移図の矢印から機械的に導く」**です。

  • 矢印1本=機能の種。Readは図にないので忘れず追加する
  • 機能と画面は1対1とは限らない。対応表で必ずつなぐ
  • 両方向の突き合わせチェックで漏れを潰す

これでDay 5の成果物(情報の状態遷移図・画面一覧・機能一覧)が揃いました。
次回Day 6は、画面一覧の画面たちを画面遷移図でつなぎ、画面仕様書を書いて外部設計書を完成させます。

🔄 振り返りチェック

以下の問いに答えられるか確認してみましょう:

  • 状態遷移図から機能一覧を作る手順を、順番に説明できますか?
  • 自チームの機能一覧で、CRUDのRに当たる機能はどれか指差せますか?
  • 機能と画面が1対1にならない例を、自チームの成果物から1つ挙げられますか?

答えに自信がない場合は、該当部分を読み返すか、AIに質問してみてください。

補足資料

  • 参考リンク: IPA「機能要件の合意形成ガイド」(機能一覧・画面一覧の実務サンプル)
  • 発展課題: 自チームの機能一覧に「利用者(ペルソナ/管理者)」の列を追加し、誰のための機能かを整理してみる

学習ガイド

このセクションは、受講者が理解を深めることをサポートする参考情報です。

想定される質問と回答例

質問 ヒント
機能一覧と画面一覧、どちらを先に作る? 機能一覧が先。機能はCRUD(状態遷移)から直接導けるが、画面は機能の置き場所だから
検索機能はCRUDのどれ? Read。条件付きのReadと考える。一覧参照と別機能にするかはチームの判断
ログイン機能はどの情報モデル? 会員情報のRead(認証)と整理するのが一般的。CRUD由来でない補助機能としてメモを残せばOK
画面一覧の粒度は? 「URL(または画面ファイル)が分かれる単位」が実務的な目安。ポップアップは備考に書く程度でよい

つまずきやすいポイント

つまずきポイント ヒント
Read機能を入れ忘れる 状態遷移図に矢印がないため忘れやすい。情報モデルごとに「一覧・詳細は要る?」と機械的に自問する
思いついた画面を直接追加してしまう 「その画面はどの機能のため? その機能はどの遷移のため?」と源流に遡って確認してから追加する
機能名がバラバラ(「登録」「作成」「追加」混在) 命名ルールをチームで1つ決める(例: Createは「〜登録機能」で統一)
読み合わせを省略する 声に出すと「この画面、誰が使うんだっけ?」という気づきが必ず出る。5分を惜しまない(話す&行う)
読み上げを開始します...

AIに質問する