September 19, 2011

実践的データモデリング入門

実践的データモデリング入門 (DB magazine selection)
実践的データモデリング入門 (DB magazine selection)

キーワード:
 真野正、DB、モデリング、分析、設計
データベース設計の前工程に必要なデータモデリングの具体的な方法が基礎から示されている本。技術本は目次が重要なので、今回は省略せずにすべて示す。
  1. 第1部 基礎編
    1. 第1章 なぜモデリングを行うのか―モデリングの種類と手順―
    2. 第2章 モデリングの基本作法―モデリングの記法と読み方―
    3. 第3章 データモデルを補完するモデル―プロセスモデルとUML―
  2. 第2部 実践編
    1. 第4章 エンティティの切り出し方―トップダウンモデリング―
    2. 第5章 トップダウンでの主キーと主要属性の定義
    3. 第6章 ネーミング標準とドメイン
    4. 第7章 ボトムアップ分析(その1)
    5. 第8章 ボトムアップ分析(その2)―CRUD分析―
    6. 第9章 トップダウンモデルとボトムアップモデルの融合
    7. 第10章 RDB論理とビジネスルール
    8. 第11章 モデルパターンの活用
    9. 第12章 ツールの活用法―できること、できないこと―
    10. 第13章 モデルレビューの観点
    11. 第14章 論理モデルから物理モデルへの変換
    12. 第15章 物理実装のポイント
    13. 第16章 ビジネス環境の変換に伴うモデルへの影響
    14. 第17章 モデルの変更管理―維持管理の必要性―
(目次から抜粋)
第1部の基礎編の重要な部分を簡単にまとめておく。

まず、データモデリングとは何かというと、『利用者とシステム構築者に実業務の姿をモデル化してみせるもの』となる。そして、テーブル、インデックスなどの格納構造の設計となるデータベース設計の前工程で利用されるものとなる。

データモデルの種類として以下の3つがある。
  • 概念モデル・・・システム構築の最初に作成するモデルで、こんなシステムが作りたいといった要件を盛り込んだもの
  • 論理モデル・・・概念モデルを引き継ぎ、システムで必要とするデータ項目をすべて付加したもの
  • 物理モデル・・・リレーショナルデータベース(RDB)のテーブル1対1に対応し、CREATE TABLEなどを用いてスキーマ定義の生成が可能なもの
ここら辺は基本情報とか応用情報技術者試験のDBの分野でもよく出るね。そんでモデリングの手順が以下のように示されている。
  1. 情報戦略に基づいた概念コーポレートデータモデル(概念CDM)の作成
  2. 業務機能と概念CDMのエンティティのCRUD分析を行い、プロジェクトごとに概念プロジェクトデータモデル(概念PDM)を作成
  3. 新システムの要件を加味して、主要属性を追加し、論理プロジェクトデータモデル(論理PDM)を初期作成
  4. 論理PDMに属性(データ項目)を追加し、関係付ける
  5. テーブル、カラム名、インデックスなどのDBMS固有情報を付加して物理プロジェクトデータモデル(物理PDM)を作成
  6. 物理PDMからDBMS上に実装
さらにトップダウン分析とボトムアップ分析を両方組み合わせていくとよいらしい。

第1部の内容の残りはエンティティや属性、リレーションシップなどのモデリング記法の読み方などが示されている。

第2部からはネット書店を具体例にしてデータモデリングの方法が具体的にかつ網羅的に示されている。これが結構ボリュームがあり、他の本にはあまりないような網羅性と思われる。

微妙なデータモデリング本は、分かりにくかったり、扱う対象が微妙だったり、もう少し深く突っ込んで欲しいというものが多いが、これはかなりよかった。Amazonで評価が高かっただけはあった。まぁ、Amazonの自分の購入記録によると、買ったのは2007年で、約4年間も積読状態にしていたわけだけど(笑)。

モデリング時のポイントの例として、何でもかんでもエンティティを分割しまくるのではなく、業務や利便性を考えてエンティティを統合したままにしておくべきといったことが結構勉強になった。こういうのは具体例、本書の場合はネットショップの顧客、店舗情報、注文内容といったエンティティを見ながらでないとまったく分からないので。

著者によると、良いモデルとは以下のようなものらしい。
  • モデルを見て概略業務が分かる
  • 一度説明してもらえば業務内容を把握できる
(pp.236)

モデリングをするときは、モデリング記法を書けるだけではなく、お客さんの業務が理解できていないとダメだしね。これが会計システムであったり、物流システムであったり、販売管理システムであったりと多岐にわたる。高度にモデリングできる人は、お客さんの業務に精通していることに他ならない。

データモデリングがうまくなるには、年数をかけて習得しなければいけない部分があるのかなと思った。少なくとも仕事でモデリングしてみるという経験が必要だしね。本だけ読んでも限界がある。そして、本書はその補助になる。

結構本書に誤記があった。版が進んでいるものは修正されているようだが、読み始める前に誤記の部分を先に以下のページで確認しておくと良いかも。また、モデリング本は以下もお勧めかな。「アナリシスパターン」は本書の参考文献にも示されていた。それにしても、意外にモデリング本を読み込んでいたんだねぇ。まぁ、Oracle EBSのプロジェクトに関わっていたときだね。

自分は分析タイプなのでモデリングとかデータベース設計に向いていると思う。なので、データベースを主軸の技術領域として、今後専門性を深めていこうかなとか思ったり。ということで、来年の春にデータベーススペシャリスト試験を受験予定。応用情報技術者試験合格による午前I問題の免除の期間が合格から2年までらしいというのもあるし。

ちなみに、本書は約7日間で10時間近くかかって読了した。300ページちょいの技術本を読み込むにはこれくらい時間がかかるようだね。完全に理解していないし、基礎から網羅的に示されているので、また実際にモデリングするときくらいに再読み込みしよう。



実践的データモデリング入門 (DB magazine selection)
実践的データモデリング入門 (DB magazine selection)
著者:真野 正
販売元:翔泳社
(2003-03)
販売元:Amazon.co.jp

読むべき人:
  • 上流工程に関わっている人
  • データモデリングについて基礎から知りたい人
  • データベースを極めたい人
Amazon.co.jpで『データモデリング』の関連書籍を見る

bana1 データモデリングクリック☆  にほんブログ村 本ブログへ



トラックバックURL

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星