データベースをつつく1-データモデル1。論理データモデル。
論理データモデルはどんな図でも良いわけじゃなくて機能要件があるピヨ。今からそれを列挙するピヨ。鳥ゃー
【論理データモデルの機能要件】
- 1、誰がモデル化しても同じ結果になる事・・・言いたいことは分かるけど、これを満たすのは不可能だと思うピヨ。
- 2、視覚的に理解しやすい事・・・当然だね。
- 3、複合オブジェクトや汎化/特化等のデータ意味関係を表現できる事。大まかに分けると下記のア~ウの三つがあるピヨ。
- (ア)複合オブジェクト・・・これは複数のデータ型などを含んだ複雑な関係を表現する事を意味しているピヨ。オブジェクト指向DBMSに必要な要件ピヨ。
- (イ)汎化/特化関係・・・これはオブジェクト指向をイメージすれば分かりやすいピヨ。例えば、動物の特化情報が人間とかそんな感じの事ピヨ。
- (ウ)PART0-OF関係・・・これは、情報を構成する情報を表現しなさいと言うことだピヨ。例えば、車は、タイヤ、エンジンなどの部品で構成されているよね。
- 4、論理データモデル機能自身に矛盾があってはならない(完全性)・・・まぁ当然だね。
- 5、整合性制約が表現できる事・・・この要件がないとデータベース設計では役に立たない図になるからね。
教科書的な事を書くとこれらの要件があるんだけど、実際にこれらの機能が1つの図で使用されているかと言えば疑問だね。先ほど少し書いたけど、汎化/特化につてはオブジェクト指向に関する要素だから、これらの情報はUMLに書く事が多いピヨね。実務ではどの情報がUMLか、どの情報がE-R図か・・・などと揉めて複雑になる事が多いピヨ。この際気をつけなければならないは情報漏れピヨ♪論理データモデルを書く段階ではコンピュータ化できない部分も記述しなければならないから、UML・EーR図などに拘り過ぎると情報が漏れるピヨね。これよくあることだからくれぐれも注意してね。
それらの事情を踏まえると、論理データモデルは複数の図で表現すると思えばいいピヨね。そうすれば情報漏れも防げると思う。データモデルというのはあくまで概念だと前回言ったのは、こういう事があるからなんだよ。設計に関わる人は注意しよう!これでプロジェクトの成否が決まるといっても過言じゃないピヨォッ!!!