データベース設計はいつ、何をポイントに行うか
情報価値向上技術支援室
沖 冠吾
2009/4/27
どの段階でどう設計すればいいのか
前回、データベース設計は自社のビジネス活動を理解している自社内の人間がやるべきであり、情報システム部門の存在意義を高めるために必要な技法であるとお伝えしました。しかし、システムの外部委託が多いというのもまた事実です。
筆者の職場では、お客様からデータモデリングに関するご相談をいただく際、最初に「貴社のデータモデルを拝見させてください」というお願いをします。システム開発を外部委託しているケースでは多くの場合、形として残っているのは「物理データモデル」であり、担当者に具体的な内容を聞いても「外注先のシステム会社が作成したのでよく分からない」という回答がかえってきます。
外注先のシステム会社にとっては依頼された範囲のシステム構築が目的であり、お客様のビジネス活動を全体的に把握しているわけではないため、開発部分に関連したデータモデルだけを作成するのは当然のことです。
今回は、自社内で行うべきことと外部委託が可能な部分の大きな切り分けのポイントとなる、「システム開発のどの段階でどのようなデータベース設計を行うのか」について紹介します。
システム開発サイクル
システム開発サイクルとは、SDLC(Systems Development Life Cycle)とも呼ばれ、システム開発を行う際の工程を示したものです。システム開発サイクルにはおよそ7つの工程があり、それらは(1)企画、(2)開発、(3)運用/保守という3つのフェイズにカテゴライズできます。特徴としては前工程の情報が後工程のインプット情報になり工程全体を連ねる形をとります。以下で簡単に各工程での作業内容とどこでデータベース設計が発生するのかを見てみます。
(1)企画フェイズ
システム化計画から要件定義までの工程を実施します。本フェイズはさらにシステム化要求工程とシステム化分析工程から構成されます。
●表1 企画フェイズの作業と成果物| 作業 | 作業の内容 | 成果 |
|---|---|---|
| システム化要求 | システム化対象範囲の決定とシステム化計画の立案を行います | システム化計画書 RFP |
| システム化分析 | システム化対象範囲の分析を行います。具体的にはプロジェクト計画書を作成するために必要となる事項の調査および要件定義を行います。この段階でシステム化対象範囲となるデータ構造を明確にします。 | ・プロジェクト計画書 ・要件定義書 ・概念データモデル |
(2)開発フェイズ
主な工程として、基本設計、詳細設計 、アプリケーション開発、テストを実施します。
●表2 開発フェイズの作業と成果物| 作業 | 作業の内容 | 成果 |
|---|---|---|
| 基本設計 | 要件定義書からアプリケーション、データ、およびシステム運用に関する設計を行います。この段階でシステム化対象範囲のデータ項目を明確にする「論理データベース設計」を行います。 | ・基本設計書 ・論理データモデル |
| 詳細設計 | 基本設計書を基に実装の観点から仕様の確定を行います。この段階で「物理データベース設計」を行います。 | ・詳細設計書 ・物理データモデル |
| アプリケーション開発 | 設計書に基づいたアプリケーション開発を行います。 | ・プログラム仕様書 ・プログラム説明書 ・テスト指示書 |
| テスト | 単体テスト、結合テスト、統合テストを行いシステム品質の向上を図ります。 | ・プログラムリスト ・バグ報告書 |
(3)運用/保守フェイズ
システム稼働後の運用と保守を行います。安定稼働、システム品質維持などとともに、利用者教育などシステムを利用者に浸透させることも重要となります。
以上から、システム開発サイクルの中でデータベース設計に関連するのは、システム化分析、基本設計、詳細設計の3つの工程であることが分かります。
●図1 システム開発ライフサイクルとデータベース設計
| 1/3 |
| Index | |
| データベース設計はいつ、何をポイントに行うか | |
| Page 1 ・どの段階でどう設計すればいいのか ・システム開発サイクル (1)企画フェイズ (2)開発フェイズ (3)運用/保守フェイズ |
|
| Page 2 ・各工程におけるデータベース設計(データモデリング)の役割 (1)ビジネス構造のデータによる分析(システム化分析工程) (2)ビジネス構造のデータによる可視化(基本設計工程) (3)システムを動かすためのデータ構造化(詳細設計工程) |
|
| Page 3 ・3つのデータモデルの役割を理解する ・まとめ |
|
TechTargetジャパン
- やはりSELECT文は永遠のテーマです (2012/2/7)
Database Expertフォーラムの2012年1月のアクセスランキングをお届けします。定番の記事を一気に追い抜いてあの記事が…… - SELECT文で取り出したデータを加工して表示する (2012/1/25)
SELECT文で取り出したデータを対象に四則演算する方法など、データを見やすくする方法を解説します - 2012年は私たちが勉強会を盛り上げる! (2012/1/23)
2011年12月、データベース業界初の女子会が発足しました。そこで、女子会を盛り上げていってくれそうな2人にお話を伺いました - 複数の条件を指定してSELECT文を実行する (2012/1/13)
複数の条件を指定してSELECT文を実行する方法と、条件指定に必要な論理演算子、比較演算子の役割を解説します
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
