一、活动图的组成元素
Activity Diagram Element
1、活动状态图(
Activity)
2、动作状态(
Actions)
3、动作状态约束(
Action Constraints)
4、动作流(
Control Flow)
5、开始节点(Initial Node
)
6、终止节点(Final Node
)
7、对象(Objects
)
8、数据存储对象(DataStore
)
9、对象流(Object Flows
)
10、分支与合并(Decision and Merge Nodes
)
11、分叉与汇合(Fork and Join Nodes
)
12、异常处理(Exception Handler
)
13、活动中断区域(Interruptible Activity Region
)
14、泳道(Partition
)
二、活动图案例分析
三、总结
活动图是
UML
用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流。活动图在本质上是一种流程图。活动图着重表现从一个活动到另一个活动的控制流,是内部处理驱动的流程。
一、活动图的组成元素 Activity Diagram Element
1、活动状态图(Activity
)
活动状态用于表达状态机中的非原子的运行,其特点如下:
(1)
、活动状态可以分解成其他子活动或者动作状态。
(2)
、活动状态的内部活动可以用另一个活动图来表示。
(3)
、和动作状态不同,活动状态可以有入口动作和出口动作,也可以有内部转移。
(4)
、动作状态是活动状态的一个特例,如果某个活动状态只包括一个动作,那么它就是一个动作状态。
UML
中活动状态和动作状态的图标相同,但是活动状态可以在图标中给出入口动作和出口动作等信息。
2、动作状态(Actions
)
动作状态是指原子的,不可中断的动作,并在此动作完成后通过完成转换转向另一个状态。动作状态有如下特点:
(1)
、动作状态是原子的,它是构造活动图的最小单位。
(2)
、动作状态是不可中断的。
(3)
、动作状态是瞬时的行为。
(4)
、动作状态可以有入转换,入转换既可以是动作流,也可以是对象流。动作状态至少有一条出转换,这条转换以内部的完成为起点,与外部事件无关。
(5)
、动作状态与状态图中的状态不同,它不能有入口动作和出口动作,更不能有内部转移。
(6)
、在一张活动图中,动作状态允许多处出现。
UML
中的动作状态图用平滑的圆角矩形表示,如下:
3、动作状态约束(Action Constraints
)
动作状态约束:用来约束动作状态。如下图展示了动作状态的前置条件和后置条件
4、动作流(Control Flow
)
动作之间的转换称之为动作流,活动图的转换用带箭头的直线表示,箭头的方向指向转入的方向。
5
、开始节点(Initial Node)
开始节点:表示成实心黑色圆点
6
、终止节点(Final Node)
分为活动终止节点(
activity final nodes
)和流程终止节点(
flow final nodes
)。
活动终止节点表示整个活动的结束
而流程终止节点表示是子流程的结束。
7
、对象(Objects)
8
、数据存储对象(DataStore)
使用关键字
«datastore
»
9
、对象流(Object Flows)
对象流是动作状态或者活动状态与对象之间的依赖关系,表示动作使用对象或动作对对象的影响。用活动图描述某个对象时,可以把涉及到的对象放置在活动图中并用一个依赖将其连接到进行创建、修改和撤销的动作状态或者活动状态上,对象的这种使用方法就构成了对象流。
对象流中的对象有以下特点:
(1)
、一个对象可以由多个动作操作。
(2)
、一个动作输出的对象可以作为另一个动作输入的对象。
(3)
、在活动图中,同一个对象可以多次出现,它的每一次出现表面该对象正处于对象生存期的不同时间点。
对象流用带有箭头的虚线表示。如果箭头是从动作状态出发指向对象,则表示动作对对象施加了一定的影响。施加的影响包括创建、修改和撤销等。如果箭头从对象指向动作状态,则表示该动作使用对象流所指向的对象。
状态图中的对象用矩形表示,矩形内是该对象的名称,名称下的方括号表明对象此时的状态。
10
、分支与合并(Decision and Merge Nodes)
分支与合并用菱形表示
11
、分叉与汇合(Fork and Join Nodes)
分为水平风向和垂直方向。
对象在运行时可能会存在两个或多个并发运行的控制流,为了对并发的控制流建模,
UML
中引入了分叉与汇合的概念。分叉用于将动作流分为两个或多个并发运行的分支,而汇合则用于同步这些并发分支,以达到共同完成一项事务的目的。
12
、异常处理(Exception Handler)
当受保护的活动发生异常时,触发异常处理节点。
13
、活动中断区域(Interruptible Activity Region)
活动中断区域围绕一些可被中断的动作状态图。比如下图,正常情况下【
Process Order
】顺序流转到【
Close Order
】,订单处理流程完毕;但在【
Process Order
】过称中,会发送【
Cancel Order
】请求,这时会流转到【
Cancel Order
】,从而订单处理流程结束
14
、泳道(Partition)
泳道将活动图中的活动划分为若干组,并把每一组指定给负责这组活动的业务组织,即对象。在活动图中,泳道区分了负责活动的对象,它明确地表示了哪些活动是由哪些对象进行的。在包含泳道的活动图中,每个活动只能明确地属于一个泳道。
泳道是用垂直实线绘出,垂直线分隔的区域就是泳道。在泳道的上方可以给出泳道的名字或对象的名字,该对象负责泳道内的全部活动。泳道没有顺序,不同泳道中的活动既可以顺序进行也可以并发进行,动作流和对象流允许穿越分隔线。
二、活动图案例分析
1、
泳道分为:会员泳道和系统泳道。会员选择商品并加入购物车,系统完成订单生成及其支付完毕。
2、
开始节点:会员添加商品到购物车,点击【订单确认】,开始交于系统处理订单流程
3、
结束节点:商品发送完毕和付款成功,订单处理流程结束
4、
活动状态:产生订单、
Check Credit Cart
核对信用卡、
Check Stock
核对库存量、
Deliver Goods
发送商品、
Process Credit Cart
付款
5、
分叉与汇合:【产生订单】份叉为检查库存量和会员支付金额是否足够,如果不足,取消订单,如过库存量和支付金额足够,发送商品和付款,最后汇合为订单完成。
三、总结
活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。活动图能够表示并发活动的情形,活动图是面向对象的。
转自:http://www.cnblogs.com/vincent_shi/archive/2009/12/16/1625389.html
相关推荐
【UML建模之活动图介绍(Activity Diagram)】 活动图是统一建模语言(UML)中的一个重要组成部分,主要用于描述系统或过程的动态行为。它以一种流程图的形式展现了控制流从一个活动到另一个活动的顺序,尤其适用于...
3. **活动图**(Activity Diagram):活动图展示了系统中某个过程或功能的详细工作流程。对于ATM系统,可以创建一个活动图来表示取款过程,包括输入密码、选择操作、确认金额、出钞等步骤。 4. **类图**(Class ...
活动框图,即Activity Diagram,是UML(统一建模语言)中用于描述系统内部动态行为的图表之一。它主要用于展示系统内部操作的流程,包括计算过程中的顺序和并发步骤。活动图特别适用于工作流、算法以及计算机指令等...
本文档由资深软件架构师Ben Lieberman撰写,旨在介绍如何利用统一建模语言(Unified Modeling Language, UML)中的活动图(Activity Diagram)来描绘系统的流程视图(Process View)。活动图是一种图形化的表示方法,...
活动图(Activity Diagram)用于表示复杂的业务流程或工作流。在汽车租赁系统中,活动图可以描述客户预订车辆的过程,从选择车型到支付押金,再到取车和归还。此外,它还能表示后台处理,如工作人员审核申请、技术...
其中,状态图(State Diagram)和活动图(Activity Diagram)是两种重要的UML图,分别用于描述系统的动态行为和工作流程。 #### 二、状态图解析 **1. 订单状态图** 订单状态图主要描述了订单从创建到完成的整个生命...
2. **活动图 (Activity Diagram)** 活动图描述了系统的动态行为,类似于流程图,用于表示工作流或业务流程。在机票预订系统中,活动图可以展示从选择航班到完成支付的整个预订过程,包括每个步骤、决策点和并发活动...
**二、活动图(Activity Diagram)** 活动图主要用于描述系统或对象的动态行为,尤其适用于流程控制和工作流建模。它采用泳道、动作、决策节点等元素来表达。 1. **动作**: 表示一个原子行为,用圆形表示。 2. **分支...
6. **活动图 (Activity Diagram)**: 活动图是一种流程图,表示了系统的动态行为,特别适合展现工作流程、业务过程等。`活动图.gif`和`活动图带泳道和对象流.gif`可能展示活动的顺序和决策点,而`活动图带泳道和...
**二、活动图(Activity Diagram)** 活动图是一种流程图,它专注于系统的控制流和数据流,尤其适用于表达业务流程或算法步骤。在6活动图.doc中,你将学习到: 1. **活动(Activity)**:表示一个操作或任务。 2. *...
活动图(Activity Diagram)是UML建模语言中的一种图形语言,用来描述系统中的业务流程和活动。活动图由活动、转换和泳道组成,描述了系统中的业务流程和活动。 六、状态图 状态图(State Machine Diagram)是UML...
7. **活动图(Activity Diagram)**:活动图是一种流程图,用来表示系统的业务流程或算法步骤。它可以用来描述工作流、控制流和数据流。 8. **组件图(Component Diagram)**:组件图展示了软件系统中的物理组件,包括...
行为图关注系统的行为和动态过程,包括状态机图(State Machine Diagram)、活动图(Activity Diagram)和序列图(Sequence Diagram)。 - **状态机图**:描述了一个对象在其生命周期中的状态变化,以及事件如何...
活动图(Activity Diagram)是 UML 中的一种动态模型,它描述的是系统的行为,展示了系统中的对象如何在控制流、数据流和对象流方面交互。活动图由活动、转换和对象组成。活动是系统中的一个动作,例如,用户浏览...
最后,**活动图(Activity Diagram)**关注系统的流程或工作流。在新闻发布系统中,活动图可以展现新闻发布的整个过程,从记者开始写作,到编辑审核,再到发布和读者查看。它用泳道来区分不同的角色,并使用决策节点...
2. **活动图 (Activity Diagram)** 活动图是一种流程图,主要描述系统中的业务流程、工作流或算法。它通过图形化的方式展示了活动的顺序、并行处理和决策流程。在活动图中,我们可以看到: - **活动节点(Activity ...
其次,**活动图**(Activity Diagram)是流程图的一种形式,用于表示工作流或系统执行的顺序。例如,管理员登录的活动图会描绘出从输入用户名和密码,到验证身份,再到成功登录的一系列步骤。同样,用户注册活动图...
活动图 (Activity Diagram) 活动图是一种流程图,它展示了系统的动态行为,特别是在处理业务流程、工作流或算法时。活动图的主要元素包括: - **活动(Activity)**: 表示执行的动作或任务。 - **初始节点...
6. **活动图(Activity Diagram)**:类似于流程图,用于表示工作流或业务流程。在航空订票系统中,可以用来表示购票流程、退票流程等活动。 7. **组件图(Component Diagram)**:展示了系统的物理结构,包括软件...
5. 活动图(Activity Diagram):活动图描述了系统的工作流程,尤其适用于表示控制流。在聊天系统中,可以用来展示用户登录、创建聊天室、发送和接收消息等活动的流程。 6. 状态图(State Diagram):状态图描述一个...