« SIの積算手法(基盤部分) | トップページ | ウォーターフォールとXP »

2006年8月19日 (土)

DB設計を理解するのに最低限の知識

現在の業務アプリケーション開発では、必ずといってよいほど、リレーショナル・データベースを使用します。しかし、お客さまは当然のこと、プロジェクト・メンバーも、リレーショナル・データベースの基礎的な知識が不足していることが多いです。

リレーショナル・データベースの設計を行うには、当然、相応の知識が必要ですが、その設計の意図するところを理解するにも、最低限のことは知っておく必要があります。

お客さまや、プロジェクト・メンバーに、この「最低限のこと」をどうやって説明すれば良いのか、考えてみたのですが、結局のところ、主キーと外部キーの2点に集約することができそうです。テーブル(表、リレーション)とはなにか、というレベルから説明しなくてはならないこともありますが、大抵は、直感的に理解していただけるようです(説明することも難しくはないと思います)。

そこで主キーと外部キーについて、以下のような文書にまとめてみました。
「リレーショナル・データベースの設計について」

なお、「外部キー値のNULLを禁止する」必要はなく、外部キーがNULLであっても、外部結合操作(左、右、両方)など、テーブル操作で支障をきたしたりはしないようです。この部分は、いずれ変えるつもりです。

---

データベース実践講義―エンジニアのためのリレーショナル理論
同著者の「データベース概論」という本があり、これは、リレーショナル・データベースの百科事典のような本で、ありとあらゆる論点が網羅されており、よく参照します。こちらは、その抜粋版といった趣ですね。

 Refactoring Databases: Evolutionary Database Design (Addison Wesley Signature Series)
データベース設計のリファクタリング集です。私はこの本の巻末にある、「UML Profile for Data Modeling」を参考にして、データモデル図を作っています。この図法が一番わかりやすいですね。

データベース設計論 T字形ER―関係モデルとオジブェクト指向の統合をめざして
「T字型ER」法による、データベース設計を解説した本です。UMLデータモデル図で、主キー(Identifier)の箱を分けているのは、この本の影響です。

楽々ERDレッスン
データベース設計の基礎を、専門的になりすぎず、わかりやすく解説しています。特に、主キーの設計の部分については、例が良く、参考になりました。

---

A UML Profile for Data Modeling
書籍”Refactoring Databases”より、UML解説部分がWebサイトで公開されています。

|

« SIの積算手法(基盤部分) | トップページ | ウォーターフォールとXP »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« SIの積算手法(基盤部分) | トップページ | ウォーターフォールとXP »