Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

よく聞くUMLって何?

More than 3 years have 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は適用範囲が広いため、実際の開発で使いこなすためには、単に「図」の描き方を覚えるだけでなく、その目的や用途をしっかりと押さえておくことが大切かなと思いました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away