UML クラス図: リファレンス
UML クラス図は、内部的におよびユーザーとのやり取りにおいてアプリケーションで使用されるオブジェクトおよび情報構造を記述します。 UML クラス図に記述する情報では、特定の実装を参照しません。 クラスおよび関係は、データベース テーブル、XML ノード、ソフトウェア オブジェクトの合成など、さまざまな方法で実装できます。
注意
このトピックでは、UML クラス図について説明します。このほか、プログラム コードを視覚化するために使用される、.NET クラス図と呼ばれるクラス図もあります。詳細については、「クラスと型のデザインおよび表示」を参照してください。
UML クラス図を、 アーキテクチャ のメニューの作成は、 新しい図を選択します。 UML クラス図の描画方法の詳細については、「UML クラス図: ガイドライン」を参照してください。 モデル図を生成および描画する方法の詳細については、「UML モデルとダイアグラムの編集」を参照してください。
UML クラス図の見方
UML クラス図で使用される要素を表に示します。 これらの要素のプロパティに関する情報については、次のトピックを参照してください。
Shape |
要素 |
Description |
---|---|---|
1 |
Class |
特定の構造上または振る舞い上の特性を共有するオブジェクトの定義。 詳細については、「UML クラス図の型のプロパティ」を参照してください。 |
1 |
分類子 |
クラス、インターフェイス、または列挙の総称。 コンポーネント、ユース ケース、およびアクターも分類子です。 |
2 |
折りたたみ/展開コントロール |
分類子の詳細が表示されていない場合は、分類子の左上にあるエキスパンダーをクリックします。 場合によっては、各セグメントの [+] をクリックする必要もあります。 |
3 |
属性 |
分類子の各インスタンスにアタッチされている、型指定された値。 属性を追加するには、属性セクションをクリックし、Enter キーを押します。 属性のシグネチャを入力します。 詳細については、「UML クラス図の属性のプロパティ」を参照してください。 |
4 |
演算 |
分類子のインスタンスによって実行できるメソッドまたは関数。 操作を追加するには、操作セクションをクリックし、Enter キーを押します。 操作のシグネチャを入力します。 詳細については、「UML クラス図の操作のプロパティ」を参照してください。 |
5 |
関連付け |
2 つの分類子のメンバー間の関係。 詳細については、「UML クラス図の関連のプロパティ」を参照してください。 |
5a |
Aggregation |
共有所有権関係を表す関連。 所有者ロールの Aggregation プロパティは、[共有] に設定されます。 |
5b |
構成 |
パート全体の関係を表す関連。 所有者ロールの Aggregation プロパティは、[合成] に設定されます。 |
6 |
関連名 |
関連の名前。 名前は空白でもかまいません。 |
7 |
ロール名 |
関連の一方の端部が表すロールの名前。 関連付けられているオブジェクトを参照するために使用できます。 前の図において Order O に対して関連付けられている Menu は、O.ChosenMenu です。 各ロールは独自のプロパティを持ち、これらは関連のプロパティの下に表示されます。 |
8 |
Multiplicity |
もう一方の端部の各オブジェクトに対してリンクできるこの端部のオブジェクトの数を示します。 この例では、各 Order を正確に 1 つの Menu にリンクする必要があります。 * は、作成できるリンクの数に制限がないことを示します。 |
9 |
汎化 |
特定の分類子は、一般的な分類子からその定義の一部を継承します。 一般的な分類子は、コネクタの矢じり付きの端部に表示されます。 属性、関連、および操作は、特定の分類子によって継承されます。 2 つの分類子の間に汎化関係を生成するには、継承ツールを使用します。 |
Shape |
要素 |
Description |
---|---|---|
10 |
Interface |
外部から見えるオブジェクトの振る舞いの一部の定義。 詳細については、「UML クラス図の型のプロパティ」を参照してください。 |
11 |
列挙型 |
リテラル値のセットから構成される分類子。 |
12 |
Package |
分類子、関連、アクション、生存線、コンポーネント、およびパッケージのグループ。 論理クラス図は、メンバー分類子およびパッケージがパッケージ内に含まれているようすを示します。 名前のスコープはパッケージ内に限られるため、Package1 内の Class1 は、このパッケージ外の Class1 とは異なります。 パッケージの名前は、その内容の Qualified Name プロパティの一部として表示されます。 任意の UML 図の Linked Package プロパティを設定してパッケージを参照できます。 この図に生成されたすべての要素は、そのパッケージの一部となります。 これらの要素は、UML モデル エクスプローラー内でこのパッケージの下に表示されます。 |
13 |
Import |
あるパッケージが別のパッケージのすべての定義を含むことを示す、パッケージ間の関係。 |
14 |
依存関係 |
矢じり付きの端部側の分類子が変更された場合、これに依存する分類子の定義または実装が変更されることがあります。 |
Shape |
要素 |
Description |
---|---|---|
15 |
実現 |
クラスは、インターフェイスによって定義される操作および属性を実装します。 クラスとインターフェイスの間に実現関係を生成するには、継承ツールを使用します。 |
16 |
実現 |
同じ関係の別の表示形式。 ロリポップ シンボルのラベルによってインターフェイスを識別します。 この形式で表示を行うには、最初に、既存の実現関係を選択します。 操作のタグは、関連の近くに表示されます。 アクション タグをクリックし、[ロリポップとして表示] をクリックします。 |