メインコンテンツへスキップ

UML(Unified Modeling Language)

·
目次

UMLとは
#

システムやソフトウェアの「設計図」を描くための記法

UMLには様々な種類があるが、大別すると「構造図」と「振る舞い図」に分けられる

  • 構造図:システムの静的な構造、つまり、どのような要素で構成されているかを表す図
    • (例: クラス図、コンポーネント図)
  • 振る舞い図:システムの動的な振る舞い、つまり、時間と共にどのように動作し、変化するかを表す図
    • (例: シーケンス図、ユースケース図、アクティビティ図)

UMLダイアグラムの解説
#

コミュニケーション図
#

オブジェクト群がどのようにコラボレーションを行うか記述できる図

  • シーケンス図と同様にオブジェクト間の相互作用を表現できるが、時間軸がない。
  • オブジェクト間の**連携関係(コネクション)**に焦点を当てている。

クラス図
#

クラスの仕様と,クラスの間の静的な関係(汎化,集約,関連など)が記述できる図

  • クラスが持つ属性(データ)と操作(メソッド)、およびクラス間の関係性を表現

シーケンス図
#

オブジェクト間で送受信するメッセージによる相互作用が表せる図

  • オブジェクト間のメッセージのやり取りを、時間軸に沿って表現するのが最大の特徴

オブジェクト図
#

ある時点でのオブジェクト(インスタンス)の状態や関係性を記述できる図

  • クラス図を具体化したもの
  • 特定の時点における、オブジェクト(クラスのインスタンス)の状態や関係性を表すスナップショットのようなイメージ

ユースケース図
#

システムの振る舞いを表現する図で、システムに要求される機能を、ユーザーの視点から示した図

ステートマシン図
#

一つのオブジェクトの状態が、イベントの発生などによってどのように変化(遷移)するかを記述できる図

  • 例えば、「注文」オブジェクトが「受付済」→「発送準備中」→「発送済」と変化していく様子を表現できる

コンポーネント図
#

システムのコンポーネント間の物理的な関係が記述できる図

  • 物理的な要素(コンポーネント)と、それらの依存関係を表現する
    • コンポーネントとは、ライブラリファイル(DLLなど)や実行ファイル(EXEなど)といった、物理的な部品を指す。

アクティビティ図
#

多くの並行処理を含むシステムの,業務や処理の「流れ(フロー)」を表現する図

  • 業務や処理の流れ(フロー)、特に分岐と並行処理を表現する

参考リンク
#