UML (ユーエムエル)【 Unified Modeling Language 】
オブジェクト指向のソフトウェア開発における、プログラム設計図の統一表記法。
オブジェクト指向は、「オブジェクト」という単位ですべてをとらえる考え方です。
システム化対象となるビジネスを、
・オブジェクト間のコミュニケーションとして考える、
・システムをオブジェクトの集合ととらえる、
・オブジェクトの振る舞いをプログラムで記述する、
というように、
ソフトウェアに要求される機能を、オブジェクトとして考えていく
のがオブジェクト指向です。
●UMLモデル
オブジェクト群がどのような構造を持っているのか、
オブジェクトの間でどのようなメッセージが交わされるのか、
といった言葉だけでは伝えづらいの情報を、図(ダイアグラム)を使って表します。
そうした図のことをモデルといいます。
UMLは、表記法を統一し、標準化することで、
技術者間でより正確にオブジェクトに関する情報や考えを交換することができます。
UMLで表記法が定義されている図は、
システムの構造をモデル化するための構造図 と
システムの動作をモデル化するための振る舞い図
に分けることができます。
構造図
|
|----クラス図
|(システムを構成する各要素を、属性と操作を持ったクラスとして分離し、それらの関係を記述する)
|
|----複合構造図
|(構成要素間の結びつきや役割、外部との境界を定義)
|
|----コンポーネント図
|(物理的な構成要素 (ファイル、ヘッダ、ライブラリ、モジュール、実行可能ファイルやパッケージなど) からシステムの構造を表現)
|
|----オブジェクト図
|(クラスを実体化して生成されたオブジェクト同士の関係を表現する)
|
|----パッケージ図
|(パッケージ同士の依存関係を描画することで論理的なグルーピングをする)
|
|---配置図
(システムの要素がサーバなどの物理的な実体に対してどのように配置されるのかを記述する)
振る舞い図
|
|----状態遷移図(ステートチャート図)
|(ひとつのオブジェクトが内部に持つ状態が変化するようすを記述)
|
|---アクティビティ図
| (システムなどのフローを記述する表記法)
|
|---ユースケース図
| (システムに要求される機能を、ユーザの視点から示したもの)
|
|----相互作用図
|(オブジェクト間の相互作用をメッセージのやり取りとして記述する)
|
|----シーケンス図
|(オブジェクト間の相互作用を時系列に特に着目したモデルを表記)
|----コラボレーション図
|(オブジェクト間の相互作用をメッセージのやり取りとして記述する)