SI Object Browser ERの基本がマスターできるチュートリアル

 2020.05.12  株式会社システムインテグレータ

SI Object Browser ERを初めて使う方向けのチュートリアルを作成しました。データベース設計のER図の作成方法からデータベースへ連携機能までをご紹介します。

ER設計とは

SI Object Browser ERはER設計手法に基づいたデータベース設計ツールです。データベース設計が初めてという方向けに、簡単にER設計とは何かご説明します。ER設計とはデータベースを設計するための代表的な設計手法となります。ER設計ではモノ(エンティティ)とリレーションシップ(関係)で処理を表します。例えば「顧客が商品を注文する」という処理を考えた場合は「顧客」や「商品」がエンティティ、「注文する」がリレーションシップとなります。これをER図で表すと以下のようになります。

1

図1.ER図の例

また、顧客の中身を考えると、「顧客コード」や「顧客名」という要素があります。この要素のことは「属性」と呼ばれます。さきほどのER図に属性を追加すると以下のようになります。

2

図2.ER図の例(属性追加後)

最終的に、物理データベース上ではエンティティがテーブル、属性がカラム(列)、リレーションシップは外部キー制約として構築されます。(外部キー制約は不整合が起きないようにチェックする仕組みですが、プログラムで不整合が起きないようにつくることができるので、作らないケースもあります。)システム構築においてはER図をつくらず、いきなりExcelでテーブル設計書を作ったり、設計書自体を作らず物理テーブルを構築することもありますが、テーブル数が多くなればなるほど、不整合が起こるリスクや、プログラマが仕様を理解できない、または勘違いするリスクが増大します。そこで、システム全体のテーブル(エンティティ)構成が俯瞰できるER図を作成することでこのようなリスクがなくなり、品質の高いデータベース設計およびプログラムをつくることができるようになります。

ER図の作成

それでは、SI Object Browser ERでER図を作ってみましょう。まずSI Object Browser ERを起動してください。(はじめて起動する場合のみ、SI Object Browser ERのアイコンを右クリックして「管理者として実行」をクリックしてください。)以下のようにライセンスキーを入れる画面が表示されますが、トライアルとして利用する場合は「スキップ」を押してください。30日間はこの方法で利用することができます。なお、もし購入後の場合はライセンスキーを入れることで製品版となりこのダイアログが出なくなります。

3

画面1.SI Object Browser ER 起動後の画面(トライアル版の場合)

SI Object Browser ERが新規作成モードで表示されます。はじめは白紙となっていますのでまずはエンティティを作成しましょう。ツールバーの中にある「エンティティ」のアイコンをクリックします。続けて、白紙のところでクリックしてください。

4

画面2.SI Object Browser ERの新規作成画面

これで空のエンティティが作成されました。続けてエンティティをダブルクリックしましょう。

5

画面3.エンティティ配置後

エンティティの詳細画面が表示されますので、エンティティ名や属性などの詳細を入力します。またエンティティの下にある「テーブル名」や属性名の右にある「カラム名」は物理名となります。SI Object Browser ERではER図上だけで管理する「論理名」と物理データベース上の名前である「物理名」が両方管理できるようになっています。既定ではテーブル名、属性と同じ名前がテーブル名、カラム名にもセットされますが、詳細設計の段階で(物理モデルを作成する段階で)テーブル名、カラム名に書き換えましょう。また、詳しくは後述しますがSI Object Browser ERには直接Oracleなどにテーブルを作成する「フォワードエンジニアリング」機能があります。「主キー」「データ型」「長さ」も入れておくとこの機能を使うことができますので、同時に設定しておきましょう。最後に「登録」ボタンで保存します。

6

画面4.エンティティ詳細画面

データ型はプルダウンで選択できますが、既定では「VARCHAR2」などOracle用の設定となっています。もし他のデータベースで構築したい場合は、「モデル」メニュー>モデルのプロパティを選択し、「データベース」タブでデータベースタイプを他のデータベースに変更してください。

7

画面5.モデルのプロパティ画面

エンティティを配置後はリレーションも設定しましょう。リレーションには「依存」、「非依存」、「多対多」のアイコンがありますが、今回は親子関係のテーブル間でリレーションを設定したので、赤枠の「依存型リレーションシップ」を選択しましょう。

8

画面6.エンティティ作成後の画面

親となるエンティティでクリック後、マウスを押したまま子エンティティまでドラッグすると線が表示されます。最後の子エンティティの箇所でマウスを離すとリレーションが作成されます。画面6では「顧客マスタ」が親エンティティ、「取引先マスタ」が子エンティティとなっています。

9

