先日、自宅に持ち帰った仕事をやろうとノートパソコンを開いて作業をしていると、まだ起きていた長男(小学二年生)がディスプレイを興味深げに覗き込んできました。
子供に父親がどんな仕事をしているのか理解してもらうのは難しいだろうなと思いながらも、ダメ元で、印刷してあったデータモデルを見せてみました。すると、データモデルが双六か迷路にでも見えたのか、エンティティを指差しながらデータモデルを読んでいるような仕草をしています。
分かっているわけないだろうと思いつつも、もしかして、データモデルに興味を示すかも?と思い、ちょっとだけデータモデルの読み方を教えてみることにしました。
説明用のデータモデルは、解説を聞けば一般的な社会人であれば誰でも理解できる簡単なものを使用しました。会社エンティティの下に組織エンティティと社員エンティティが繋がり、社員エンティティと組織エンティティが所属エンティティで間接的に繋がっているという、よく見るパターンのものです。
しかし、相手は小学二年生です。“エンティティ”はもちろん“データ”という言葉の意味も理解できないことは容易に想像できるため、データモデルの専門用語や七歳児が知らない単語は使わないように、次のように説明してみました。
「例えば、自動車を作る会社にはたくさんの人達(社員)が働いていて、その人達は、自動車をデザインするグループや、部品を組み立てて自動車を作るグループ、作った自動車がちゃんと動くかチェックするグループとか、色々なグループ(組織)に集まって仕事をしているんだよ」といった感じです。
このような説明を、データモデルに描かれたエンティティと、エンティティ間の関係線を指さしながらしたのですが、どうやら、“会社”には色々な仕事をする“グループ(組織)”があって、”会社で働く人達(社員)”はその”グループ(組織)”に入って仕事をしている、ということを表している図だと直感的に分かったようでした。
私が「彼は理解することができた」と感じたのは、”会社”と”社員”、”組織”というエンティティの関係性を、”学校”と”生徒”、”クラス”という自分に身近な例に置き換えて、データモデルを指さしながら教えてくれたからです。
もし、データモデルを使わずに口頭でのみ説明をしていたら、このような反応は返ってこなかったのではないかと思います。例えば、頭の中で色々な場面を思い描いて理解しようとする人や、細かい要素に分解して理解しようとする人など、聞き手の数だけ理解の方法は異なるからです。
データモデルを建築における設計図面として例えるように、データモデルは写像する実世界をデータの視点でモデル化します。理解の仕方が人それぞれで異なる以上、このようなモデル図があってはじめて、短時間で共通の理解を得ることができるのではないでしょうか。
次回は、小学二年生の長男に、実際にデータモデルを描いてもらった時の反応などを、お届けできればと思います