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

身近なモデリング体験

概要

  • 日程: Day 2 / セッション 02
  • 時間: 9:30-10:00
  • 形式: 実習
  • ゴール: 身の回りの物(コンビニ・図書館・電車など)から、属性・関係・制約の3観点で情報モデルを1つ書き出せる
  • 学習形式: AI協働型(AIをペアプログラマー的に使い、観点漏れを指摘してもらう)

導入(5分)

前のセッションで「モデルとは何か」を学びました。地図や家系図のような身近な例で腹落ちさせた一方で、いざ自分でゼロから作ろうとすると手が止まります。「何から書けば?」と思うのが普通です。

そこでこのセッションでは、全員が知っている題材でモデリングを体験します。コンビニ、図書館、電車。誰でも何度も利用したことがあるからこそ、頭の中に「経験データ」が大量にあるはずです。それを整理して出すだけです。

このウォーミングアップが、午後の「自分の開発テーマでの情報モデル抽出」の準備運動になります。

本編(5分の解説 + 20分の実習)

1. モデルを取り出す3つの観点

どんな対象でも、次の3つの観点で見れば「情報モデル」として記述できます。

flowchart LR O["対象物"] --> A["属性
(何を持つか)"] O --> R["関係
(何と繋がるか)"] O --> C["制約
(どんなルールがあるか)"]
  • 属性(Attribute):その対象物が持っている情報項目
    • 例:本なら「タイトル」「著者」「ISBN」「ページ数」
  • 関係(Relationship):他の対象物とどう繋がっているか
    • 例:本は「貸出履歴」を持つ、本は「分類カテゴリ」に属する
  • 制約(Constraint):成立するためのルール
    • 例:1冊の本は同時に1人にしか貸せない、ISBNは必ずユニーク

ここがポイント

属性で詰まったらAIに「他にどんな項目があるか教えて」と聞くのが最速です。AIは類似ドメインの知識を持っているので、漏れを指摘してくれます。

コラム:図書館員の頭の中

プロの図書館司書は、本を見た瞬間に「分類記号、件名標目、書誌情報」を頭の中で組み立てます。日本では「日本十進分類法(NDC)」という体系があり、世界では「デューイ十進分類法」が使われます。彼らは数百年かけて「本」というモデルを磨き続けてきたプロフェッショナルです。私たちが今日30分でやろうとしているのは、彼らが何百年もかけて極めてきた作業の入口です。気楽にやりましょう。

実習・演習(20分)

課題

以下の3つの題材から1つを選び、情報モデルを書き出してください。

選択肢

  • A. コンビニ(商品・店舗・店員・顧客などから1つ選ぶ)
  • B. 図書館(本・利用者・貸出・予約などから1つ選ぶ)
  • C. 電車(路線・駅・列車・座席などから1つ選ぶ)

進め方

  1. 対象物を1つ決める(例:「コンビニの商品」)
  2. 属性を10個以上書き出す(例:商品名、価格、JAN、賞味期限…)
  3. 関係を3個以上書き出す(例:商品はカテゴリに属する、商品は仕入先を持つ…)
  4. 制約を3個以上書き出す(例:価格はゼロより大、JANは13桁、賞味期限は今日以降)
  5. AIにレビューしてもらう(後述のプロンプト例参照)

成果物

項目 内容例(コンビニ商品の場合)
対象物名 商品
属性 商品名、価格、JANコード、賞味期限、カテゴリID、仕入先ID、…(10個以上)
関係 商品 - カテゴリ、商品 - 仕入先、商品 - 在庫、…
制約 価格 > 0、JANは13桁、賞味期限は本日以降、…

ヒント

AIへの質問例

コンビニの「商品」について情報モデルを作っています。
私が書き出した属性は[商品名、価格、JANコード、賞味期限]です。
コンビニの実務を考えると、他にどんな属性が必要そうですか?
特に「税率」や「キャンペーン対応」のような見落としがちな項目を教えてください。

詰まったときのコツ

  • 「もし自分が店長だったら、何の情報を管理したい?」と考える
  • 「もしこの情報がなかったら、業務でどう困る?」と逆から考える
  • 似た業態(スーパー、ドラッグストア)を参考にする

💬 AIに聞いてみよう

  • 「コンビニの商品と、スーパーの商品はモデルとして何が違う?」
  • 「『制約』の出し方がよくわからない。何を考えれば出てくる?」
  • 「私が出した属性に重複や冗長性はある?」

まとめ(5分)

今回は「身近な題材」だったので、自分の経験から属性をどんどん出せたはずです。「自分の経験」「お客さんの目線」「AIの知識」を組み合わせれば、初めての業務でもモデルが作れます。

次のセッション(Session03)では、いま体験した「属性・関係・制約」を情報モデルという用語で正式に定義し、さらに「状態遷移」という新しい武器を学びます。状態遷移が分かると、機能と画面が自動的に決まる魔法のような体験ができます。

🔄 振り返りチェック

  • 自分が書いた属性は10個以上になりましたか?
  • 「関係」と「属性」の違いを説明できますか?
  • AIから指摘されて気づいた「漏れ」は何でしたか?

補足資料

  • 参考リンク:日本十進分類法(NDC)、JANコード規格
  • 発展課題:選ばなかった残り2題材についても、属性だけでいいので書き出してみる

学習ガイド

想定される質問と回答例

質問 ヒント
「属性」と「関係」の境目が曖昧 単体で完結する情報=属性、別の対象物を指す情報=関係
「制約」が思いつかない 「ありえない値」を考える(マイナス価格、未来の購入履歴など)
完璧に網羅したい 完璧を目指さない。後で追加できる

つまずきやすいポイント

つまずきポイント ヒント
機能(〜できる)を書いてしまう このセッションは「情報」のみ。「商品を検索する」はまだ書かない
細かすぎる属性に時間をかける まずは粒度を粗く。詳細化は後でよい
カテゴリと属性を混同する カテゴリは「分類のためのラベル」、属性は「対象が持つ情報項目」
読み上げを開始します...

AIに質問する