成果物:
|
![]() |
データ モデルでは、アプリケーションで使用される永続的データの論理表現と物理表現を記述します。アプリケーションでリレーショナル データベース管理システム (RDBMS) を利用する場合、データ モデルにはストアド プロシージャ、トリガ、制約などに対応するモデル要素が含まれる場合があります。これらの要素は、アプリケーション コンポーネントと RDBMS との相互作用を定義します。 |
役割: | データベース設計者 |
---|---|
オプション度 / 使用時期: | オプション。方向づけフェーズと推敲フェーズ |
テンプレートとレポート: |
|
例: | |
UML の表現: | «model» としてステレオタイプ化されるパッケージ |
詳細情報: | |
成果物を入力とする作業: | 成果物を出力とする作業: |
データ モデルは、システムで管理される永続的な情報の、論理的および物理的な構造を記述するために使用されます。データ モデルは当初、既存の永続データ ストア (データベース) のリバース エンジニアリングを通じて作成される場合もあれば、設計モデル内の永続的設計クラスの集合から作成される場合もあります。
データ モデルは、永続記憶メカニズムがオブジェクト指向でない技術に基づいている場合は常に必要です。 データ モデルは、設計モデルの永続クラスの構造から、自動的または機械的に永続データの構造を導くことができない場合に特に必要とされます。データ モデルを使用して、永続設計クラスと永続データ構造間のマッピングを行ったり、永続データ構造そのものを定義したりします。
次のプロパティ表では、データ モデルの要素について説明しています。この表中のモデル プロパティの定義は、統一モデリング言語 (UML) 仕様のバージョン 1.3 のデータ モデリング プロファイルに準拠しています。UML バージョン 1.4 のデータ モデリング プロファイル要素はまだ定義されていません。
プロパティ名 |
概要 |
UML の表現 |
Introduction | モデルの簡単な紹介を記述したテキスト | 「short text」型のタグ付き値 |
Packages | 組織的なグループ化に使用されるパッケージ | 関連「represents」を通して、または集約「owns」を通して再帰的に所有される |
Tables | パッケージに属するデータ モデル内のテーブル | «Table» としてステレオタイプ化されるクラス |
Relationship | モデル内のテーブル間の単純な関連 | «Non-Identifying» としてステレオタイプ化される関連 |
Strong Relationship | モデル内のテーブル間のコンポジット集約関係 | «Identifying» としてステレオタイプ化される関連 |
Dependency (View to Table) | テーブル、ビュー、その他のモデル要素間の依存関係 | テーブルとビューの間の依存関係の場合、«Derive» としてステレオタイプ化される依存関係 |
Column | テーブルのデータ値 | «Column» としてステレオタイプ化される属性 |
Domain | ユーザー定義のデータ型 | «Domain» としてステレオタイプ化されるクラス |
View | 1 つ以上のテーブルから抜き出した列で構成される仮想テーブル | «View» としてステレオタイプ化されるクラス |
Diagrams | パッケージに属するモデル内のダイアグラム | テーブルとそれらの間の関係を描くクラス図、モデル内のテーブルからテーブルスペース コンポーネントとデータベース コンポーネントへの実現を描くコンポーネント図 |
Index | 指定されたパスに沿ってアクセスを高速化するために使用されるデータ アクセス構造 | «Index» としてステレオタイプ化される操作 |
Trigger | テーブルに関連づけられた、イベントを起動する振る舞い | «Trigger» としてステレオタイプ化される操作 |
Check constraint | 列またはテーブルの検証ルール。有効な値または計算値の範囲で構成できます。 | «Check» としてステレオタイプ化される操作 |
Unique constraint | 列または列集合内のデータが一意でなければならないことを定める制約 | «Unique» としてステレオタイプ化される操作 |
Stored Procedure Package | ストアド プロシージャ操作の「コンテナ」として使用されるクラス | «SP_Container» としてステレオタイプ化されるクラス |
Stored Procedure | テーブルまたは全体としてのモデルに関連づけられた、明示的に呼び出される振る舞い | «SP» としてステレオタイプ化される操作 |
Schema | データベースの構造全体を表現するデータ モデルの要素のコンテナ。テーブルのセキュリティと所有権を管理するために使用されます。 | «Schema» としてステレオタイプ化されるパッケージ |
Database | 物理データベースを表現するモデル要素 | «Database» としてステレオタイプ化されるコンポーネント |
Tablespace | データベース内の物理記憶の単位 | «Tablespace» としてステレオタイプ化されるコンポーネント |
データ モデルの作成は、アーキテクチャのプロトタイプ作成の一環として方向づけフェーズに開始できます。その目的は、再利用可能な既存の資産について理解したり、設計をすばやく開始するための下地を得ることです。方向づけフェーズでは、重要なリスクの軽減と、アーキテクチャ上重要なユース ケースの網羅に必要な程度までデータ モデルの作成を進めます。特に、推敲フェーズでは一般的に、アプリケーションの残りの部分から永続データ記憶 (ほとんどの場合データベース) にアクセスするための堅固なメカニズムを確立することが重要です。
データベース設計者は、データ モデルが全体として正確であり、一貫性があり、理解しやすいことを保証することによってデータ モデルの整合性に責任を持ちます。
永続的なデータがほとんどない、または、設計クラスから永続的メカニズムへの直接の変換手段があるプロジェクトでは、独立したデータ モデルが不必要な場合があります。RDBMS を利用して永続的データを扱うプロジェクトでは、RDBMS 間で微妙に異なる場合がある、基盤のデータベースに固有のセマンティクスに合わせてデータ モデルをカスタマイズする必要があります。
Rational Unified Process
|