3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

UML

Last updated at Posted at 2022-08-29

UML(Unified Modeling Language)とは?

オブジェクト指向プログラミングにおいて、設計で用いられる標準的な記法です。

長所

  • 複数人で設計モデルを共有してコミュニケーションを図ることができる。
  • わかりやすくビジュアル化をすることができる。
  • 過去の設計ノウハウを整理して、これに舐めをつけて再利用可能にした雛形のことをデザインパターンと呼ぶ。

UMLのダイアグラム(図)

システム構造を示す構造図、システムの振る舞いを示す振る舞い図の2つの分類することができる。

構造図の種類

クラス図

クラスの定義や、関連付けなどクラス構造を表す。

線の種類を紹介

集約とコンポジション集約の違い

関連

基本的なつながりを表す。

集約

クラスBは、クラスAの一部である。ただし、両者にライフサイクルの依存関係はない

ライフサイクルとは?

製品やサービスなどが生まれてから消えるまでの全過程のこと。
出典 https://e-words.jp/w/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B5%E3%82%A4%E3%82%AF%E3%83%AB.html

コンポジション

クラスBはクラスAの一部であり、クラスAが削除されるとクラスBも合わせて削除される。

依存

クラスAが変更された時、クラスBも変更が生じる依存関係にある。

汎化

クラスBはクラスAの性質を継承している。クラスAがスーパークラスであり、クラスBはサブクラスの関係にある。

実現

抽象化な定義にとどまるクラスAの振る舞いを、具体的に実装したものがクラスBである。

オブジェクト図

クラスを実体化させるインスタンス(オブジェクト)の具体的な関係を表す。

コンポーネント図

処理を構成する複数のクラスを一つのコンポーネントと見なし、その内部構造と相互の関係を表す。

複合構造図

複数クラスを内包するクラスやコンポーネントの内部構造を表す。

配置図

システムを構成する物理的な構造を表す。

振る舞い図

ユースケース図

利用者や外部システムからの要求に対して、システムがどのような振る舞いをするかを表す。

ユースケースとは?

利用者があるシステムを用いて特定の目的を達するまでの、双方の間のやり取りを明確に定義したもの。利用者は機器を操作する人間以外にも外部の他のシステムなどを想定する場合もある。
出典 https://e-words.jp/w/%E3%83%A6%E3%83%BC%E3%82%B9%E3%82%B1%E3%83%BC%E3%82%B9.html#:~:text=%E3%83%A6%E3%83%BC%E3%82%B9%E3%82%B1%E3%83%BC%E3%82%B9%20%E3%80%90use%20case%E3%80%91,%E6%83%B3%E5%AE%9A%E3%81%99%E3%82%8B%E5%A0%B4%E5%90%88%E3%82%82%E3%81%82%E3%82%8B%E3%80%82

図で使われる要素

アクティビティ図

システム実行時における、一連の処理の流れや状態遷移を表す。フローチャート的なもの。

ライフライン

オブジェクトの生存期間を表す点線

活性区間

オブジェクトがアクティブになりなんらかの処理が実行される期間

状態マシン図

イベントによって起こる、オブジェクトの状態遷移を表す。

シーケンス図

オブジェクト間のやり取りを、時系列に沿って表す。

コミュニケーション図

オブジェクト間の関連とそこで行われるメッセージのやり取りを表す。

相互作用概要図

ユースケース図やシーケンス図などを構成要素として、より大枠の処理の流れを表す。アクティビティ図の変形。

タイミング図

オブジェクトの状態遷移を時系列で表す。

状態遷移

状態遷移の名前を「再生ボタンが押された」に書き換えます。
出典 http://www.changevision.co/tutorial-statemachine-japanese.html#:~:text=%E7%8A%B6%E6%85%8B%E9%81%B7%E7%A7%BB%E3%81%AE%E5%90%8D%E5%89%8D%E3%82%92%E3%80%8C%E5%86%8D%E7%94%9F%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%8C%E6%8A%BC%E3%81%95%E3%82%8C%E3%81%9F%E3%80%8D%E3%81%AB%E6%9B%B8%E3%81%8D%E6%8F%9B%E3%81%88%E3%81%BE%E3%81%99%E3%80%82

気づき

状態遷移は条件によって状態が変わることなのかな。
矢印のことなのか。

テストを解いた時の気づき

エンティティとは?

E-R図で出てくる「箱」のことを「エンティティ」と言います。
出典 https://wa3.i-3-i.info/word11594.html#:~:text=E%2DR%E5%9B%B3%E3%81%A7%E5%87%BA%E3%81%A6%E3%81%8F%E3%82%8B%E3%80%8C%E7%AE%B1%E3%80%8D%E3%81%AE%E3%81%93%E3%81%A8%E3%82%92%E3%80%8C%E3%82%A8%E3%83%B3%E3%83%86%E3%82%A3%E3%83%86%E3%82%A3%E3%80%8D%E3%81%A8%E8%A8%80%E3%81%84%E3%81%BE%E3%81%99%E3%80%82

ビジネスプロセスとは?

一連の工程, 作業, 業務などをいう
出典 https://www.comitx.jp/glossary/businessprocess/#:~:text=%E3%83%93%E3%82%B8%E3%83%8D%E3%82%B9%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%EF%BC%88Business%20Process%EF%BC%89%E3%81%A8,%E3%82%AA%E3%83%9A%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%81%93%E3%81%A8%E3%82%92%E6%8C%87%E3%81%99%E3%80%82

シーケンス図とコミュニケーション図のどちらも表現されているものとは?

送受信されるメッセージがどちらも表現されている。

シーケンス図とは?

クラスやオブジェクト間のやりとりを時間軸に沿って表現する図です。機能ごとに相互作用(Interaction)と呼ばれる下記のようなフレーム内に処理内容を記述します。

ライフライン

使用するオブジェクトやクラスを表現します。どちらか一方なら省略可能です。

実行仕様(ExecutionSpecification)

生成されているライフラインが実行状態であることを意味します。

停止(Stop)

生成されたライフライン自体の消滅を意味します。

同期(Synchronous)メッセージ

送り先のライフラインの実行に同期されるメッセージを意味します。

非同期(Asynchronous)メッセージ

送り先のライフラインの実行に同期されないメッセージを意味します。

応答(Reply)メッセージ

送り先のライフラインから送り手への戻り値を意味します。

ファウンド(Found)メッセージ

図解上にない送り手から送られた、もしくは送り手がダイアグラム上にないことを意味します。

ロスト(Lost)メッセージ

意図された受け手に送られていない、もしくは受け手がダイアグラム上にないことを意味します。
出典 https://www.itsenka.com/contents/development/uml/sequence.html

コミュニケーション図とは?

クラスやオブジェクト間の応答(相互作用)と関連の両方を表現する図

ライフライン(Lifeline)

使用するオブジェクトやクラスを表現します。どちらか一方なら省略可能です。

同期(Synchronous)メッセージ

送り先のライフラインの実行に同期されるメッセージを意味します。

非同期(Asynchronous)メッセージ

送り先のライフラインの実行に同期されないメッセージを意味します。

応答(Reply)メッセージ

送り先のライフラインから送り手への戻り値を意味します。

気づき

UMLはプログラミングをすることにおいて重要だと思う。
基本情報にとどまらずもっと勉強したほうがいいと思う。
これからも頑張る。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?