OOAD-UML動作図
UMLの動作図は、システムの動的な側面を視覚化、指定、構築、および文書化します。動作図は、ユースケース図、相互作用図、状態図、アクティビティ図に分類されます。
ユースケースモデル
使用事例
ユースケースは、システムが実行して目に見える結果をもたらす一連のアクションを説明します。これは、システム外のものとシステム自体との相互作用を示しています。ユースケースは、システム全体だけでなく、システムの一部にも適用できます。
俳優
アクターは、ユースケースのユーザーが果たす役割を表します。アクターは、人(学生、顧客など)、デバイス(ワークステーションなど)、または別のシステム(銀行、機関など)の場合があります。
次の図は、Studentという名前のアクターの表記と、Generate PerformanceReportというユースケースを示しています。
ユースケース図
ユースケース図は、システム内の要素がどのように動作し、コンテキストでどのように使用できるかについての外観を示しています。
ユースケース図は、次のもので構成されます。
- ユースケース
- Actors
- 依存関係、一般化、関連付けなどの関係
ユースケース図が使用されます-
システムのすべてのアクティビティを長方形で囲み、システムと対話してシステム外のアクターに焦点を当てることにより、システムのコンテキストをモデル化すること。
外部の観点からシステムの要件をモデル化すること。
Example
自動トレーディングハウスシステムについて考えてみましょう。システムの次の機能を想定しています-
商社は、個人顧客と法人顧客の2種類の顧客と取引を行っています。
顧客が注文すると、営業部門によって処理され、顧客に請求書が渡されます。
このシステムにより、マネージャーは顧客アカウントを管理し、顧客から投稿された質問に答えることができます。
相互作用図
相互作用図は、オブジェクトの相互作用とそれらの関係を示しています。また、それらの間で受け渡されるメッセージも含まれます。相互作用図には2つのタイプがあります-
- シーケンス図
- コラボレーション図
相互作用図はモデリングに使用されます-
シーケンス図を使用した時間順序による制御フロー。
コラボレーション図を使用した組織の制御フロー。
シーケンス図
シーケンス図は、時間に応じたメッセージの順序を示す相互作用図です。
Notations−これらの図は2次元チャートの形式です。相互作用を開始するオブジェクトは、x軸に配置されます。これらのオブジェクトが送受信するメッセージは、時間の昇順でy軸に沿って上から下に配置されます。
Example −自動トレーディングハウスシステムのシーケンス図を次の図に示します。
コラボレーション図
コラボレーション図は、メッセージを送受信するオブジェクトの構造を示す相互作用図です。
Notations−これらの図では、相互作用に関与するオブジェクトが頂点を使用して示されています。オブジェクトを接続するリンクは、メッセージの送受信に使用されます。メッセージはラベル付きの矢印として表示されます。
Example −自動トレーディングハウスシステムのコラボレーション図を下図に示します。
状態図図
ステートチャート図は、ある状態から別の状態へのオブジェクトの制御フローを表すステートマシンを示しています。ステートマシンは、イベントが原因でオブジェクトが受ける状態のシーケンスと、イベントへの応答を表します。
状態遷移図は次のもので構成されます-
- 状態:シンプルまたはコンポジット
- 状態間の遷移
- 遷移を引き起こすイベント
- イベントによるアクション
ステートチャート図は、本質的に反応性のあるオブジェクトをモデル化するために使用されます。
Example
Automated Trading House Systemで、Orderをオブジェクトとしてモデル化し、そのシーケンスをトレースしましょう。次の図は、対応する状態チャート図を示しています。
アクティビティ図
アクティビティ図は、ステートマシンで進行中の非アトミック操作であるアクティビティのフローを示しています。アクティビティは、アトミック操作であるアクションになります。
アクティビティ図は次のもので構成されます-
- 活動状態と行動状態
- Transitions
- Objects
アクティビティ図はモデリングに使用されます-
- システムと相互作用する、アクターによって表示されるワークフロー。
- フローチャートを使用した操作または計算の詳細。
Example
次の図は、自動トレーディングハウスシステムの一部のアクティビティ図を示しています。