ステレオタイプの定義

<< 目次を表示 >>

ページ位置:  Enterprise Architectの拡張(SDK) > MDGテクノロジーを独自に定義 > プロファイルの作成 > プロファイルの作成と編集 > プロファイルエディタの利用 > プロファイルの定義 >

ステレオタイプの定義

独自のモデリング言語(ドメイン固有言語)を定義しようとした場合には、通常はその言語を構成する要素・接続・特性などの情報を定義します。この定義を行う場合、Enterprise Architectで提供されているモデル要素か、その他のモデリング言語を元に拡張する形で定義します。この、拡張する元になる要素をメタクラス要素、独自の定義のことをステレオタイプ要素と呼びます。

 

ステレオタイプ要素を定義する場合には、モデルテンプレートで作成できるパッケージ構成の中で、プロファイルエディタを利用して作成します。このパッケージ構成のパッケージには、ステレオタイプとして «profile» が付加されています。また、パッケージ内にはダイアグラムがあります。このダイアグラム内で、ステレオタイプ要素とメタクラス用を追加し、関連づけます。作業が完成したら、ダイアグラムの内容をUMLプロファイルとして保存します。

 

つまり、新規に独自のモデリング記法を定義する場合には、以下の2つの要素が必要になります。

 

 

メタクラス要素を拡張してステレオタイプ要素を定義する場合のルールは以下の通りです。

 

 

 

プロファイルにメタクラスとステレオタイプを追加する

#

操作方法

1

<<profile>>のパッケージ内のダイアグラムを開きます。

2

ツールボックスのプロファイルエディタグループ内にある 「ステレオタイプの追加」 をダイアグラム内にドロップします。

ステレオタイプの追加ダイアログが表示されます。

(参考:プロファイルの定義)

3

名前の欄に、ステレオタイプの名前(=独自に追加する新規要素の種類名)を入力します。

4

種類の欄では、以下のいずれかを選択します。

  • 要素の拡張 - 既存の要素を拡張して独自要素を作る場合に指定します。
  • 接続の拡張 - 既存の接続を拡張して独自接続を作る場合に指定します。
  • 抽象メタクラス - 構造あるいは振る舞いに関する抽象要素を拡張して、独自の要素を作る場合に指定します。
  • メタクラスの拡張 - モデル内に既に存在するメタクラス要素を拡張して独自の要素や接続を作る場合に指定します。

5

種類を選択したら、その横にある「メタクラスの追加」ボタンを押します。種類として選択した内容に応じて、一覧内に要素が表示されますので希望する種類を指定します。

種類として「メタクラスの拡張」を選択した場合には、モデル内のメタクラス要素を選択するダイアログが表示されますので、拡張したい要素を指定してください。

指定すると、「拡張」の欄に項目が表示されます。

6

必要に応じて、さらに拡張する項目を追加することができます。再度「メタクラスの追加」ボタンを押して、別の項目を指定してください。

追加した項目を削除したい場合には、「拡張」の一覧内の項目を選択して「削除」ボタンを押してください。

7

「ステレオタイプに指定可能な属性」の一覧には、設定可能な属性が含まれています。必要に応じて、属性の値を変更します。

変更する必要のない属性については、そのままにしてください。

8

「拡張」の欄に表示されている、ステップ5で選択したメタクラス要素を選択すると、「ステレオタイプに指定可能な属性」の一覧に設定可能な属性が表示されます。必要に応じて値を変更してください。

変更する必要のない属性については、そのままにしてください。

複数のメタクラスを拡張する場合、そのメタクラス要素のそれぞれについて値を指定することができます。

9

次へのボタンを押すと、「タグ付き値の定義」ダイアログが表示されます。

10

一覧で右クリックすると、メニューが表示されます。このメニューから、作成対象の独自要素が持つ、固有の属性をタグ付き値として追加します。

 

  • タグ付き値の追加: タグ付き値を追加します。タグ付き値の名前を入力するためのダイアログが表示されますので、名前を指定して下さい。OKボタンを押すと、一覧に追加されます。一覧に追加された後、必要に応じて既定の値を指定して下さい。
  • 特化したタグ付き値の追加
  • 列挙: 既存の列挙要素を指定して、値を選択式で指定する形式のタグ付き値を追加します。
  • 定義済み: プロジェクトに「タグ付き値の型」として定義されている内容を選択して追加します。 必要に応じて初期値を指定できます。
  • 構造化: 他の要素で指定されている複数のタグ付き値を取り込んで、ひとまとまりのタグ付き値として(構造化されたタグ付き値として)追加します。
  • 参照: 他の要素を参照するようなタグ付き値(RefGUID型のタグ付き値)を定義します。どの種類の(どのステレオタイプの)要素を選択できるようにするかを指定するために、プロジェクト内から対象の要素を指定します。指定した要素が持つステレオタイプが、設定に利用されます。
  • 参照リスト: 上記の参照と同じですが、複数の要素が指定できるRefGUIDList型のタグ付き値を追加します。

 

  • タグ付き値の名前の編集: 作成済みのタグ付き値の名前を変更します。
  • タググループの作成: 複数のタグ付き値をまとめることのできるタググループを作成します。
  • タグをグループに移動: 指定したタグを、既存のタググループ内に移動します。
  • グループの削除: 作成済みのタググループを削除します。削除されるグループ内のタグ付き値は、グループに属さない通常のタグ付き値として残ります。
  • 削除: 作成したタグ付き値を削除します。

11

次へ のボタンを押すと、「描画スクリプトの定義」ダイアログが表示されます。

もし描画スクリプトを定義したい場合には、編集ボタンを押して下さい。

描画スクリプトエディタが起動し、内容を定義できます。

エディタで描画内容を定義してOKボタンを押すと、定義した内容が「プレビュー」の枠の中に表示されます。この表示内容は、該当のステレオタイプ要素をダイアグラム内に配置した場合に適用されるものになります。

また、この内容を有効にするためには、最終的な定義内容をUMLプロファイルとして保存する際に、「置換イメージ」のチェックボックスにチェックを入れる必要があります。

なお、単純に色や大きさを変更したい場合には、この定義の完了後、ステレオタイプ要素に対して色や大きさを変更することで、定義できます。

12

完了ボタンを押して下さい。

定義した内容に従って、メタクラス要素やステレオタイプ要素がダイアグラム内に配置されます。

13

必要に応じて、以下のような作業を行って下さい。

 

注意:

  • 数多くのステレオタイプ要素を定義する場合には、1つのダイアグラム内に全ての要素を配置すると定義が分かりにくくなる場合があります。この場合には、<<profile>>のパッケージ内に別のダイアグラムを追加し、分散して定義することができます。このように分散して定義する場合には、モデルブラウザ内のパッケージを右クリックして表示されるメニューからUMLプロファイルの生成を実行して下さい。
  • 同じUMLプロファイル内で、ステレオタイプ要素の名前は重複することはできません。メタクラス要素は複数作成することもできます。メタクラス要素の属性が異なる場合には、複数のメタクラス要素を作成し、それぞれの属性を変更して下さい。
  • 複数のタググループを定義している場合で、既定の状態でタググループを閉じて表示することもできます。このような場合には、メタクラス要素に対して属性ダイアログを表示し、属性_tagGroupStatesを追加して下さい。この属性の初期値として、<groupname>=closed;<groupname>=closed;<groupname>=open;. のように初期状態を指定して下さい。

 

 

参照: