【認識共有】概念データモデル/ER図は今後一層重要なスキルとなる
こんにちは、鬼畜メガネです。今回は
"概念データモデル/ER図は今後一層重要なスキルとなる"
というテーマを書いていきたいと思います。
1. データモデルとは
1.1. データモデル分類
データモデル(またはER図)には以下3つがあります。
・概念モデル(概念ER)
・理論モデル(理論ER)
・物理モデル(物理ER)
色々なページで異なる解説がされていますが、自分の中では以下のページの定義がしっくりきたので参考にしました。
概念モデル
システムが何のデータを(What)有しているかを示す。概念モデルは事業部門(ユーザー)とデータ設計者で作られる。目的はビジネスのコンセプトとルールについて範囲を決めて定義することである。
理論モデル
どのように(How) DBMSに実装すべきか定義する。. データ設計者とビジネス分析者で作られる。目的は技術的な俯瞰図とデータ構造を作り上げること。
物理モデル
どのように(How)システムに実装するか詳細な仕様に落とし込む。DBAと開発者によって作成される。目的はデータベース実装である。
1.2. 具体例
人によって色々な意見がありますが、今回は以下を参考にしています。
(図と表は以下から引用)
https://www.1keydata.com/datawarehousing/data-modeling-levels.html
2. なぜ概念データモデルが重要なのか
2.1. これまでのシステム開発
改めて、概念データモデルは以下の特徴があります。
・システムが何のデータを有しているかを示す。
・事業部門(ユーザー)とデータ設計者で作られる。
・ビジネスのコンセプトとルールについて範囲を決めて定義することが目的。
要は、概念データモデルはシステムのコンセプト・ルールをユーザー部門と共有して定義するための手段ということです。
物理モデルをユーザー部門に見せても細かすぎて意味不明ですし、細かい情報にまで目がいって、システム・ビジネスの本筋・肝となる部分を十分に話すことができません。
目的から言えば、極端に以下のようなシンプルなモノでも良いと思います。
以下から引用
https://resources.sei.cmu.edu/asset_files/Presentation/2018_017_001_519117.pdf
2.2. これからのシステム開発
オープンイノベーション、IoTなどに代表されるように、今後は自社だけでなく多くのステークホルダーを巻き込んでシステムを開発していくことが求められる世の中になっていきます。そんな中で細かい理論/物理データモデルでは意思疎通が困難です。概念データモデルを扱えるようになるスキルが絶対不可欠です。
3. なぜ概念データモデルが作成されないのか
私のいる会社は概念データモデル/ER図が作成されていません。いきなり物理ER図から作成されます・・・その結果、物理データモデルや処理を作り込んだ後にユーザーのテスト段階になって大きな認識齟齬などが発生するということがよくあります。
そんな状況が多いので、周りを観察してつづけ、様々な書籍の内容に照らし合わせて私なりに考えてみたことを書きます。
・そもそも"概念データモデル"を知らない
・現実体験から出発してそれらの結果を積み上げていく思考法が多い
・概念の創造とその操作化ができない。
「そもそも"概念データモデル"を知らない」はそのままですね。もう少し深堀りするなら、大企業病で自己学習するという習慣がない人間が多いように思えます。業務の延長でわからなかったことは調べることがあっても、知らないことを探しにいくケースはとても少なく感じます。また、自己学習しても"ビジネススキル"ばかりで"技術"を学ぼうという人は稀です。
「現実体験から出発してそれらの結果を積み上げていく思考法が多い」「概念の創造とその操作化ができない」は以下の過去記事でも触れています。
日本人の思考パターンあるあるです。
learningforever.hatenablog.com
4. まとめ
・概念データモデルはコンセプト・ルールをユーザーと共有するための手段である
・今後のビジネスの変化を考えると、より一層概念データモデルが重要になる。
"データサイエンティスト"や"データ流通"などデータを扱う人材が求めているこれからの時代、データモデルの考え方を改めて整理して身につけていきましょう!
以上、ありがとうございました。