EAで自分用のモデルを作ってみた

Enterprise ArchitectではUMLを拡張して独自のモデルを作れます。そこで、自分用のモデルを作ってみました。

背景

UMLでいろいろなことを表現できるのですが、基本的にソフトウェアの世界の言語でして、メカ設計の人には馴染みが無かったりします。
ということで、メカの構造をモデル化するときにUMLとは異なる記法(書式)が要求されたりします。
Excelで描いたりするのですが、グループ化すると勝手に要素の配置がずれたりしてイラッとするので、UMLのモデリングツールを使ってみようという試みです。

手順

EnterpriseArchitectのヘルプに、手順が書いてあります。
「Enterprise Arichitectの拡張(SDK)」の中の「MDGテクノロジーを独自に定義」という項目です。

今回は、プロファイルエディタを使わずにモデルのプロファイルを作成してみます。手順は基本的にヘルプに書かれているとおりです。

プロファイル作成用のプロジェクトファイルの作成

まず、Enterprise Architectを起動して、プロファイル作成用のプロジェクトファイルを作成します。
今回は、とりあえずmyprofileというファイル名にしました。

モデルテンプレートを選択するダイアログが表示されたら、「キャンセル」をクリックします。

プロファイルパッケージの作成

ヘルプにはいきなりパッケージ図を作成するように書いてあるのですが、プロジェクトルートの直下にはダイアグラムを作成できないようなので、パッケージとダイアグラムを作成します。

プロジェクトブラウザの「プロジェクトルート」をクリックするとメニューが表示されて、その中に「パッケージの追加」というメニューがあります。

そうすると、パッケージを追加するダイアログが開くので、「ダイアグラムを追加」にチェックをつけて「OK」をクリックします。

すると、「ダイアグラムを追加」のダイアログが開くので、「UML構造図」の「パッケージ」を選択して「OK」をクリックします。

そうすると、「プロジェクトブラウザ」の中のプロジェクトルートの下にパッケージとパッケージ図が配置されます。
そうしたら、パッケージ図をダブルクリックして開きます。
空のパッケージ図が表示されますので、「ツールボックス」の「別のグループ」というところをクリックします。表示されるメニューの中に、「プロファイル」というのがありますので、それを選択します。そうすると、「ツールボックス」の中がプロファイル関係のものに変わります。

ツールボックスから「プロファイル要素」の「プロファイル」をパッケージ図にドラッグアンドドロップすると、「パッケージの追加」のダイアログが開きます。
「ダイアグラムを追加」にチェックをして「OK」します。
そうすると、「ダイアグラムの追加」ダイアログが開くので、今度はmyprofileとか名前をつけて、「UML構造図」の「クラス図」を選択して「OK」します。

すると、パッケージ図の下にクラス図が追加されます。

ステレオタイプやメタクラスをUMLプロファイルに追加

プロジェクトブラウザに追加したクラス図をダブルクリックして開きます。
次に、ツールボックスの「メタクラス」を開いたクラス図にドラッグアンドドロップします。
そうすると「メタクラスの指定」というダイアログが開くので、拡張元にする要素を選択して「OK」します。
今回は「クラス」にしてみます。
そうすると、クラス図にメタクラス要素が配置されます。

次に、ツールボックスの「ステレオタイプ」をクラス図にドラッグアンドドロップします。
ステレオタイプ要素の名前を適当に設定します。
今回はmyclassにしてみます。

次に、ステレオタイプ要素からメタクラス要素へ「拡張」で接続します。
そうすると、こんな感じになります。

このステレオタイプ要素に拡張する内容を書き込みます。

プロファイルの出力

プロジェクトブラウザのクラス図の1つ上のパッケージ(名前の前にprofileと書いてあるパッケージ)を右クリックするとメニューが開きます。
その中から、「追加設定」→「パッケージをUMLプロファイルとして保存」を選択します。

「UMLプロファイルの保存」ダイアログが開くので、プロファイル名とファイル名を適当に設定します。「種類の選択」欄は「EA UML(2.x)」にします。
「保存」をクリックするとXMLファイルが出力されます。

作成されたXMLの中身はこんな感じです。

UMLプロファイルの読み込み

では、作成したプロファイルを読み込んでみます。

作成したプロファイルを使用したいプロジェクトを開きます。
プロジェクトブラウザのタグを「リソース」に切り替えます。(Enterprise Architectのウィンドウの配置状態によって異なる場所にある場合があります。)
リソースの中に「UMLプロファイル」というのがありますので、右クリックして「UMLプロファイルの読み込み」を選択します。

そうすると、「UMLプロファイルの読み込み」ダイアログが開きますので、作成したXMLファイルを指定して「読込」をクリックします。

すると、UMLプロファイルの下に読み込んだプロファイルが追加されます。
また、ツールボックスの「別のグループ」をクリックすると、作成したプロファイルがメニューに追加されているのがわかります。

ツールボックスを作成したプロファイルに変更すると、作成した要素が表示されます。
適当なダイアグラムにドロップすると、作成したステレオタイプの要素が配置されます。

まとめ

  • プロファイルの拡張は、profileというステレオタイプのパッケージの子のクラス図で行う。
  • メタクラス要素で拡張元を指定し、ステレオタイプ要素に拡張内容を記述する。
  • ステレオタイプ要素からメタクラス要素へ、拡張で接続する。

ステレオタイプで要素の外観を指定できたりしますので、使いたい様に指定して利用しましょう。

試した環境は下記です。

  • Enterprise Architect 13 ビルド1310
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク