アクティビティ図
出典: フリー百科事典『ウィキペディア(Wikipedia)』
アクティビティ図(アクティビティず)とはフローチャートに似た図で、上流行程のビジネスプロセスの流れや下流行程のプログラムの制御フローを表すことができるUMLの図である。フローチャートと違い並列の振る舞いやオブジェクトなども表す事ができる。
目次 |
概要[編集]
システムの流れを表すため、フローチャートのUML版という位置づけで決められた。フローチャートと異なり、共通した表現が可能である。UML 1.0のときに制定されUML2.0で大きく拡張された。
アクティビティ図では、プログラムでの処理以外にも、業務フローなどの記載も可能である。
昨今ではフローチャートからアクティビティ図への移行が進んでいる。
図の作成方法[編集]
初期状態「●」と終了状態「◉」を記載し、その間に矢印で処理を記載し、必要に応じて分岐などを記載する。ステートマシン図などと異なり、主に書くのは処理であることに注意する必要がある。
図の要素[編集]
UML 2.0での主な要素を記載する。
| 図 | 名称 | 説明 | |||||
|---|---|---|---|---|---|---|---|
| ● | 開始状態 | 黒丸でフローの開始点を表す | |||||
| ◉ | アクティビティ終了点 | 蛇の目の記号でアクティビティの終了点を表す | |||||
| ⊗ | フロー終了点 | 丸の中に×でフローの終了点を表す | |||||
| ↓ | 遷移 | 「|」と「∨」で表される矢印で遷移を表す。 | |||||
| アクティビティ | 角の丸い四角で囲まれた文でアクティビティ(処理)を表す(アクションと呼ぶこともある) | ||||||
|
オブジェクトノード | 角の四角い四角で囲まれた文でオブジェクトを表す アクティビティよりオブジェクトに矢印が引かれ、オブジェクトからアクティビティに矢印が引かれる状態でアクティビティからアクティビティにオブジェクトが動くことを表すことができる。 |
|||||
| ╭━━━━╮ ┃処理の略┃ ┃記○→○┃ ╰━━━━╯ |
サブアクティビティ | オブジェクトの角が丸い四角の中に「○→○」を記すことで別のアクティビティ図の表記であることを示す | |||||
| ↓ [条件A] ◇───→ │ │[条件B] ↓ |
分岐 | 菱形に向けた矢印から遷移し、複数の処理への遷移へ分岐する 分岐条件をそれぞれの矢印の脇に角括弧で記載する(フローチャートと異なり菱形の中に文字は記載しない) |
|||||
| ↓ ◇←── │ ↓ |
マージ | 菱形に向けた複数の矢印から遷移し、1つのの処理への遷移へ統合する(フローチャートと異なりアクティビティに複数の遷移が行くようにはしない) | |||||
| ↓ ━━━━━ ↓ ↓ |
フォーク | 太い線で複数の処理が平行で行われる箇所の開始を表す | |||||
| ↓ ↓ ━━━━━ ↓ |
ジョイン | 太い線で複数の処理が平行で行われる箇所の終了を表す この上の処理が全て終了後に次の処理へ遷移が可能になる |
|||||
| □ | ピン | アクティビティの横に接した正方形で遷移対象のオブジェクトを表す | |||||
| ╭┅┅┅┅╮ ┇ ┇ ┇ ┇ ╰┅┅┅┅╯ |
拡張領域 | 角の丸い破線で繰り返す処理などを囲む 左上に処理の種別を二重山パーレンで記載し《iterative》が順次処理、《paralel》が平行処理、《stream》が一括処理 |
|||||
|
|
拡張ノード | 拡張領域のサイドの点線の上に重ねて記載し矢印でフローの出入りを表現する | |||||
| ⧖ | タイマイベント | 「▽」と「△」を上下に繋げた図形でタイマーでの処理によるイベント | |||||
| ── / ──→ |
例外処理 | Z字型の矢印で例外が発生した場合に矢印の先の処理を行う |