はじめに
業務システムの開発では、データベースのテーブル設計を避けて通ることはできません。顧客やチームメンバーとのレビューにER図(注1)や項目属性一覧を作って修正して……。これらは決して楽しい作業ではありません。皆さんは、どのようにしているでしょうか?
「ERMaster」は、ER図を作成するためのEclipseのプラグインです。直感的で分かりやすいユーザインターフェース(UI)を持ち、データベースのテーブル項目や属性の設定はもちろん、Excelやhtml形式へのテーブル属性一覧の出力、DDL出力、その他さまざまな機能を持っています。
本記事では、この「ERMaster」についてご紹介します。
ER図とは、テーブル(エンティティ)と、テーブル間の関連(リレーションシップ)を線で結んで、データベースを分かりやすく表現した図のことです。
対象読者
本記事は、次の方を対象にしています。
- システム開発を始めたばかりで経験が浅い方
- Eclipseを使ってシステム開発をされている方
- データベースおよびRDBMSの基本を理解されている方
- SQL文が書ける人
必要な環境
本連載で紹介する環境は次のとおりです。
- OS:Windows 8 Pro
- ERMaster:1.0.0.v20121127-2328
- Java:Java SE Runtime Environment(build 1.7.0_17-b02)
- Eclipse:Eclipse 4.2 Juno Pleiades All in One
- MySQL:MySQL Community Server 5.6.10
ERMasterとは
ERMasterは、Eclipseプラグインとして動作する、ER図作成のためのGUIエディタです。データベースの設計時のER図の作成だけでなく、印刷、テーブル定義書の出力、データベース構成を定義するDDLの出力などが、簡単にできます。ERMasterの特徴は次のとおりです。
導入と操作が容易
Eclipseのプラグインとして動作するので、インストールや環境設定が簡単にできます。また、直感的で分かりやすいユーザインターフェース(UI)をもち、マウスを使ってお絵かき感覚でER図を作ることが可能です。
さまざまなデータベースサポート
Oracle、DB2、PostgreSQL、MySQLに加え、HSQLDBや組み込みシステムなどで利用されているSQLiteなどをサポートしています。
上流~下流での開発工程でつかえる
システム開発をしていると、顧客にデータベースを使って機能を説明するときは、「書籍コード」「書籍名」など、実際に業務で使う分かりやすい言葉を使います。一方、プログラマに仕様を説明するときは、実際にデータベースの「book_no」「book_name」など、SQL文を書くときに使うカラム名を使ったほうが、プログラミング時に認識のずれが起こりにくくなります。
ERMasterには、説明する相手によってER図の表示を切り替えられる機能があります。そのため、上流工程でのモデリングから、下流工程での詳細なデータベース設計まで、幅広い使いかたができます。
Excel/HTML/画像への出力
作成したER図をExcelやHTML、PNG形式などで出力できます。ExcelやHTMLでは、HTMLやExcelファイルで提供されるテンプレートをカスタマイズして、開発プロジェクト独自のフォーマットで出力することも可能です。
リバースエンジニアリング機能
すでにデータベース上に存在するテーブルをもとに、ER図を作成することができます。