第11回:見やすいER図 1

 第11回は、見やすいER図の書き方 その1です。

大規模システムのER図

前回までで、ER図の基本的な考え方や、OBERなどツールを使用したモデリングについて解説してきました。ここまでの知識でER図を用いたデータベース設計を行なうことが可能になっていると思います。基本的にはエンティティを定義してリレーションを設定する作業の繰り返しですから、システムの規模が大きくても設計面で詰まることはあまりないでしょう。
しかし、ここで大規模ならではの問題が発生します。当然規模も大きいので使用するテーブル数もたくさんありますし、それを関連付けるリレーションもまたたくさんあります。するとどうでしょう。モデルは箱と線であふれかえり、何やらごちゃごちゃして見にくくなってしまいます。ER図は設計図なわけですから、何よりも見やすさが優先されていなければなりません。「システムを図で表し、全体像をとらえやすくする」ためにER図の使用をお勧めしていましたが、これではあまり意味をなさないものとなってしまいます。(図37)

図37:エンティティとリレーションが重なっているER図

 

機能ごとに分割

ここからは、設計していくうちに見にくくなってしまったER図をいかに見やすい形にしていくのかをご紹介していきます。
今まで解説してきた設計では、図37のようにメインモデル上にすべてのエンティティが配置されている状態だと思います。このようにエンティティやリレーションが複雑に重なり合った状態だと、目的のエンティティを探すのにも一苦労です。別画面のエンティティリストから検索して探す方法ももちろんありますが、ER図の優先事項は見やすさですので、モデル上で探せるほうがよいと思います。必要なエンティティとそれに関連するエンティティをまとめて閲覧することができたら、大変便利ではないでしょうか。
OBERには「サブモデル化」という機能があります。この機能を使用し、たとえば商品マスタに関連するエンティティのみを抜き出してサブモデル化する、といったことが可能です。メインモデルの情報は特に変化はありませんが、新たに作り出したサブモデルに関連する機能を抜き出して管理することができます。
OBERの画面下部にある「メインモデル」タブ上で右クリックメニューを展開し、「サブモデルの追加」を選択すると、図38が展開します。必要なエンティティを選択すると、メインモデルの隣にサブモデルが展開され、今選択したエンティティのみが表示されているのがわかります。

図38:サブモデル追加画面

 

サブモデルには名前を付けることも可能です。図38で設定したタイトルがそのままタブのタイトルになりますので、簡単に任意のエンティティ群を選択することが可能です。図39は、機能ごとにサブモデルを作成し、「商品マスタ系」を表示しているところです。

図39:サブモデル・商品

なお、メインモデルとサブモデル間の修正は相互に連動していますから、整合性面でも心配はありません。


色分けする

サブモデルで機能ごとにわけ、機能単位ではだいぶすっきりとしたと思います。さらに見やすくしていきましょう。
エンティティには、使用者の思う通りに色をつけることが可能です。初期状態はすべてのエンティティが白に設定されているため見栄えがしませんが、この一つ一つに色を設定していくことによって印象がだいぶ変わっていきます。図40は、エンティティをマスタ系とトランザクション系とで色分けしてみました。もちろん機能ごとや他のくくりでの色分けでもOKです。今回はすでに機能ごとにサブモデル化しているので、この形にしています。


図40:色分け


請求・入金機能のエンティティ種類がぱっと見た瞬間に認識できると思います。
このように色を工夫するだけでも設計図の可視性を大幅に向上させることができます。


 


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

ページトップへ▲

←第10回へ →第12回へ