跟我学UML建模工具StarUML(第9部分)——应用StarUML创建UML活动图的创建示例
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
1.1 跟我学UML建模工具StarUML(第9部分)——应用StarUML创建UML活动图的创建示例
1.1.1 UML活动图及主要的应用
1、UML活动图和活动
(1)活动图其实本质上就是
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
图
从软件系统内部的视角来看,因为UML活动图反映的都是软件系统功能所要完成的动作过程(它定义出工作流从哪里开始,到哪里结束,工作流中发生了哪些活动及其顺序等),活动是工作流期间完成的任务。但要注意的是。UML用例描述和活动模型之间存在着一些重要的区别。但活动图与流程图之间也还存在有一定的区别
1)流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间对象活动的顺序关系所遵循的规则,它着重
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
现的是系统的行为,而非系统的处理过程;
2)活动图能够表示并发活动的情形,而流程图不行;
3)活动图是面向对象的,而流程图是面向过程的。
(2)UML活动图可以描述用例的活动和行为
用例描述是从外部参与者的角度出发来编写的,而活动模型则采用内部系统的角度进行描述的——使用活动图可以表示由内部生成的动作(描述活动)。当然,软件系统的分析和设计人员也可以利用活动图来为参与者对系统的操作行为进行建模(描述行为)。 (3)UML活动图中的动作状态的特性
这里所指的动作(也就是活动动作)主要有三个特点:原子性、不可中断性和瞬时性:
1) 原子性的即不能被分解成更小的部分;
2) 是不可中断的即一旦开始就必须运行到结束;
3) 是瞬时的即动作状态所占用的处理时间通常是极短的,甚至是可以被忽略的。 (4)动作状态在UML中的图示形式
在UML中,动作状态使用带圆端的方框表示()。 (5)活动图中的动作流或者控制流
杨教授大学堂,版权所有,盗版必究。 1/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
活动图中的各个活动动作的转换用带箭头的直线表示。 2、UML活动图的主要应用
(1)活动图的应用非常广泛
它既可用来描述操作(类的方法)的行为,也可以描述用例和对象内部的工作过程活动(活动图记录了单个操作或方法的逻辑,单个用例或者单个业务流程的逻辑)。 (2)活动图是由状态图变化而来的,但它们各自用于不同的应用目的和应用场合。
将要执行的工作或活动)与动作的结果。活活动图依据对象状态的变化来捕获动作(
动图中一个活动结束后将立即进入下一个活动。
而在状态图中状态的变迁可能需要事件的触发。
杨教授大学堂,版权所有,盗版必究。 2/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
3、在什么应用场合下使用活动图
在对一个软件系统建模时,通常有两种使用活动图的方式:
(1)为工作流(业务过程)建模——也体现出软件系统的用例实现
因为一个用例可能有几个事件流,而往往几个事件流通过控制是有先后顺序的,例如需要先查询数据,后再删除数据。这就需要有个总的流程来控制几个事件流的处理顺序,而UML活动图则能够很好地表示这样的过程。
对工作流建模强调与软件系统进行交互的对象所观察到的各种活动。工作流一般处于系统的边界,用于可视化、详述、构造和文档化开发软件系统所涉及的业务流程。下面为某个“网上银行”项目中的企业开户的业务过程的活动图。
杨教授大学堂,版权所有,盗版必究。 3/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
(2)为对象的操作实现过程建模
活动图本质上就是流程图,它描述系统的活动、判定点、分支等部分。因此,在UML中,可以把活动图作为流程图来使用,用于对系统的功能操作建模。下面为一个网上商店系统中的用户的各种可能的操作活动的图示。
杨教授大学堂,版权所有,盗版必究。 4/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
3、设计UML 活动图的实现步骤(活动图的建模技术)
要创建一个 UML 活动图,需要反复执行下列步骤:
(1)第一步,定义活动图的范围
首先应该定义您要对什么建模。单个参与者完成的用例的实现过程,(也包括一个用例中的一部分,一个类的单个方法,)、一个包含多个用例的逻辑关系,描述多个不同的参与者的业务流程,
(2)第二步,添加起始和结束点
每个活动图有一个起始点()和但可以有多个结束点(),用一个实心圆表示初始节点,用一个圆圈内加一个实心圆来表示活动终点。
(3)第三步,添加各个活动项目或者活动节点()
活动项目或者活动节点是UML活动图中最主要的元素之一,它用来表示一个活动。如果软件系统的分析和设计人员正在对一个用例建模,对每个参与者(Actor)所发出的主要步骤引入一个活动,而该活动可能包括起始步骤,加上对起始步骤系统响应的任何步骤。
杨教授大学堂,版权所有,盗版必究。 5/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
而如果软件系统的分析和设计人员正在对一个高层的商务流程建模,对每个主要的流程引入一个活动。
(4)第四步,添加活动间的转变(各个活动之间的关系)
一旦一个活动有多个转变时,软件系统的分析和设计人员必需对每个转变加以相应标示。
杨教授大学堂,版权所有,盗版必究。 6/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
(5)第五步,添加分支和转换
找出各个活动之间的逻辑关系或者条件,并加以描述。
(6)第六步,找出可并行活动(有共同的输入或者共同的输出的活动)之处
当两个活动间没有直接的联系,而且它们都必需在第三个活动开始前结束,那它们是
杨教授大学堂,版权所有,盗版必究。 7/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料 可以并行运行的。
4、活动图中的各种组成元素
在UML活动图中的各种可能的组成元素可以有活动状态、分支、合并、泳道、对象流状态、状态类、信号发送和信号接收等。
杨教授大学堂,版权所有,盗版必究。 8/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
5、UML活动图中的条件关系(分支)
(1)UML活动图中的条件关系的表示形式
在UML活动图中使用一个菱形的判断标志来表达条件关系,而条件分支可以有一个进入转换和两个或多个输出转换,但在每条输出转换上都应该有监护条件表达式(即一个布尔表达式)保护,当且仅当监护表达式的值为真时,该输出路径才有效。 (2)条件关系的表示形式的示例图
6、UML活动图中的并发行为
在UML活动图中,使用一个称为同步条的水平粗线可以将一条转移分为多个并发执行的分支,或将多个转移合为一条转移。此时,只有输入的转移全部有效,同步条才会触发转移,进而执行后面的活动。
杨教授大学堂,版权所有,盗版必究。 9/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
7、UML活动图中的对象和对象流
(1)对象
在UML活动图中可以出现对象,并且对象可以作为活动的输入或输出。 (2)对象流
对象流对应于一个对象经过整个活动的不同状态,采用虚箭头线表示,而控制流采用
实箭头线表示
1.1.2 在StarUML工具软件中创建UML活动图
1、创建一个名称为“新增客户用例的活动图”
(1)选择“Activity Diagram”子菜单项目
杨教授大学堂,版权所有,盗版必究。 10/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
(2)命名所创建出的活动图为“新增客户用例的活动图”
此时在左边将自动地显示出与活动图相关的按钮图标,可以直接拖动这些图标到活动图。
杨教授大学堂,版权所有,盗版必究。 11/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
2、在活动图中添加开始和结束节点——需要注意的是:实心圆为起始状态,同心圆为结束状态
杨教授大学堂,版权所有,盗版必究。 12/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料 3、在活动图中添加各个活动节点
(1)添加各个活动节点和分支
(2)继续添加活动中的剩余的节点。
4、应用控制流连接活动图中的各个节点
杨教授大学堂,版权所有,盗版必究。 13/14页
杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料
5、最后的绘制结果示图
杨教授大学堂,版权所有,盗版必究。 14/14页