誰が実施しても同じ答えになる概念データモデルの作成には、どのような要件が求められるのでしょうか。
細かいことを言えばきりがないのですが、主要なところをあげれば、次の3つになると思います。
第1に、モデリングファシリティとして正しい。
第2に、モデリング方法論として完全である。
第3に、作成した概念データモデルを評価する視点が共有可能で、誰でもレビュできる。
記述する量が多くなってしまうので、今回は第1番目を説明します。
モデリングファシリティとして正しいとは何か?ここで言う正しさとは、「モデリングファシリティを構成する要素が矛盾なく必要最小限である」ことです。
たとえば、1975年ごろのERモデルは、エンティティを表すボックスマークとリレーションシップを表すひし形マークを表現していました。そして、ボックスマークの中にはエンティティ名を記述しました。
また、アトリビュート(データ項目)も表現する必要があり、ボックスマークの中にアトリビュートを記述するようになりました。
ところが、ここで問題が出てきたのです。「リレーションシップもアトリビュートを持つことがある」と言い出す人が出てきたためです。エンティティとリレーションシップという2つの要素がモデリングファシリティには不可欠としていたわけですが、この2つの概念がきれいに整理できていなかったわけです。
こうなると同じ対象をエンティティとして認識したり、リレーションシップとして認識したり、分析者によって差がでてしまいます。
現在使われている多くのERモデルは、ひし形マークを使わなくなりました。
ほかにも、こんな話があります。
たまに、弊社の教育コースで実施するアンケートの例です。
データ項目とデータ項目値が現れている帳票サンプル(たとえば、受注伝票)を配布して、「この中にデータ項目がいくつありますか?」と質問してみます。
「10」「11」「12」「13」など、人によってデータ項目の数が異なります。
この差はたとえば「受注入力社員コードと営業担当社員コードを同じと見るか異なると見るか」といった違いで生じます。
データモデリングファシリティで言えば、データ項目(KEY、参照KEY)と定義域(KEY定義域、標準定義域)の扱いが矛盾なく定義されていれば、このような認識の差がでることはありません。
実世界の認識が同じであるにもかかわらず、その表現に違いが出るのは望ましいことではありません。
モデリングファシリティの構成要素が、矛盾なく必要最小限となるよう決められていることは、モデリング結果の同一性・客観性を支えるために重要なことなのです。
























