オブジェクト・モデルの凡例
Unified Modeling Language (UML) は、
ソフトウェア設計でそれぞれのエレメントを表示するための標準図形言語です。
以下は最も一般的な UML エレメントの例です。
仕様に関する詳細は、
http://www.rational.com および http://www.omg.org を参照してください。
- ボックス
- UML 図はオブジェクトとオブジェクト間の関係から成っています。
ボックスはオブジェクトと線、および関係を表します。
クラス名はボックス内に表します。
イタリックで表される名前は抽象クラスを示します。
これは他のオブジェクトから継承される基本クラスですが、
抽象クラスにはインスタンス (インスタンス化されたオブジェクト) はありません。
クラスの名前はボックス内に表します。
イタリックで表された名前は抽象クラスを表します。
これは他のオブジェクトから継承される基本クラスですが、
抽象クラスにはインスタンス (インスタンス化されたオブジェクト) はありません。
- 線、円
- 線はオブジェクト間の関係を表します。
円シンボル
は、
そのオブジェクトが Enterprise Java Bean であることを示します。
下記の例ではオブジェクトの Bundle と Package の間に関係があることが分かります。

- 破線
- クラスとパッケージの間の矢印のある破線は「従属」を示します。
矢印がなくて一方が関係に接続されている破線は関係の属性を示し、
その関係に関連したクラスがあることを表します。

- 実線、矢印なし
- 線に矢印がない場合は、オブジェクト間の関係の方向が通常は両方向であることを示します。
下記の例では StoreEntity と CatalogEntry の間に関係があり、その関係は両方向です。

-
- 単純矢印
- 単純矢印は 2 オブジェクト間の関係の方向は矢印の方向であることを示します。
下記の例では、
CatalogEntry は CatalogEntryDescriptor と一方向の関係があることを示しています。

- 塗りつぶしひし形矢印
- 塗りつぶしのひし形は値の包含を示します。
ひし形が接しているオブジェクトはコンテナー・オブジェクトであり、
ひし形がないオブジェクトは包含されるオブジェクトです。
たとえば InterestList は InterestItem を包含します。

-
- 白抜きひし形矢印
- 白抜きのひし形は参照の包含を示します。
白抜きひし形が接しているオブジェクトは、
白抜きひし形がないオブジェクトのグループ化オブジェクトです。
たとえば、組織はユーザーのグループです。

- 白抜き三角矢印
- 白抜き三角矢印は単純継承を示します。
たとえば Store は StoreEntity です。

-
- +
- 正符号 (+) はオブジェクトの、別のオブジェクトとの関係での役割を示します。
下記の例での関係は「所有者」という関係です。
StoreEntity には唯一の所有者 (Member) がいます。
Member は 0 以上の StoreEntity を所有することができます。
StoreEntity の所有者を見つける場合、
Member が所有するすべての StoreEntity を Member から調べるのではなく、
通常は StoreEntity からその所有者を調べるということを矢印は示しています。
-
- 注釈での基数値
- 数値は基数の制限を示します。次の表はその要約です。
基数 |
関連タイプ |
1 |
1 のみ |
0..1 |
ゼロまたは 1 |
0..n |
ゼロまたはそれ以上 |
1..n |
1 またはそれ以上 |
基数の制限が示されないとき、関係線の終端に塗りつぶしひし形がなければ、基数は 0..n と見なされます。
この場合の基数は 1 でなければなりません。