最終更新日:2004/09/17
概要
Visio はVisual Studio.NET に同梱されている の UML
開発ツールです。
Visio と Visual Studio.NET により、UML
の各種ダイアグラムの作成からコード生成やリバースエンジニアリングが可能です。
内容
- Visual Studio.NET
をインストールするとき、または後で同梱されている Visio
for Visual Studio.NET をインストールします。
- Visio for Visual Studio.NET の媒体 CD-ROM
から、指示に従ってインストールを行います。
コード生成とリバースエンジニアリングを行うときの
Visio と Visual Studio.NET の使用方法について記述します。
Visual Studio.NET
を起動します。次に新規のプロジェクト(ソリューション)の作成または既存のプロジェクト(ソリューション)を開きます。ここでは新規プロジェクトを作成するときの例を示します。但し、既存のプロジェクトのときでも同様に作成していくことができます。
- プロジェクトの作成
[ファイル][新規作成][プロジェクト]
で作成します。
- プロジェクトの選択
適当なプロジェクトを選択します。ここでは
[Visual C# プロジェクト][コンソールアプリケーション]
を選択して、C#
のコンソールアプリケーションを作成していきます。
- プロジェクト名と格納場所の設定
ここではプロジェクト名に [XDETest] 場所を [C:\VCppNET\XDETest]
にします。

Visual Studio.NET のプロジェクト作成
Visual Studio.NET
はプロジェクトに応じたテンプレートコードを生成しますので、そのコードをリバースエンジニアリングして、UML
クラス図を生成します。
以下に自動生成されるテンプレートコードを示します。
using System;
namespace VisioTest
{
///
/// Class1 の概要の説明です。
///
class Class1
{
///
/// アプリケーションのメイン エントリ ポイントです。
///
[STAThread]
static void Main(string[] args)
{
//
// TODO: アプリケーションを開始するコードをここに追加してください。
//
}
}
}
- [プロジェクト] [VisioUML] [リバースエンジニアリング]
- Visio のファイル VSD
ファイルの保存先を聞いてきますので、適当な場所を指定し、[保存]ボタンをクリックします。
- Visio が別ウィンドウで起動します。
- Visio で [ファイル] [開く]
でファイルセレクションウィンドウが表示されますので、2 で指定したフォルダを指定します。[開く]
ボタンをクリックします。
ウィンドウが開きますが、何も表示されていません。
- [モデルエクスプローラ] から クラス [Class1]
をドラッグしてウィンドウにドロップします。
- クラス図が小さいときはズームを調整します。例えば、[100%]
にします。

リバースエンジニアリングした UML クラス図
Visual Studio.NET
で生成されるデフォルトのクラス名である Class1
のクラス図が表示されます。操作はデフォルトで生成される
Main () が表示されます。
クラス図の追加や変更、削除は従来の Visio の Look&Feel
と全く同じ感覚で行えます。
画面のクラス図の直接編集
- 名前の変更は、クラス図を直接ダブルクリックすることで、直接行えます。
- 左側のカテゴリにある [クラス] [属性] [操作]
などを選択し、各種の設定を右側部分で行います。

クラスの設定画面
[図形] ウィンドウを使っての編集
- [図形] ウィンドウにある [クラス] や [汎化]、[2項関連] などの部品をドラッグ&ドロップして設定します。
クラス図からコード生成を行います。
-
[UML] [コード] [生成] で生成ウィンドウが表示されます。

コード生成の設定ウィンドウ
- 新規の場所にコード生成を行う場合は[ファイルの場所]
を設定します。
この方法は VisioUML で多く使われる一般的な方法です。
- 新たなクラスのコード生成を行う場合は、既存の Visual
Studio プロジェクトに追加するときは、[Visual Studio
プロジェクトにクラスを追加] にチェックをします。
この方法も VisioUML
で多く使われる一般的な方法です。
- 既存のクラスファイルにオーバーライトするときには以下のように行います。
この方法は、元のコードにマージするのではなく、オーバーライトする方法になります。例えば、コメントなどはリバースエンジニアリングしたときに失われてしまいますので、リバースしたものからコード生成すると、コメントなどは元には戻りません。
- プロジェクトの [名前] を変更するために [Visual Studio
プロジェクトにクラスを追加]
にチェックして、名前が変更可能にしてから名前を適当なものに変更します。また
[ファイルの場所] も設定します。
これを設定して、Visual Studio.NET
で作成しているコードが入るフォルダを指定します。
上記の例では、[Visual Studio Projects]
のフォルダを指定して、そこへ ConsoleApplication3
のフォルダを書き込むようにしています。
- [コード生成に使用するクラスを選択]
でコード生成を行うものをチェックします。
- テンプレートを適当なものに設定します。ここでは
[コンソールアプリケーション] にします。
注意: Visual Studio と Visio
は連携していませんので、両者で同じ種類のテンプレートを指定する必要があります。
- [Visual Studio プロジェクトにクラスを追加]
チェックを外します。
これは、[Visual Studio プロジェクトにクラスを追加]
では既存クラスのオーバーライトができないです。クラス単位にオーバーライトを行います。
- [OK] ボタンをクリックします。
- 次に Visual Studio.NET に戻ります。Visual Studio.NET の画面を選択してフォーカスを移します。
- Visual Studio.NET では以下のダイアログが出ています。

Visual Studio.NET での変更のダイアログ
8. [はい]
ボタンをクリックします。コードが新しくなっています。

コード生成
このコード生成ではオーバーライトしているため、コメントなどの情報は失われていることに注意してください。
Visio
ではモデルとコードの同期については考慮されていません。無理に行う方法はコード生成の後半に書きましたが、一般的ではありません。使い方は
-
新規のクラスを追加する
-
別の新規のファイルとして生成する
で行い、細かく両者を行き来するのではなく、バッチ処理的に両者を変換するようにします。
これは XDE や Together
などのツールが両者を細かく協調させて開発するのと比較して異なるものです。
資料室へ戻る