一、活动图的组成元素 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 Element1、活动状态图(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、 分叉与汇合:【产生订单】份叉为检查库存量和会员支付金额是否足够,如果不足,取消订单,如过库存量和支付金额足够,发送商品和付款,最后汇合为订单完成。
三、总结
活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。活动图能够表示并发活动的情形,活动图是面向对象的。
<!-- 分页 --><!-- 分页 --><!-- 分页 --><!-- 分页 -->
分享到:
相关推荐
活动图是一种流程建模工具,常用于描述系统中任务或事件的流程,特别是在项目管理中,它可以用来识别关键路径,这是理解项目进度和优化资源分配的关键。关键路径法(Critical Path Method, CPM)是确定项目中最关键...
1. **活动图的基本元素**:活动图由几个基本元素构成,包括活动(Activity)、泳道(Swimlane)、决策/合并节点(Decision/Merge Node)、分支(Fork/Join)、初始节点(Initial Node)、终止节点(Final Node)和...
"图书馆管理系统用例图、活动图、类图、时序图" 图书馆管理系统是为了实现内部图书借阅管理的系统化、规范化和自动化。该系统主要包括了图书管理、读者管理、借阅管理、系统管理等几个子系统。下面将对图书馆管理...
《图书管理系统活动图详解》 活动图是统一建模语言(UML)中的一种图形表示方式,主要用于描述系统或组件中的工作流程、业务流程或用例的行为。在本案例中,“图书管理系统活动图”是一个使用Rose工具绘制的.mdl...
6. **异常处理**:在描述活动图时,还要考虑可能出现的异常情况,如网络故障、服务器错误或数据冲突等。这些异常应有对应的处理机制,以保证系统的稳定运行和用户体验。 7. **退出系统**:最后,当用户完成所需操作...
在这个名为"横道网络图-C1标--网络图.zip"的压缩包文件中,包含了一份以"C1标--网络图.dwg"为名的图纸文件,推测这是一份AutoCAD(DWG格式)绘制的横道网络图,可能与某个特定项目(C1标)的进度规划相关。...
在作业中提到了一个名为`Model::Flowchart1::FlowchartDiagram1`的活动图,它可能展示了简易计算器编译器系统的工作流程,具体步骤可能包括: 1. **开始**:流程的起点。 2. **初始化变量和对象**:准备必要的数据...
6. **活动图**: - 活动图是流程或工作流的图形表示,常用于描述系统的动态行为。它展示了任务(活动)的顺序,决策点,分支和合并,以及并发和同步控制结构。 在建立这些图时,需要考虑系统的需求、对象和类的...
1. 软件设计:活动图可以用于描述软件系统的行为,帮助开发者了解软件的执行流程。 2. 硬件设计:活动图也可以用于描述硬件系统的行为,帮助开发者了解硬件的执行流程。 3. 业务流程改进:活动图可以用于描述业务...
1. 流程图注重处理过程的顺序和时间关系,而活动图关注的是对象活动的顺序规则和系统行为。 2. 活动图能表示并发活动,而流程图不能。 3. 活动图是面向对象的,流程图是面向过程的。 9.2 活动图的组成元素 活动图...
【UML建模之活动图介绍(Activity Diagram)】 活动图是统一建模语言(UML)中的一个重要组成部分,主要用于描述系统或过程的动态行为。它以一种流程图的形式展现了控制流从一个活动到另一个活动的顺序,尤其适用于...
在6活动图.doc中,你将学习到: 1. **活动(Activity)**:表示一个操作或任务。 2. **泳道(Swimlane)**:用于分隔不同的参与者或系统组件。 3. **决策节点(Decision Node)**:根据条件选择不同的路径。 4. **...
通过以上内容,我们可以看出该学生基于当当网构建了一个完整的UML模型,涵盖了用例图、类图、序列图、协作图、状态图和活动图等多种图表类型,全面展示了网站的功能和运行机制。这些图表不仅有助于理解和设计系统,...
1. **开始/结束形状**:这是流程图的起点和终点,通常表现为一个带有单箭头的圆圈或椭圆,表示流程的启动和结束。 2. **决策形状**:呈现为一个钻石形,用于表示流程中的决策点,根据条件选择不同的路径。 3. **...
【标题】"Go-在GitHub简档页面上实现一个个性化的活动图"涉及的主要知识点是使用Go编程语言来创建自定义的GitHub个人主页展示图表。这通常涉及到以下几个方面: 1. **GitHub API**:首先,我们需要熟悉GitHub的API...
3-6-1 走进控制图 3-6-2 绘制控制图 3-6-3 运用控制图 3-7-1 初识过程能力 3-7-2 过程能力指数计算 3-7-3 过程能力指数分析与评价 4-1-1 认识抽样检验 4-1-2 抽检分类 4-2-1 如何判断批质量 4-3-1O C曲线 4-3-2 参数...
"6-3+图神经网络在反欺诈领域的应用" 图神经网络(GNN)在反欺诈领域的应用主要体现在两个方面:水房卡提前预警和恶意网址检测。 水房卡提前预警 水房卡提前预警是指通过图神经网络对水房卡交易行为进行分析和...
* 顾客活动图:在这个活动图中,顾客投币,选择饮料,判断金额和饮料数量,进行销售和退币操作。 * 商家活动图:在这个活动图中,商家放置饮料,设置价格,判断饮料数量,并进行销售操作。 自动饮料售货机系统是一...