Uml-basic-notations

提供:Dev Guides
移動先:案内検索

UML-基本的な表記

UMLは、その図式表記で人気があります。 UMLは、ソフトウェアおよび非ソフトウェアシステムのコンポーネントを視覚化、指定、構築、および文書化するためのものであることは誰もが知っています。 したがって、視覚化は理解して記憶する必要がある最も重要な部分です。

UML表記は、モデリングの最も重要な要素です。 完全で意味のあるモデルを作成するには、表記法の効率的で適切な使用が非常に重要です。 その目的が適切に描写されていない限り、モデルは役に立たない。

したがって、学習記法は最初から強調する必要があります。 物事と関係にはさまざまな表記法が用意されています。 UMLダイアグラムは、物と関係の表記法を使用して作成されます。 拡張性は、UMLをより強力かつ柔軟にするもう1つの重要な機能です。

この章では、基本的なUML表記について詳しく説明します。 これは、第2章で説明したUMLビルディングブロックセクションの単なる拡張です。

構造的なもの

構造的なもので使用されるグラフィカル表記は、UMLで最も広く使用されています。 これらは、UMLモデルの名詞と見なされます。 以下は構造的なもののリストです。

  • クラス
  • 対象
  • インタフェース
  • コラボレーション
  • 使用事例
  • アクティブなクラス
  • コンポーネント
  • ノード

クラス表記

UML _class_は次の図で表されます。 図は4つの部分に分かれています。

  • 上部のセクションは、クラスに名前を付けるために使用されます。
  • 2番目は、クラスの属性を表示するために使用されます。
  • 3番目のセクションは、クラスによって実行される操作を説明するために使用されます。
  • 4番目のセクションは、追加コンポーネントを表示するためのオプションです。

クラス表記

クラスはオブジェクトを表すために使用されます。 オブジェクトは、プロパティと責任を持つものであれば何でもかまいません。

オブジェクト表記

_object_は、クラスと同じ方法で表されます。 唯一の違いは、次の図に示すように下線が引かれた_name_です。

オブジェクト表記

オブジェクトはクラスの実際の実装であり、クラスのインスタンスとして知られています。 そのため、クラスと同じ使用法があります。

インターフェイス表記

インターフェイスは、次の図に示すように円で表されます。 それは一般的に円の下に書かれている名前を持っています。

インターフェース表記

インターフェイスは、実装なしで機能を記述するために使用されます。 インターフェイスは、実装ではなく、さまざまな機能を定義するテンプレートのようなものです。 クラスがインターフェイスを実装するとき、要件に従って機能も実装します。

コラボレーション表記

コラボレーションは、次の図に示すように点線の日食で表されます。 それは日食の中に書かれた名前を持っています。

コラボレーション表記

コラボレーションは責任を表します。 通常、責任はグループ内にあります。

ユースケース表記

ユースケースは、名前が内部にある日食として表されます。 追加の責任が含まれる場合があります。

ユースケース表記法

ユースケースは、システムの高レベルの機能をキャプチャするために使用されます。

俳優記法

アクターは、システムと対話する内部または外部のエンティティとして定義できます。

俳優表記法

アクターは、内部または外部のエンティティを記述するために、ユースケース図で使用されます。

初期状態表記

初期状態は、プロセスの開始を示すために定義されます。 この表記は、ほとんどすべての図で使用されています。

初期状態表記

初期状態表記の使用法は、プロセスの開始点を示すことです。

最終状態表記

最終状態は、プロセスの終了を示すために使用されます。 この表記法は、ほぼすべての図で終了を説明するためにも使用されます。

最終状態の表記法

最終状態表記の使用法は、プロセスの終了点を示すことです。

アクティブなクラス表記

アクティブなクラスは、実線のクラスのように見えます。 アクティブクラスは通常、システムの同時動作を記述するために使用されます。

アクティブクラス表記法

アクティブクラスは、システムの同時実行性を表すために使用されます。

コンポーネント表記

次の図に、UMLのコンポーネントの名前を示します。 必要に応じて、追加の要素を追加できます。

