既存データを利用して新規モデルを作成する
ここまでは、モデルを新規に作成する方法、および、論理/物理モデル分割機能と 新規モデルの導出機能を使って既存モデルからモデルを作成する方法について 学習しました。この章では、リバース エンジニアリングによってデータ モデルを作成 する方法を説明します。リバース エンジニアリングは、既存のデータベースを利用し て、新規データ モデルの設計および新システムの提供における作業効率を向上さ せるプロセスのことです。
リバース エンジニアリング
既存のデータベースを基にしてデータ モデルを作成する場合、AllFusion ERwin DMを使ってデータベース スキーマをリバース エンジニアリングします。リバース エ ンジニアリングを行うと、新しいモデルではデータベース スキーマはグラフィカルに 表現されたデータベース構造に変換されます。リバース エンジニアリングを利用す れば、データベースから新しいデータモデルが直接作成されるので、かなりの時間 を節約できます。
リバースエンジニアリングのプロセスを次の図に示します。
リバース エンジニアリング
まず、次のようなデータベースやスクリプト ファイル内の情報が取り込まれます。
■ テーブル
■ カラム
■ リレーションシップ
■ トリガ
■ ストアドプロシージャ
■ バリデーション ルール
■ 物理ストレージプロパティ
次に、この情報を基にして、物理または論理/物理モデルが自動的に作成されます。
リバースエンジニアリングを開始する方法は、次の2つがあります。
■ データベース カタログから - [ツール]メニューの[リバース エンジニアリング]を クリックします。
■ スクリプト ファイル(*.sql)から - AllFusion ERwin DMの[ファイル]メニューから ファイルを開きます。
リバース エンジニアリングを実行すると、任意のAllFusion ERwin DM機能を使用 して、設計層の向上、開発、または新規データモデルへの追加を実行できます。
テンプレートの選択
スクリプトから、または直接データベースからリバース エンジニアリングを実行する 場合は、物理テンプレートまたは論理/物理テンプレートを選択できます。
テンプレートを選択する場合は、設計層の階層と、リバース エンジニアリングで作成 するデータモデルがその階層に適合するかどうかを考慮します。
たとえば、物理モデルで作業を開始し、そのソースから別のモデルを派生すること ができます。
または、論理/物理モデルをリバース エンジニアリングして、そのモデルを別々の論 理モデルと物理モデルに分割することもできます。その後、設計層の階層で、他の モデルのソースとしてどちらのモデルを使用することもできます。
リバース エンジニアリングのオプション
リバースエンジニアリングの最後の手順は次のとおりです。
■ インポートするデータベース オブジェクトとプロパティを選択する
■ 物理データベースのオプションを選択する
■ インデックスから主キーやリレーションシップが推量されるかどうかを指定する
■ 大文字小文字の変換オプションを設定する
オプションやオブジェクト リストは、リバース エンジニアリングするデータベースや SQLファイルによって異なります。
6–2 AllFusion ERwin Data Modeler導入ガイド
リバース エンジニアリング
リバース エンジニアリング ウィザードの利用
1. [ツール]メニューの[リバース エンジニアリング]をクリックします。
[リバース エンジニアリング - テンプレートの選択]ダイアログ ボックスが表示さ れます。
2. 新規モデル タイプに[物理]、テンプレートに[ブランク物理モデル]、対象デー タベースにOracle 10.xをそれぞれ選択します。
リバース エンジニアリング
3. [次へ]をクリックします。
[リバース エンジニアリング-オプションの設定]ダイアログ ボックスが表示され ます。
4. [リバース対象]で[スクリプト ファイル]を選択し、次に[参照]をクリックして、前 章で保存したMyModel.sqlファイルを検索します。
5. この実習では、このダイアログ ボックスの残りの設定項目についてはデフォルト 値をそのまま使います。[次へ]ボタンをクリックします。
リバース エンジニアリングしているデータベースの構造を説明するテキストが小 さいダイアログ ボックスに表示されます。リバース エンジニアリングのプロセスが 終了すると、ダイアグラム ウィンドウに新規のデータモデルが表示されます。ダ イアグラム オブジェクトはユーザが並べ替えることができます。
注: 新しいデータ モデルが最初に表示されるときは、グラフィック ボックスとリ レーションシップ ラインだけが表示されます。データ モデル内のオブジェクトの 名前を確認するには、AllFusion ERwin DMツールバーの[ズーム]ボタンを使 用します。
6–4 AllFusion ERwin Data Modeler導入ガイド
完全比較
6. [ファイル]メニューの[保存]をクリックして、このモデルを「MyModel.erwin」とい う名前で保存します。
メッセージ プロンプトが表示されます。
7. [はい]をクリックし、既存のファイルを置き換えます。
完全比較
完全比較は、AllFusion ERwin DMに用意されているツールの中でも最も強力です。
この看板技術を使えば、あるデータ モデルと、関連データベースまたは別のデータ モデルとの間で、オブジェクトのプロパティを比較したり同期させたりすることができ ます。
完全比較技術には、次の機能があります。
■ 開いているモデルをリアル タイムで操作できます。モデル、データベース、また はスクリプト ファイルを選択すると、作業領域でモデルとして開き、比較処理中 は開いたままになります。比較中にモデルに加えられた変更は、開いているモ デルに自動的に反映されます。比較セッションの終了時にモデルを保存したり、
データベースの更新やスクリプト ファイルの置換と言った機能を使用したりする ことができます。
■ シーケンシャルではないウィザード画面を使用して、すばやく単純比較を実行 したり、複雑な比較を実行するためのパラメータを設定したりすることができます。
ウィザード内を移動するには、表示の変わらないエクスプローラ ウィンドウに表 示されるナビゲーション ツールを使用します。事前に定義されたデフォルトを使 用して[比較]を1回クリックすれば、比較プロセスを開始できます。
■ 比較セッション全体を外部XMLファイルに保存します。保存した完全比較セッ ションをもう一度読み込み直して、以前の選択内容を簡単に復元できます。
■ [タイプの選択]ダイアログ ボックスでオプション セットを作成し、比較に使用す るオブジェクトやプロパティのリストをカスタマイズできます。オプション セットは 外部ファイルとして保存することも、比較に使用したモデルの片方または両方 に保存することもできます。
■ [相違点の確定]ダイアログ ボックスで検索機能を使用して、表示された相違点 のリストを検索します。
■ [相違点の確定]ダイアログ ボックスでレポート機能を使用して、完全比較セッ ションのカスタム レポートを準備します。
完全比較
完全比較ウィザード
完全比較ウィザードを使用して、完全比較プロセスの基本的な4つの手順を実行し ます。
■ 比較するモデル、スクリプト ファイル、またはデータベースを選択します。
■ 比較プロセスで使用するオブジェクトやプロパティ、およびフィルタオプションを 選択します。
■ 相違点を確定します。
■ モデルを保存します。
モデルの選択方法
比較するモデル、スクリプト ファイル、またはデータベースを選択します。可能性の ある一般的な比較シナリオは、次のとおりです。
■ AllFusion ERwin DM 作業領域で開いているアクティブなデータ モデルと、
*.erwinファイルとして保存されたモデルの比較。
■ データモデルとスクリプトまたはデータベースの比較。
■ 無関係な2つのモデルの比較。
[ツール]メニューから[完全比較]を選択します。デフォルトで[右側のモデルの選 択]ダイアログ ボックスが開きます。
作業領域ですでに開いているモデルを操作できるほかに、完全比較ウィザードを使 用して、モデルを開いたり、データベースやスクリプト ファイルをリバース エンジニア リングしたりすることもできます。
6–6 AllFusion ERwin Data Modeler導入ガイド
完全比較
■ [ロード元]の選択肢から選択して、新しい*.ERWIN ファイルを開きます。また は、データベースやスクリプト ファイルと比較します。[データベース/スクリプト]
オプションを選択すると、[リバース エンジニアリング]ダイアログ ボックスが開き、
オプションを選択できます。AllFusion Model Managerに接続している場合は、
AllFusion MM Libraryからモデルを開くことができます。
■ [メモリ内のモデルを開く]リストにフォーカスを移動し、作業領域ですでに開い ているモデルを選択します。
完全比較ウィザードのペインは簡単にナビゲートできます。ウィザードの表示の変 わらないエクスプローラ領域でペイン名をクリックするだけで、そのペインが表示さ れます。
ウィザードはシーケンシャルでないため、必要なだけ多いまたは少ないオプションを 選択して、いつでも比較プロセスを開始することができます。
右側のモデルを選択したら、ナビゲーション ペインで[左側のモデル]をクリックし、
[左側のモデルの選択]ダイアログ ボックスを開きます。比較の「左側のモデル」の モデル、データベース、またはスクリプト ファイルを選択します。
注: 完全比較ウィザードのその他のオプションすべてで、事前に設定されたデフォ ルトを使用できます。デフォルトのまま比較プロセスを開始するには、この時点で[比 較]をクリックします。