统一建模语言UML(5)活动图

与其他图的区别

活动图与传统的流程图十分相似,活动图与流程图的最主要的区别在于,活动图能够支持活动的并行行为

交互图和活动图都是用来对系统动态方面进行建模区别

交互图的节点是对象,描述了对象之间通过消息进行协作,强调的是从对象到对象的控制流;

活动图的节点是活动,强调了系统中多个活动形成的控制流。
强调的是从步骤到步骤的控制流。

活动图是一种特殊的状态机图,描述的是响应内部处理的对象类的行为,状态机图描述的是对象类响应事件的外部行为。

活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。活动图能够表示并发活动的情形,活动图是面向对象的。

活动图概述

活动(activity):是做某件事情的状态。可以认为是工作步骤或对象类的行为。

活动图:是描述系统或业务的一系列活动构成的控制流,它描述了系统从一种活动转换到另一种活动的整个过程。

活动图的作用:常用来描述业务或软件系统的活动轨迹,描述了系统的活动控制流程。

我们常用活动图对业务过程、工作流和用例实现进行建模。

活动图的组成元素

包括初始节点、终点、活动节点、转换、分支、分岔与汇合其中,转换、分支、分岔与汇合把多个活动节点连接在一起。
在这里插入图片描述

如:有一个表示某公司销售过程的一张活动图
在这里插入图片描述

活动图的表示

初始节点和终点

初始节点表示活动的起点,用一个实心圆表示初始节点;

终点表示活动的终结点,用一个圆圈内加一个实心圆来表示活动终点。在活动图中,可能包含多个活动终点。

在这里插入图片描述

活动节点

活动节点是活动图中最主要的元素之一,

它用来表示一个活动,一个活动表示多个动作的集合。

活动节点用一个圆角矩形表示,活动的名称写在圆角矩形内部。
它与状态图的圆角矩形相比,它看上去更接近椭圆。

在这里插入图片描述
可以用文字、表达式、消息描述活动节点
在这里插入图片描述
其与其他图的区别
在这里插入图片描述

转换

当一个活动结束时,活动控制流就会马上传递给下一个活动节点,在活动图中称之为“转换”,用一条带箭头的直线来表示转换。

在这里插入图片描述

分支、监护条件和合并

活动控制流:顺序结构、分支结构、循环结构

分支

分支是用菱形表示的,它有一个进入转换(箭头从外指向分支符号),一个或多个离开转换(箭头从分支符号指向外)。

而每个离开转换上都会有一个监护条件,用来表示满足某种条件时才执行该转换。

在这里插入图片描述

合并

合并也用菱形表示的,它有2个或多个进入转换(箭头从外指向分支符号),
一个离开转换(箭头从分支符号指向外)。
对于合并来说无需监护条件,

在这里插入图片描述

分岔与汇合(并发行为)

如果活动的转换是有条件的,我们就用分支与监护条件来表示转换,

如果一些活动是并发执行的(在同一个时期内并行进行),我们就用分岔和汇合来表示并发活动。
分岔线和汇合线都使用加粗的水平线或垂直线段表示。

(1)分岔:每个分叉可以有一个输入转换和两个或多个输出转换,每个转换都可以是独立的控制流。
(2)汇合:当两个或多个并发控制流都达到汇合点后,活动流程才能进入下一个活动节点。

分岔用来表示两个或者多个并发活动的分支;

汇合则用于同步这些并发活动的分支,当且仅当所有的并发分支(活动)都到达汇合点后,活动流程才能进入下一个活动节点。

分叉和汇合

分叉:用于将一个控制流分为两个或多个并发运行的分支。

汇合:用于将两个或多个控制流合并到一起形成一个单向的控制流,符号与分叉相同。

如果一个控制流在其他控制流到达之前到达了连接,它将会等待,知道所有控制流都到达了才会向连接传递控制权。

在这里插入图片描述

举例说明:销售合同签订后,要进行核对。如果发现错误,则终止履约;如果没有错误,则要核对货物清单确定是否有货,还要核对付款单确定对方是否已经付款,只有这两项都完成,才可以发货。如果无货或对方尚未付款,则终止履约。则活动图如下:
在这里插入图片描述

泳道

泳道表明每个活动是由哪些人或哪些部门负责完成。
在活动图中泳道区分了负责活动的对象,它明确地表示了哪些活动是由哪些对象进行的。
在包含泳道的活动图中每个活动只能明确地属于一个泳道。
在这里插入图片描述

举例如下:

  1. 没有添加泳道时
    在这里插入图片描述

  2. 添加泳道之后:
    在这里插入图片描述

对象流

用活动图描述某个对象时,可以将涉及到的对象放到活动图中,并用一个依赖将其连接到活动或状态上,对象的这种使用方法就构成对象流。
在这里插入图片描述

上面的购物过程的活动图加入对象流之后:
在这里插入图片描述

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

?abc!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值