見出し画像

【ブックレビュー】データモデル大全

システム開発・刷新のための データモデル大全(渡辺幸三著、日本実業出版社)

#読書感想文

データモデリングの手順書、理論書は数多くあります。それらは書かれている場面(シチュエーション)では納得できます。ところが何故か「販売管理システム全体のデータモデル」は公開されていません。
この本の著者である渡辺幸三氏は自身のWEBサイトで無料で動くモデルを多数公開されています。どちらが信用出来ると思われますか?


第1章 『かね玄』のデータモデル

街の金物屋さんのビジネスをデータモデリングで整理するというストーリーを通じて、主キーや正規化について学びます。3章の終わりには練習問題まであります。抽象化能力が要求される問題でした。

問題10 以下の関数従属性にもとづいて、データモデルを完成させて下さい。(答えはブログの最後に書きますので考えてください)
   {a)→b    {d}→e
   {a)→c    {e}→f
   {d)→a    {e}→g

6章 仕訳と決算


企業活動のシステムを開発するためにデータモデリングが必要です。企業活動を理解するためには、共通言語といえる簿記の知識が大変重要だという事を主張されています。勘定科目、仕訳、勘定残高まで詳しく解説されています。ここまで分かり易く書いた本は珍しいでしょう。

簿記は業務・業種を横断する共通言語と言えるもので、それを理解していないようではユーザとのヒヤリングで会話になりません。

ここからは具体的な業務ノウハウがこれでもかという感じで解説されます。フィーチャーオプション、減価償却資産、生産管理の工程と作業場、在庫のモデル、予算と実績など・・・。書名が「大全」とあるのもわかります。このブログでは看護師さんなどの要員シフト計画のモデルを少し観てみましょう。

第8章 設備と能力:要員シフト契約


まずは単純なモデルを掲示し解説されます。単純と言っても読むだけで10分くらいかかると思います。まず一番上の「職員」と一番下の「病棟」が一番根本のマスタです。
職員は1か月の「シフト申請」を行い、年月日がある「シフト申請明細」が紐づきます。
病棟には日勤/夜勤などの「病棟シフト」があり、最小要員数が決まっています。そのシフト区分ごとに「シフト申請明細」を参照し「病棟シフト日程」の(確保要員数)が決まります。( )が付いているのは、導出項目と呼ばれます。物理的に項目を持たず、「シフト申請明細」からカウントして計算で出す項目という意味です。

データモデル大全 P.202

実はこのモデルでは「病棟向けはおろか、居酒屋のような一般の店舗営業向けにさえ適用することは難しい」と自己否定します。理由は

「最小要員数を満たせば、誰であっても大丈夫」という特殊な前提があるからです。

つまり必要最小限のスキルセットが定義されていないという事です。そのスキルセットを入れたモデルを次に提示されます。
ところがこれでも、「本格的なシフト管理は賄えません」とさらに自己否定されます。職員同士の相性(Aさんと働くのは気が進まない)が考慮されていないためです。それを考慮したさらに複雑なモデルが示されます。
1つのモデルを要件が増えるたびに進化させるという経緯を知ることが出来る事がこの本の最大のメリットでしょう。勉強になります。

終わりに
NPO法人IT勉強宴会で行われた出版記念講演のブログも参考にして下さい。
https://blog.benkyoenkai.org/2020/05/78itinzoom.html
渡辺幸三氏の本は「業務システムのための上流工程入門 」も息が長く若い人たちに読まれています。こちらの方が簡単に読めます。Amazonの発売日が2019年になっていますが、2003年に出た本です。

以上

回答10:
・主キー{a}に関数従属するものがb,cですので[A]{a},b,c
・主キー{e}に関数従属するものがf,gですので[E]{e},f,g
・主キー{d}に関数従属するものがa,eですので[D]{d},a,e
・エンティティ[D]のaとeを参照関係として[A][E]と結ぶ

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?