コンポーネント表記

コンポーネントは、UMLダイアグラムが作成されるシステムの任意の部分を表すために使用されます。

ノード表記

UMLのノードは、次の図に示すように、名前の付いた四角形のボックスで表されます。 ノードは、システムの物理コンポーネントを表します。

ノード表記

ノードは、サーバー、ネットワークなどのシステムの物理的な部分を表すために使用されます。

行動的なもの

ダイナミックパーツは、UMLで最も重要な要素の1つです。 UMLには、ソフトウェアシステムと非ソフトウェアシステムの動的部分を表す強力な機能セットがあります。 これらの機能には、_interactions_および_state machines_が含まれます。

相互作用には2つのタイプがあります-

  • シーケンシャル(シーケンス図で表される)
  • Collaborative(コラボレーション図で表されます)

インタラクション表記

相互作用は、基本的に2つのUMLコンポーネント間のメッセージ交換です。 次の図は、相互作用で使用されるさまざまな表記法を表しています。

相互作用表記法

相互作用は、システムのコンポーネント間の通信を表すために使用されます。

ステートマシン表記

ステートマシンは、ライフサイクルにおけるコンポーネントのさまざまな状態を記述します。 表記については、次の図で説明します。

ステートマシン表記法

状態マシンは、システムコンポーネントのさまざまな状態を記述するために使用されます。 状態は、状況に応じて、アクティブ、アイドル、またはその他の状態になります。

グループ化

UMLモデルの編成は、設計の最も重要な側面の1つです。 UMLでは、グループ化に使用できる要素は1つだけであり、それはパッケージです。

パッケージ表記

パッケージ表記は次の図に示されており、システムのコンポーネントをラップするために使用されます。

パッケージ表記

注釈事項

どの図でも、さまざまな要素とその機能の説明は非常に重要です。 したがって、UMLにはこの要件をサポートするための_notes_表記があります。

ノート表記

この表記法を次の図に示します。 これらの表記は、システムの必要な情報を提供するために使用されます。

注記表記

関係

要素間の関係が適切に記述されていない限り、モデルは完全ではありません。 _Relationship_は、UMLモデルに適切な意味を与えます。 以下は、UMLで使用可能なさまざまなタイプの関係です。

  • 依存
  • 協会
  • 一般化
  • 拡張性

依存関係表記

依存性は、UML要素の重要な側面です。 依存要素と依存関係の方向について説明します。

次の図に示すように、依存関係は点線の矢印で表されます。 矢印の頭は独立した要素を表し、もう一方の端は依存要素を表します。

依存関係表記

依存関係は、システムの2つの要素間の依存関係を表すために使用されます

協会表記

関連付けは、UMLダイアグラム内の要素がどのように関連付けられるかを示します。 簡単な言葉で言えば、インタラクションに参加している要素の数を表します。

関連付けは、両側に矢印のある(なしの)点線で表されます。 次の図に示すように、2つの端は2つの関連する要素を表します。 多重度は、関連するオブジェクトの数を示すために、末尾にも記載されます(1、*など)。

関連付け表記

関連付けは、システムの2つの要素間の関係を表すために使用されます。

汎化表記

汎化は、オブジェクト指向の世界の継承関係を記述します。 親子関係です。

一般化は、次の図に示すように、中空の矢印の付いた矢印で表されます。 一方の端は親要素を表し、もう一方の端は子要素を表します。

一般化表記法

汎化は、システムの2つの要素の親子関係を記述するために使用されます。

拡張性表記

すべての言語(プログラミングまたはモデリング)には、構文、セマンティクスなどの機能を拡張するメカニズムがあります。 UMLには、拡張機能を提供する次のメカニズムもあります。

  • ステレオタイプ(新しい要素を表します)
  • タグ付きの値(新しい属性を表します)
  • 制約(境界を表します)

拡張性表記

拡張性の表記は、言語の力を高めるために使用されます。 基本的に、システムの追加の動作を表すために使用される追加要素です。 これらの追加の動作は、利用可能な標準表記法ではカバーされていません。