---
# System prepended metadata

title: Chapter16-12 「UML（United Modeling Language）」
tags: [基本情報技術]

---

# Chapter16-12 「UML（United Modeling Language）」

## 8/15(日)

###### tags:`基本情報技術`

さつき：
> 見たことあるぞ！
* UMLのダイアグラム（図）
    * 構造図とふるまい図の2つに分類することができる。
* クラス図
    > 描いたことあるー
* ユースケース図
    > 描いたことあるー。
    > でもこれで、アクターを結構勘違いしてた。アクターはユーザのこと。
    > 最初のアクションは、ユーザが最初に始めること（メールを受信する、とか）
* アクティビティ図
    > これは描いたことはないな。
* シーケンス図
    > 描いた。難しかった。
    > これをプログラマーに見せて、実装できるレベルまで。
* 過去問
    * 問１：複数の観点でプロセスを表現するために、目的に応じたモデル図法を使用する。
    * 問２：OK
    * 問３：コミュニケーション図...オブジェクト間のやりとりと、そこで行われるメッセージのやりとりを表す。



にわ：
- 読み込み
    * UMLとは：ソフトウェアの機能、構造などを設計に落とし込むための手法。図を使う。
        * 参考：https://qiita.com/taku_maru/items/80d39f2f043489033076
    * UMLのダイアグラム（図）
        * 構造図：クラス図やオブジェクト図、配置図（システム構成の物理的な構造図）など。
        * 振る舞い図：ユースケース図、アクティビティ図など。
    * クラス図：属性と操作を記載したクラス同士を、関係性を表す線で繋ぐ
    * ユースケース図：利用者視点でシステムがどう振る舞うか描く図。（運用フロー図で書いたことある気がしてきた）
    * アクティビティ図：業務や処理のフローをあらわす図。フローチャート。
    * シーケンス図：オブジェクト間のやりとりを時系列に沿ってあらわす図。（外部APIとの連携の図で見たことある。）
- 過去問
    * 問１：イかウだと思った。なるほど〜（日本語読み取りの問題っぽいw）
    * 問２：問題の意味わからんやったw あ、そういうことね・・・
    * 問３：OK
    * 問４：コミュニケーション図：オブジェクト間の関連と、そこで行われるメッセージのやりとりを表す。シーケンス図と類似。



ちさと：
* UML：設計で使う。複数人で設計モデルを共有してコミュニケーションを図る
    * ユースケース図、シーケンス図、クラス図などがある
    * デザインパターンの説明でも使われる
* UMLのダイアグラム
    * 構造図：システム構造を示す
    * 振る舞い図：システムの振る舞いを示す
        * 相互作用図：振る舞い図の中でオブジェクト間の相互作用を表す（シーケンス図、コミュニケーション図）
    * クラス図：属性（データ）と操作（メソッド）を書く
    * ユースケース図：要件定義で使う。誰（アクター）がどんな風に利用できる（ユースケース）システムなのかを示す
    * アクティビティ図：フローチャート。処理の開始から終了までの一連の流れを描いた図
    * シーケンス図：オブジェクト間のやりとりを表す図
* 過去問
    * 問１：DFD（データの流れを図で表したもの）
    * 問２：おk
    * 問３：アクティビティ図
    * 問４：シーケンス図（やりとりを時系列で表す）コミュニケーション図（行われるやりとりを表す）。この二つは似てる。


まい：
* UML (Unified Modeling Language): オブジェクト指向プログラミングにおいて設計で、用いられる標準的な記法。
* デザインパターン: 過去の設計を整理して、再利用可能にした雛形
* UML Diagram has
  - Structural Diagram: Class d, object d, package d, component d, composite structural d, deployment d)
  - Behavior Diagram: use case d, activity d, state machine d, sequence d, communication d, interaction overview d, timing d)

- Class Diagram: クラス定義や関連付けを示す図
- Use case Diagram: 利用者視点でシステムが要求に対してどのように振る舞うかを示す図
- Activity Diagram: 業務や処理のフローを表す図
- Sequence Diagram: オブジェクト間のやり取りを時系列に沿って表す図
- 同期/非同期: 同期はメッセージの応答を待って次の処理に進む

* 練習問題
  - 問1 ok
  - 問2 全然覚えられてなかった
  - 問3 ok
  - 問4 ok でもすぐ忘れそう。。。