Edited at

よく聞くUMLって何?

More than 1 year has passed since last update.


この記事をまとめようと思った理由

そもそもUMLについて結構な頻度で言葉として聞くが、実際に私が理解しているとは思えなかったたのでいろいろ調べてみました。


UMLとは


Unified Modeling Languageの略称で

Unified(統一された)

Modeling(モデリング)

Language(言語)

ソフトウェアを形式化するための統一されたモデリング言語のこと


分かりにくいので言い換えると


ソフトウェアの機能や構造を表す「図」の描き方



UMLのダイアグラム

UMLには用途によっていくつかダイアグラムがあります。


1 クラス図 (Class Diagram)

あるクラスがどのクラスとどのような関係があるのか、どのような変数を保持しているのかなどを視覚的に理解することができます。

class.jpg


2 パッケージ図 (Package Diagram)

パッケージには複数のクラスがまとめられていますが、そのパッケージ間の関係を表現することができます。

20110828211820.jpg

参考


3 オブジェクト図 (Object Diagram)

インスタンス間の関係を表現することができます。

uml-object02.jpg

参考


4アクティビティ図(Activity Diagram)

一連の処理における制御の流れを表現できます。フローチャートような感じです。

アクティビティ図0.jpg


5 ユースケース図(Use Case Diagram)

システムが提供する機能と利用者の関係を表現します。

useCaseDiagram.jpg

参考


6 シーケンス図(Sequence Diagram)

オブジェクト間の連携や動作の流れを表現するダイアグラムです。

イベントが起きた時にどのような流れで処理が進むかなどを表現しています。

uml-sequence02.gif

参考


7 コミュニケーション図(Communication Diagram)

インスタンス間の相互作用を構造の中心に表現します。

uml-communication01.gif

参考


まとめ

ここで紹介した7つ以外にも様々なダイアグラムがあります。これからプログラムを学ぶ方にとって

UMLを学ぶことは大きなメリットがあります。

UMLはシステムの構成や動作を俯瞰的に見ることができるようになるので、プログラムだけでなくシステム全体を理解しやすいのです。

また、UMLはシステムの全工程をカバーします。UMLは適用範囲が広いため、実際の開発で使いこなすためには、単に「図」の描き方を覚えるだけでなく、その目的や用途をしっかりと押さえておくことが大切かなと思いました。