統一モデリング言語による論理データベース設計

UMLモデリングは、オブジェクト指向プログラミングの原則に基づいています。 UML では、ソフトウェア・システムの開発のすべての段階についての、モデリング・ダイアグラムの標準セットを定義します。

以下の説明には、データベース設計のエンティティー・リレーションシップ・モデルが記載されています。 使用可能なもう 1 つのモデルは、統一モデリング言語 (UML) です。 Object Management Group とは、UML 標準を作成したコンソーシアムです。 このトピックには、UML の概要を記載してあります。

エンティティー・リレーションシップ・モデルと UML モデルとの基本的な相違点は、以下で説明するようにエンティティーを設計するのではなく、オブジェクトをモデリングします。 概念上では、UML ダイアグラムは、ソフトウェア開発プロジェクトの設計の青写真のようなものです。

UML ダイアグラムのいくつかの例を、以下に示します。

クラス
ハイレベル・エンティティー (クラスと呼ばれる) を識別します。 クラス に、同じ属性を持つオブジェクトのセットを記述します。 クラス・ダイアグラムで、クラス間の関係を示します。
ユース・ケース
ユーザーの観点からの、システムのハイレベル・ビューを提示します。 ユース・ケース ・ダイアグラムで、ユーザーとアプリケーション間、またはアプリケーション間の相互作用を定義します。 このダイアグラムは、システム動作をグラフィックで示します。 ユース・ケース・ダイアグラムを使用すると、システム要件の取り込み、システムの動作の仕組みの理解、およびシステム動作の指定を行うことができます。
アクティビティー
ビジネス・プロセスのワークフローをモデリングします。通常は、プロセス内のアクティビティーのシーケンスの規則を定義してモデリングします。 例えば、会計事務所はアクティビティー・ダイアグラムを使用して、財務取り引きをモデリングできます。
交互作用
オブジェクト間の相互作用の必須のシーケンスを表示します。 相互作用ダイアグラムには、シーケンス・ダイアグラムとコラボレーション・ダイアグラムが含まれることがあります。
  • シーケンス・ダイアグラムは、時間に基づくシーケンスでのオブジェクトの相互作用を示します。このシーケンスで、オブジェクトの役割を確立し、クラスの責任とインターフェースの決定に役立ちます。
  • コラボレーション・ダイアグラムは、操作またはトランザクションをインプリメントするメッセージのシーケンスを定義する、オブジェクト間の関連を示します。
コンポーネント
メインプログラムとサブプログラムなどの、コンポーネント間の従属関係を示します。

WebSphere® およびRational®製品ファミリーから提供されている多くのツールは、UMLモデルの作成作業を容易にします。 開発者は、以下の UML モデリング・ツールを使用して、データベースのアーキテクチャーと、データベースとアプリケーションの相互作用の仕組みをグラフィックで表すことができます。

  • WebSphere Business Integration Workbench これは、標準的なUMLダイアグラムを作成するためのUMLモデラーを提供します。
  • Java™およびウェブサービスアプリケーションのモデリングと、UMLモデルからエンティティ関係モデルへのマッピングを行うための WebSphere Application Server Developer Tools for Eclipse プラグイン。
  • Rational Rose® Data Modeler これは、エンティティ関係モデリングを使用するデータベース設計者とオブジェクト指向アプリケーションの開発者を結びつけるモデリング環境を提供します。
  • Rational Rapid Developer、エンドツーエンドのモデラーおよびコード生成ツールであり、ウェブ、ワイヤレス、ポータルベースのビジネスアプリケーションの迅速な設計、統合、構築、および展開のための環境を提供します。
  • IBM® Rational Data Architect ( RDA ) は、データ専門家がリレーショナルデータベースやフェデレーテッドデータベースを設計し、モデル全体にわたって影響分析を実行できる豊富な機能を備えています。

エンティティー・リレーションシップ・モデルと UML ダイアグラムのコンポーネントの間には類似点があります。 例えば、クラス構造はエンティティー構造に密接に対応しています。

モデリングツール Rational Rose Data Modeler を使用して、開発者は各開発モデルのタイプごとに特定のタイプのダイアグラムを使用します

  • ビジネス・モデル: ユース・ケース・ダイアグラム、アクティビティー・ダイアグラム、シーケンス・ダイアグラム
  • 論理データ・モデルまたはアプリケーション・モデル: クラス・ダイアグラム
  • 物理データ・モデル: データ・モデル・ダイアグラム

論理データ・モデルには、データ・エンティティーに関係する、取り込まれたビジネス要件の全体ビューが用意されています。 データ・モデル・ダイアグラムで、物理データ・モデルをグラフィックで表現します。 物理データ・モデルは、論理データ・モデルの取り込まれた要件を使用し、特定の DBMS 言語にその要件を適用します。 物理データ・モデルはまた、DBMS データベースの下位レベル詳細内容も取り込みます。

データベース設計者は、他の UML ダイアグラムからのデータ・モデル・ダイアグラムをカスタマイズできます。これにより、すでに習熟している、列、表、および関係などの概念および用語で作業できるようにします。 開発者また、論理データ・モデルを物理データ・モデルに変換することもできます。

データ・モデル・ダイアグラムにはシステム全体のモデリング用のダイアグラムが組み込まれているので、データベース設計者、アプリケーション開発者、および他の開発チーム・メンバーが、開発過程全体に渡ってビジネス要件を共有して、追跡できるようにします。 例えば、データベース設計者は、制約、トリガー、および索引などの情報を、UML ダイアグラム上で直接捕捉できます。 開発者はまた、オブジェクトとデータ・モデル間を切り替えたり、多対多の関係などの基本的な変換タイプを使用することもできます。