​UML​​​ ​​活动图​​是一种行为图,使用动作流来显示场景。它为一系列的行动、基于条件的决定、并发的分支和各种循环建模。

14种类型的UML图: 活动图

在 UML 2.2 中有 14 种类型的 UML 图,分为两类:

  • 7种图表类型代表结构信息
  • 另外 7 个代表行为建模的通用 UML 图类型,包括代表交互的不同方面的四个。

这些图表可以按层次分类,如下面的 UML 图表所示:

UML活动图_UML

结构图:​​ 类图​​​,​​对象图​​​, ​​组件图​​​, ​​复合结构图​​​, ​​部署图​​​, ​​包图​​​, ​​配置文件图​

行为图:​​ 用例图​​​、 ​​活动图​​​、 ​​状态机图​​UML 图

交互图: ​​序列图​​​、 ​​通信图​​​、 ​​交互概述图​​​、 ​​时序图​

什么是UML活动图

活动图​是UML图中另一个重要的行为图,用于描述一个系统的动态方面。活动图本质上是流程图的高级版本,它对从一个活动到另一个活动的流程进行建模。

UML活动图_设计规范_02

活动图描述了活动如何被协调以提供服务,这些活动可以处于不同的抽象层次。通常,一个事件需要由一些操作来实现,特别是在操作要实现一些不同的事情需要协调的情况下,或者一个用例中的事件是如何相互关联的,特别是活动可能重叠并需要协调的用例。它也适用于模拟用例的集合如何协调以表示业务工作流程

  • 通过对业务工作流程的检查,确定候选用例
  • 识别用例的前后条件(背景)。
  • 对用例之间/用例内部的工作流进行建模
  • 在对象的操作中模拟复杂的工作流程
  • 在高水平的活动图中对复杂的活动进行详细建模

基本活动图符号和符号

初始状态或起点

一个小实心圆圈后跟一个箭头表示初始动作状态或任何活动图的起点。对于使用泳道的活动图,请确保起点位于第一列的左上角。

UML活动图_用例_03

活动或动作状态

动作状态表示对象的不可中断动作。您可以使用圆角矩形在 SmartDraw 中绘制动作状态。

UML活动图_设计规范_04

动作流程

动作流,也称为边和路径,说明了从一个动作状态到另一个动作状态的转换。它们通常用箭头线绘

制。

UML活动图_活动图_05

对象流

对象流是指通过活动创建和修改对象。从动作到对象的对象流箭头表示动作创建或影响对象。从对象到动作的对象流箭头表示动作状态使用该对象。

UML活动图_用例_06

决策和分支

菱形代表具有替代路径的决策。当一项活动需要在进行下一项活动之前做出决定时,请在两个活动之间添加一个菱形。传出的替代品应标有条件或保护表达式。您还可以将其中一条路径标记为“else”。

UML活动图_用例_07

警卫

在 UML 中,守卫是写在决策菱形旁边的语句,在移动到下一个活动之前必须为真。这些不是必需的,但在继续前进之前需要特定答案(例如“是的,打印三个标签”)时很有用。

UML活动图_活动图_08

同步

分叉节点用于将单个传入流拆分为多个并发流。它在活动图中表示为一条稍粗的直线。

连接节点将多个并发流重新连接成单个传出流。

UML活动图_设计规范_09

一起使用的 fork 和 join 模式通常称为同步。

UML活动图_用例_10

时间事件

这是指使流程停止一段时间的事件;一个沙漏描绘了它。

UML活动图_用例_11

合并事件

合并事件将多个不并发的流汇集在一起。

UML活动图_设计规范_12

发送和接收信号

信号表示如何从系统外部修改活动。它们通常以成对的发送和接收信号出现,因为在收到响应之前状态不会改变,就像​​序列图​​中的同步消息一样。例如,在完成订单之前需要支付授权。

UML活动图_活动图_13

中断边缘

一个事件,例如取消,中断了用闪电表示的流。

UML活动图_设计规范_14

泳道

泳道将相关活动归为一列。

UML活动图_活动图_15

 

Example 2 - Process Order

UML活动图_活动图_16

Example 3 - Create Shipment

UML活动图_UML_17

​ 状态机图与活动图​

​活动图——快速概览​