次の方法で共有


UML クラス図の関連のプロパティ

Visual Studio Ultimate の UML クラス図には、型のペア間の関連を描画できます。 型は、クラス、インターフェイス、または列挙です。

関連とは、開発しているシステムが、関連付けられる型のインスタンス間にある種のリンクを格納することを示します。 通常は、リンクの実装に関して何も暗示されません。 たとえば、ポインター、テーブルの行、XML で相互参照される名前などが該当します。

関連は、1 つの属性または属性のペアを図式で示したものです。 たとえば、Menu 型の属性を持つ Restaurant クラスを定義している場合は、Restaurant と Menu の間に関連を描画することで、同じ定義を表すことができます。

関連を描画するには、ツールボックスの [関連] をクリックし、1 番目の型と 2 番目の型を順にクリックします。 このインスタンスを同じ型の別のインスタンスとリンクできることを意味するには、同じ型を 2 回クリックします。

プロパティ

UML クラス図における関連のプロパティを以下に示します。

関連のプロパティを表示するには、関連を右クリックし、[プロパティ] をクリックします。 プロパティがプロパティ ウィンドウに表示されます。

次の図に示すように、一部のプロパティは図にも表示されます。

関連のプロパティ

プロパティ

Description

名前 (1)

関連を識別します。 図において関連の中間点付近にも表示されます。

Qualified Name

関連を一意に識別します。 関連の 1 番目のロールを含むパッケージの修飾名がプレフィックスとして付けられます。

作業項目

この関連にリンクされている作業項目の数。 作業項目をリンクする方法については、「モデル要素と作業項目とのリンク」を参照してください。

コネクタの色。 他のプロパティとは異なり、これは、関連のこのビューのプロパティです。モデルの基になる関係のプロパティではありません。

1 番目のロール

2 番目のロール

関連の各端部はロールと呼ばれます。 それぞれのロールは、関連の反対側の端部のクラスにおける同等の属性のプロパティを記述します。

この例において、Menu と Menu Item の間の関連は、Menu と Contents というロールを持ちます。

Contents は、Menu クラスの属性の名前です。

各ロールのプロパティ

各ロールのプロパティを表示するには、"1 番目のロール" プロパティまたは "2 番目のロール" プロパティを展開します。

プロパティ

既定値

Description

Role Name (2)

このロールの型の名前

ロールの名前 図において関連の端部付近に表示されます。

Aggregation

なし

None (4): クラスのインスタンス間の一般的な関係を表します。

Composite (5): このロール側のオブジェクトは、対応するロール側のオブジェクトを含んでいます。 合成ツールを使用すると、合成集約との関連を生成できます。

Shared (6): このロール側のオブジェクトは、対応するロール側のオブジェクトへの参照を含んでいます。 集約ツールを使用すると、共有集約との関連を生成できます。

厳密な解釈には、ローカルな規則を適用できます。

Is Derived

False

true の場合、リンクのこの端部側のオブジェクトは、他の属性および関連から計算されます。 たとえば、MyWorkPlace は、MyEmployer.WorkPlace から計算されます。 詳細は、Description またはアタッチされたコメントに入力する必要があります。

Is Derived Union

False

true の場合、ロールは、派生型のロールのセットの共用体です。

Is Navigable

True

関連は、この方向に読むことができます。 作成しているソフトウェアは、対応するロールのインスタンスを受け取り、このロールの関連付けられているインスタンスを効率的に判断できます。

一方のロールが誘導可能でもう一方のロールが誘導不可能な場合、関連において誘導可能な方向を示す矢印 (7) が表示されます。

既定で関連ツールによって生成される関連は、一方向に誘導可能です。 これを双方向の関連に変換するには、関連を選択します。次に、表示されるアクション タグをクリックし、[双方向に変換] をクリックします。

Is Read Only

False

true の場合、関連のインスタンスを生成した後は変更できません。 リンク先は常に同じオブジェクトです。

Multiplicity (3)

1

1: 関連のこの端部は、常に 1 つのオブジェクトにリンクします。 図において、各 Menu Item は 1 つの Menu を持ちます。

0..1: 関連のこの端部は、1 つのオブジェクトにリンクするか、またはリンクが存在しません。

*: 関連の対応する側にあるすべてのオブジェクトは、こちら側にあるオブジェクトのコレクションにリンクされます。コレクションは、空であってもかまいません。

1..*: 関連の対応する側にあるすべてのオブジェクトは、こちら側にある 1 つ以上のオブジェクトにリンクされます。 図において、各 Menu は 1 つ以上の Menu Item を持ちます。

n..m: 対応する側の各オブジェクトは、こちら側の端部のオブジェクトに対して n ~ m 個のリンクを持ちます。

Is Ordered

False

true の場合、返されるコレクションによって順次リストが構成されます (Multiplicity が 1 を超える場合)。

Is Unique

False

true の場合、返されたコレクション内に重複する値は存在しません。 (Multiplicity が 1 を超える場合)。

Visibility

Public

Public: グローバルに参照できます。

Private: 所有する型の外からは参照できません。

Protected: 所有する型から派生した型から参照できます。

Package: 同じパッケージ内の他の型から参照できます。

参照

概念

UML クラス図: リファレンス

UML クラス図の型のプロパティ

UML クラス図の属性のプロパティ

UML クラス図の操作のプロパティ

UML クラス図: ガイドライン