UML——活动图

目录

什么是活动图

活动图与流程图的区别

活动图的组成元素

活动图实例

机房收费系统活动图


什么是活动图

在UML中,活动图本质上就是流程图,它描述系统的活动(事物或对象的活动变化流程)、判定点和分支等。活动图是UML中描述系统动态行为的图之一,它用于展现参与行为的类的活动或动作。

UML中,活动图里的活动用圆角矩形表示,相比于状态图,这个圆角矩形更接近于椭圆。一个活动结束自动引发下一个活动,则两个活动之间用带箭头的连线相连接,连线的箭头指向一个活动。活动的起点用实心圆表示,终点用半实心圆表示。

活动图与流程图的区别

▷流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系;而活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。

▷活动图能够表示并发活动的情形,而流程图不能。

▷活动图是面向对象的,而流程图是面向过程的。

活动图的组成元素

动作状态:是活动图最小单位的构造块,表示原子动作。动作状态表示状态的入口动作,即在状态被激活的时候执行的动作。动作状态使用带圆端的方框表示。

活动状态:对象的活动状态可以被理解成为一个组合,它的控制流由其他活动状态或动作状态组成。用于表达状态机中的一个非原子的运行,活动状态可以分解成其他子活动或者动作状态。使用平滑的圆角矩形表示。

动作流:表示所有状态之间的转换流,用带箭头的直线表示。

分支与合并:分支一般用与表示对象类所具有的条件行为,条件行为用分支和合并表达,使用空心小菱形表示。分支是状态机的一个建模元素,它表示一个触发事件在不同的触发条件下引起多个不同的转移。合并包括两个带条件的入转换和一个出转换,合并表示从对应的分支开始的条件行为的结束。

UML——活动图_第1张图片

分叉和汇合:一个分叉表示把一个控制流分解成两个或多个的并发运行控制流,也就是说分叉可以由一个输入转换和两个或多个输出转换,每个转换都是独立的控制流。

汇合代表两个或多个并发控制流同步发生。当所有的控制流都达到汇合点后,控制才继续向下进行,一个汇合可以有两个或多个转换和一个输入输出转换。

在UML图中,分叉和汇合都是使用同步条表示。同步条是一条粗的水平线。

UML——活动图_第2张图片

泳道:泳道将活动图的活动状态分组,每一组表示负责那些活动的业务组织。在活动图里泳道区分了活动的不同职责,在泳道活动图中,每个活动都只能明确的属于一个泳道,从语义上,泳道可以被理解为一个模型包。

在UML中,泳道是活动图中的一些垂直展现,把它的邻居隔开,泳道之间可以有转换。活动图中的每个泳道必须有唯一的名字以区别于其他泳道。

UML——活动图_第3张图片

对象流:用活动图描述某个对象时,可以把所涉及的对象放置在活动图上,并用一个依赖将这些对象连接到他们进行创建、撤销和修改的活动转换上。这种依赖关系和对象的应用被称为对象流。对象流是动作和对象间的关联。

对象流可用于对动作状态对对象的使用以及动作状态对对象的影响进行建模。

UML中,使用矩形表示对象,矩形内是该对象的名称,名称下面的方括号中命名此对象的状态,还可以在对象名的下面加一个分隔栏表示对象的属性值。对象和动作之间使用带箭头的虚线连接表示对象流。

UML——活动图_第4张图片

活动图实例

机房收费系统活动图

以机房收费系统中一般用户为例,画出如下图所示的活动图:

UML——活动图_第5张图片

 

你可能感兴趣的:(UML)