画面7.リレーション配置後の画面

このようなかたちでどんどんとエンティティとリレーションを配置していきますが、もし、エンティティが多くなり見づらくなった場合は、サブモデルという機能でシート分割することができます。

10

画面8.エンティティの右クリックメニュー(サブモデル選択時)

サブモデル名を入力するダイアログが表示されますので、サブモデル名を入力します。今回は「商品マスタ系」といれてみました。「OK」ボタンをクリックします。

11

画面9.サブモデルの作成画面

これで「商品マスタ系」という別シートが追加されました。分割後は、エンティティのレイアウトなどの情報は各シートごとに変えることができますが、エンティティの属性追加などの定義変更については全シートで同期がとられますので分割後もシート間で不整合を起こすことはありません。

12

画面10.シート分割後の画面

テーブル定義書を出力する

ER図の完成後はエンティティ定義書(テーブル定義書)などのドキュメントを生成できます。「ファイル」メニューの「レポート出力」>「エンティティ定義書」を選択するか、ER図上で対象のエンティティを選択して右クリック、「レポート出力」>「エンティティ定義書」を選択しましょう。

13

画面11.エンティティの右クリックメニュー(エンティティ定義書選択時)

レポート出力ダイアログが表示されます。ここから出力したい対象のエンティティ一を選択しましょう。SHIFTキーを押しながらクリックすることで対象の増減ができます。すべてを出力したい場合は、CTRL+Aキーで全選択もできます。(なお、右クリックメニューからレポート出力ダイアログを呼び出した場合は、選択したエンティティがセットされています。)エンティティ選択後は「出力」をクリックしましょう。

14

画面12.レポート出力ダイアログ

これでExcelが出力されます。もし、複数のエンティティを出力した場合はシート分割されて表示されます。

15

画面13.出力したエンティティ定義書

同様の方法で、エンティティ一覧や属性一覧などのExcelも作成可能です。

物理データベースを構築する(フォワードエンジニアリング)

また、ER図の作成後は、SQL文(DDL)を発行し、テーブルを作成することができます。「データベース」メニューの「フォワードエンジニアリング」を選択するか、ツールバーにあるのアイコンをクリックします。以下の画面が表示されますので対象のエンティティを選択して「SQL生成」ボタンをクリックします。

16

画面14.フォワードエンジニアリング画面

続けてデータベース接続ダイアログが表示されますので、対象のデータベースを選択しましょう。Oracle、SQL Server、DB2、HiRDB、Symfoware、PostgreSQL、MySQLのいずれかから選択できます。また、あわせて接続先のユーザー(スキーマ)、パスワード、データベース名などの情報を入力します。(Oracleの場合、データベース名はサービス名となります。)「接続先リストに登録する」のチェックボックスをONにしておくと、次回から接続情報が記憶されますので、簡単に接続できるようになります。入力後、「接続」ボタンをクリックします。

17

画面15.ログイン画面

データベース接続に成功した場合は、データべースにDDL文が発行され、テーブルが作成されます。

18

画面16.フォワードエンジニアリング実行中の画面

物理データベースからER図を逆生成するリバースエンジニアリング

また、SI Object Browser ERではデータベースからER図の逆生成が可能です。「データベース」メニューの「リバースエンジニアリング」を選択するかツールバーにあるのアイコンをクリックします。画面12と同じログイン画面が表示されますので、対象のデータベースおよびユーザー(スキーマ)、パスワードなどを入力して接続します。対象のテーブル選択する画面が表示されますのでER図にしたいテーブルを選択します。(既定ではすべてのテーブルが選択されています。)設定後、「開始」ボタンをクリックしましょう。

19

画面17.リバースエンジニアリング画面

これでデータベースに接続および情報解析され、ER図が逆生成されます。エンティティだけでなく、データベース側で外部キー制約を定義していた場合は、リレーションも自動生成されます。

20

画面18.リバースエンジニアリング実行後の画面

以上でSI Object Browser ERのチュートリアルは終了です。お疲れ様でした!今回はSI Object Browser ERの基本的な使い方をご紹介しましたが、SI Object Browser ERではその他にも属性のテンプレートを定義して設計の効率・品質を高める「ドメイン」機能や、ER図とデータベースの同期、データ生成などもあります。当ブログでご紹介していますのでぜひあわせてご覧ください。

トライアル申込

新規CTA
新規CTA

RELATED POST関連記事


RECENT POST「コラム」の最新記事


この記事が気に入ったらいいねしよう!
OBトライアル
ブログ購読のお申込み

RANKING人気資料ランキング

RANKING人気記事ランキング

RECENT POST 最新記事