連載

Visioで始めるUMLモデリング

第3回 Visio UMLモデリングの実力

デジタルアドバンテージ
2004/08/21
Page1 Page2 Page3 Page4

Visio for Enterprise Architectのみの機能

 本連載の第1回で説明したように、Visio for Enterprise Architect(以降、Visio EA)とVisio Professional(以降、Visio Pro)には機能差がある(機能差については、「Microsoft:Visio Professional と Visual Studio .NET の主な違い Version 2002」を参照してほしい)。

 ここでは、Visio EAにのみ実装されている「UMLモデル図のエラー・チェック機能」と「モデル図からスケルトン・コードを生成する機能(=フォワード・エンジニアリング機能)」について紹介しよう。

 次の画面はこの2つの機能を実際に呼び出したところだ。

Visio EAにのみ実装されている機能
「UMLモデル図のエラー・チェック機能」と「モデル図からスケルトン・コードを生成する機能(=フォワード・エンジニアリング機能)」の2つの機能を実際に呼び出したところ。
  UMLモデル図の図面シートを開くと、Visioのメニュー・バーに[UML]という項目が現れる。このメニュー・バー項目から[UML]−[コード]−[チェック]を選択すると、UMLモデル図のエラー・チェックが行われる。
  メニュー・バーの[UML]−[コード]−[生成]を選択すると、 [生成]ダイアログ()が表示される。
  [生成]ダイアログでは、「C#」「C++」「Visual Basic」から言語を選び、さらにコードを生成したいクラスを選んで、[OK]をクリックすると、フォワード・エンジニアリングが行われてVisual Studio .NETプロジェクトのコードが生成される。
  UMLモデル図のエラー・チェック機能()の実行結果がこの欄に表示される。

 UMLモデル図のエラー・チェック機能では、UMLモデリング上の意味的なエラーのチェックと、プログラミング言語仕様上のエラー・コードのチェックを行うことができる。これにより、例えばプログラミング言語上で可能なコードでも、UMLモデリング上ではエラーとなる場合には、「意味的エラー」として通知されることになる。

 フォワード・エンジニアリング機能では、「C#」「C++」「Visual Basic」のいずれかの言語のソース・コードをVisual Studio .NETプロジェクトとして生成できる。ただし、生成されたコードは、(ほとんどの場合)まったく手を加える必要のない完ぺきなコードとはいえないので、何らかのコードの追加修正が必要になるだろう。よって、フォワード・エンジニアリング機能は、あくまで実装作業を少しだけ軽減するためのものだと認識しておいた方がよいだろう。

Visioのデータベース・モデリング機能

 Visioではデータベース・モデリングにも対応していて、ER(Entity Relationship)図やORM(Object Role Modeling)図などのモデリング図を作成可能である。マイクロソフトは、次の資料を見る限り、その中でも特にORMを推しているようである。

 また、Visioのデータベース・モデリング機能は、UMLと同じように、SQL ServerやAccessのデータベースからのリバース・エンジニアリングにも対応している。ただし、このリバース・エンジニアリング機能で生成できるデータベースのモデル図はER図である(Visio Proの場合。さらにVisio EAでは、リバース・エンジニアリング機能でORM図を作成することも可能だ。また、フォワード・エンジニアリング機能で、ORM図からER図を作成したり、ER図からデータベースのスキーマを作成したりすることが可能である)。

 ここではこのリバース・エンジニアリング機能を使って、SQL Serverのサンプル・データベースである「Northwind」データベースからER図を作成してみることにしよう。

 まずVisioでデータベース・モデリングの図面を新規作成する。これにはメニュー・バーの[ファイル]−[新規作成]−[データベース]−[データベース モデル図]を選択すればよい。

 次にデータベースのリバース・エンジニアリングを行う。これには、メニュー・バーの[データベース]−[リバース エンジニアリング]を選択すればよい。これにより、次のような[リバース エンジニアリング ウィザード]ダイアログが表示されるはずだ。

[リバース エンジニアリング ウィザード]ダイアログ
このウィザードの指示に従って、データベースのリバース・エンジニアリングに関する設定を行うと、SQL ServerやAccessのデータベースからER図を作成することができる。

 このウィザードの指示に従って、データベースのリバース・エンジニアリングに関する設定を行うと、SQL ServerやAccessのデータベースからER図を作成できる。次の図は、最終的に生成されたER図のサンプルである。

Visioのデータベース・モデリング機能で生成されたER図
Visioのリバース・エンジニアリング機能では、SQL ServerやAccessのデータベースからこのようなER図を作成することができる。

 最後にVisioのパッチについて述べておきたい。

VisioのService Packについて

 2004年7月27日、Microsoft Office 2003のService Pack 1が公開された(詳しくは、「Windows HotFix Briefings(2004年7月30日版)」を参照してほしい)。それに併せて、Visio 2003のService Pack 1も次のサイトで公開されている。

 また、Visio 2002のService Packは次のサイトで公開されている。

 これらのService Packは、バグやセキュリティ・ホールを修正するものなので、必ず適用していただきたい。

 今回は開発工程とUMLモデル図の関係を示し、ユースケース図とシーケンス図の作成方法について紹介した。UMLモデリングを始めるには、UMLクラス図と併せてこの2つのUMLモデル図を最初にマスターしたい。さらに今回は、データベース・モデリングやVisio EAのみの機能であるフォワード・エンジニアリングについても触れた。

 本連載の内容だけでVisioのUMLモデリングがすべて身に付くわけではないが、本連載がUMLモデリング習得の最初の一歩になれれば幸いである。UMLモデリングをマスターするには、実際にモデリングを行い、とにかく少しずつでも経験を積んでいくことが大事だと筆者は考える。ぜひ、本連載の基本テーマである「習うより慣れよ」方式で、.NET開発でのUMLモデリングを極めていただきたい。End of Article

 

 INDEX
  Visioで始めるUMLモデリング
  第3回 Visio UMLモデリングの実力
    1.Visioで作成可能なUMLモデル図
    2.UMLモデル図の追加とUMLユースケース図の作成
    3.UMLシーケンス図の作成とデータ互換性
  4.Visio for EAの機能とデータベース・モデリング
 
インデックス・ページヘ  「Visioで始めるUMLモデリング」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

Insider.NET 記事ランキング

本日 月間
ソリューションFLASH