`

6.0-活动图

    博客分类:
  • UML
阅读更多

参考 : http://jpkc.cec.edu.cn/jpkc/2009/xtfxsj/jszt8.html

内容路线

image

•活动图概述

活动图概述

•活动图和交互图是UML中对系统动态 方面建模的两种主要形式

•交互图强调的是对象到对象 的控制流,而活动图则强调的是从活动到活动 的控制流

•活动图是一种表述过程基理、业务过程以及工作流的技术。它可以用来对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模

•UML 2.0而言,去除了“活动图是状态图的一种特例”这一规定

 

 

       活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流,阐明了业务用例实现的工作流程。业务用例工作流程说明了业务为向所服务的业务主角提供其所需的价值而必须完成的工作。业务用例由一系列活动组成,它们共同为业务主角生成某些工件。工作流程通常包括一个基本工作流程和一个或多个备选工作流程,工作流程的结构使用活动图来进行说明。工作流程活动图用于研究实现业务目标时所要执行的各项任务或活动的顺序安排。

活动图的组成元素(Activity Diagram Element):

1、活动状态(Activity)用于表达状态机中的非原子的运行,活动状态可以分解成其他子活动或者动作状态。

2、动作状态(Actions)是指原子的,不可中断的动作,并在此动作完成后通过完成转换转向另一个状态。

UML中活动状态和动作状态的图标相同,用平滑的圆角矩形表示。

3、动作状态约束(Action Constraints)用来约束动作状态,展示了动作状态的前置条件和后置条件。

4、动作流(Control Flow)动作之间的转换称之为动作流,活动图的转换用带箭头的直线表示,箭头的方向指向转入的方向。

5、开始节点(Initial Node)表示成实心黑色圆点。

6、终止节点(Final Node)分为活动终止节点(activity final nodes)和流程终止节点(flow final nodes)。活动终止节点表示整个活动的结束,而流程终止节点表示是子流程的结束。

7、对象节点(Object node)用矩形表示。

8、数据存储对象(DataStore)使用关键字«datastore»标明。

9、对象流(Object Flows)用带有箭头的虚线表示。

10、分支与合并(Decision and Merge Nodes)分支与合并用菱形表示。

11、分叉与汇合(Fork and Join Nodes)分为水平风向和垂直方向。对象在运行时可能会存在两个或多个并发运行的控制流,为了对并发的控制流建模,UML中引入了分叉与汇合的概念。分叉用于将动作流分为两个或多个并发运行的分支,而汇合则用于同步这些并发分支,以达到共同完成一项事务的目的。

12、异常处理(Exception Handler)当受保护的活动发生异常时,触发异常处理节点。

13、活动中断区域(Interruptible Activity Region)围绕一些可被中断的动作状态图,其实就是例外情况的表示。

14、泳道(Partition)将活动图中的活动划分为若干组,并把每一组指定给负责这组活动的业务组织,即对象。在活动图中,泳道区分了负责活动的对象,它明确地表示了哪些活动是由哪些对象进行的。在包含泳道的活动图中,每个活动只能明确地属于一个泳道。泳道是用垂直实线绘出,垂直线分隔的区域就是泳道。在泳道的上方可以给出泳道的名字或对象的名字,该对象负责泳道内的全部活动。泳道没有顺序,不同泳道中的活动既可以顺序进行也可以并发进行,动作流和对象流允许穿越分隔线。

• 如何阅读活动图

阅读简单活动图

image

活动图的主要元素

•初始节点和活动终点:用一个实心圆 表示初始节点,用一个圆圈内加一个实心圆 来表示活动终点

•活动节点:是活动图中最主要的元素之一,它用来表示一个活动

image

 

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

活动图的主要元素

•分支与监护条件:分支是用菱形表示的 ,它有一个进入转换(箭头从外指向分支符号),一个或多个离开转换(箭头从分支符号指向外)。而每个离开转换上都会有一个监护条件 ,用来表示满足什么条件的时候执行该转换。

image

•分岔与汇合:

image

修改后的简单活动图

image

带泳道的活动图

image

带对象流的活动图

image

复杂活动图

•辅助活动图:

image

•汇合描述:当汇合的所有入流均到点汇合点时,就将执行汇合点指向的活动节点。但是有些时候,你希望对其做一些约束,这时就可以借助汇合描述 来完成。汇合描述实际上是一个约束,其格式就是“{约束条件 }”。

•发送信号与接收信号:

image  

image

 

 

 

•如何绘制活动图

绘制活动图

•“活动图” 比较直观易懂;与传统的流程图十分的相近,只要能够读懂活动图,就不难画出活动图

•绘制时首先决定是否采用泳道 :主要根据活动图中是否要体现出活动的不同实施者

•然后尽量使用 分支、分岔和汇合等基本的建模元素来描述活动控制流程

•如果需要,加入对象流以及对象的状态变化,利用一些高级的建模元素(如辅助活动图、汇合描述、发送信号与接收信号、引脚、扩展区)来表示更多的信息

•活动图的建模关键是表示出控制流 ,其它的建模元素都是围绕这一宗旨所进行的补充

工作流程,控制流程,业务流程中使用。

• 活动图应用说明

活动图应用说明

•对工作流建模:用于业务建模的时候,每一条泳道表示一个职责单位,该图能够有效地体现出所有职责单位之间的工作职责业务范围及之间的交互关系 、信息流程

建模时应遵循以下策略:

•为工作流建立一个焦点 ,除非你所涉及的系统很小,否则不可能在一张图中显示出系统中所有的控制流

•选择对全部工作流中的一部分有高层职责的业务对象 ,并为每个重要的业务对象创建一条泳道

•识别工作流初始节点的前置条件 和活动终点的后置条件 ,这可有效地实现对工作流的边界进行建模。

•从该工作流的初始节点开始,说明随时间发生的动作和活动,并在活动图中把它们表示成活动节点

•将复杂的活动或多次出现的活动集合归到一个活动节点 ,并通过辅助活动图或子活动图来表示它们

•找出连接这些活动节点的转换首先从工作流的顺序开始然后考虑分支接着再考虑分岔和汇合

•如果工作流中涉及重要的对象 ,则也可以将它们加入到活动图中

•若工作流中有多次启用的,则可采用展开区表示

对操作建模:每一个对象占据一个泳道,而活动则是该对象的成员方法

•建模时应遵循以下策略:
-- 收集操作所涉及的抽象概念,包括操作的参数、返回类型、所属类的属性以及某些邻近的类
-- 识别该操作的初始节点的前置条件和活动终点的后置条件。也要识别在操作执行过程中必须保持的信息
-- 从该操作的初始节点开始,说明随着时间发生的活动 ,并在活动图中将它们表示为活动节点
-- 如果需要,使用分支来说明条件语句及循环语句
-- 仅当这个操作属于一个主动类时,才在必要时用分岔和汇合来说明并行的控制流程

•本章小结

•首先介绍了“活动图”的历史变迁;逐一介绍简单活动图、带泳道的活动图、带对象流的活动图的阅读方法

•讲解了活动节点、初始节点和活动终点、转换、 分支与监护条件、分岔与汇合等基本建模元素;逐步引出了泳道、对象流等控制流逻辑

•介绍了辅助活动图、汇合描述、发送信号与接收信号、引脚和扩展区的概念

•最后,概括地说明了活动图的绘制要点,并结合对工作流建模和对操作建模之间的异同

分享到:
评论

相关推荐

    activity6.0-流程图高亮

    在"Activiti6-流程跟踪监控图-节点-流程线高亮显示-支持通过、不通过、驳回、退回-处理类"这个文件名称中,我们可以推断出以下几点: 1. **流程跟踪监控**:Activiti 6提供了强大的流程跟踪能力,允许用户查看每个...

    Visual-C++-6.0-实用教程.ppt

    本教程主要围绕如何使用这个环境进行开发活动,涵盖开发环境的各个方面,包括界面、菜单、工具栏、项目管理、资源处理等。 1. 开发环境概述 Visual C++ 6.0 的开发环境包括标题栏、菜单栏、工具栏、项目工作区窗口...

    Nero-8.3.6.0_chs_trial序列号

    - **教育机构**:教学资源分发、活动录像保存等。 #### 序列号说明 为了激活软件的全部功能,通常需要输入一个有效的序列号。根据提供的内容,这里给出了几个可能的序列号: - 1K22-1867-0795-66M4-5790-1550-A26...

    serv-u6.0.4.6

    7. **日志与审计**:系统提供详细的日志记录功能,便于管理员监控FTP活动,及时发现并处理潜在的安全问题。 8. **IPv6支持**:随着IPv6的普及, Serv-U 6.0.4.6 支持双协议栈,能够同时处理IPv4和IPv6连接,适应...

    HyperSnap-DX 6.0屏幕图像获取软件-精品文档.doc

    使用程序组或快捷方式启动后, 即可出现如图所示的“HyperSnap 6”应用程序窗口。 2. 使用 HyperSnap-DX 进行捕捉 使用 HyperSnap-DX 进行截图的大致过程为:首先运行 HyperSnap-DX,设置好截取范围、热键和抓取的...

    Nero-8.3.6.0序列号

    - **活动赠送**:某些营销活动中可能会有免费发放序列号的情况出现,这类机会虽少却也是个不错的选择。 #### 使用方法 - 在安装过程中按照提示输入序列号完成激活; - 若已安装好软件,则可在“帮助”或相应菜单中...

    vfp6.0系统免费下载

    vf6.0,要考二级没系统的下哈 Microsoft Visual FoxPro 6.0 for Windows 的常见问题 这些是有关 Microsoft Visual FoxPro 最常见的问题。在您求助 Microsoft 产品支持服务之前,请先查阅这张列表。 若想打印这些...

    Serv-U+FTP+Server+6.0.0.2+final

    4. **日志记录与审计**:该软件可以详尽记录用户的登录、传输文件等活动,便于系统管理员进行安全监控和问题排查。 5. **自动任务和脚本支持**:用户可以通过内置的命令行工具或编写批处理脚本来执行自动化任务,如...

    Borland C++ Builder 6.0 Build 10.166 汉化 补丁 终结版 .rar

    本人所有汉化作品均为免费发放,任何组织或个人未经本人允许,不得将本人的汉化作品用于商业活动或任何其它赢利性活动中。  3.本人的汉化只为使用方便而做,使用 swordxy 的汉化作品是您的自由选择,本人并不对...

    activiti-6.0 官网

    流程定义包含了活动(Activity)、网关(Gateway)、事件(Event)等元素,它们共同构成了一个完整的业务流程。 `libs` 文件夹可能包含了 Activiti 运行所需的库文件,这些库支持 Activiti 的核心功能,如流程引擎...

    MQ 6.0系统管理指南

    - **审计跟踪**:记录所有重要的操作活动,便于追踪和审查。 ##### 5. **性能调优** - **监控工具**:利用内置或第三方工具对系统进行实时监控。 - **优化建议**:根据监控结果调整配置参数以提高效率。 - **最佳...

    activiti-eclispe3.7digo-plugin6.0.zip

    1. **流程设计**:它提供了一个图形化的用户界面,让开发者可以方便地通过拖放活动(如任务、网关、事件)来创建和编辑BPMN 2.0流程图。这种可视化设计方式使得流程定义更直观,降低了学习和使用的门槛。 2. **保存...

    CUBE6.0入门

    - **先进的模型框架**:CUBE 6.0支持各种模型类型,包括集合模型和分散模型,特别是基于出行链的活动模型,这使得它能够在不同的规划层面提供灵活的支持。 - **强大的灵活性**:CUBE 6.0不仅具有强大的功能,而且还...

    VB6.0课程设计-采购管理系统.doc

    VB6.0课程设计的主要任务是开发一个采购管理系统,该系统旨在利用Visual Basic 6.0编程语言和SQL Server 2000数据库管理系统,实现对商场采购活动的有效管理和监控。系统主要包含五个核心功能模块:进货管理、退货...

    VMware vCenter Server 6.0 u2下载

    - **日志审计**:启用详细的日志记录功能,便于跟踪系统活动,有助于问题排查和安全审计。 通过以上详细介绍,我们可以看到VMware vCenter Server 6.0 u2 不仅提供了强大的虚拟化管理能力,还针对用户的需求进行了...

    活动投票程序(VB6.0代码编写)

    综上所述,"活动投票程序(VB6.0代码编写)"涵盖了VB6.0的基础和高级编程技巧,包括界面设计、数据库操作、逻辑控制、事件驱动编程和错误处理等多个方面。这个项目不仅可以帮助开发者巩固VB6.0的知识,还能提供一个...

    怎样把 VTK 安装到 VC 6.0环境下

    - **调试VTK示例**:在`C:\VTK5.2\bin\Examples`目录下,打开`VTKExamples.dsw`,选择一个示例如`Cone`,设置为活动项目并进行构建和运行。若遇到问题,检查环境变量和库路径是否正确设置。 #### 知识点五:常见...

    初识altium designer 6.0

    系统信息菜单项提供了 Altium Designer 的系统信息,包括各种功能模块以及它们的活动状态。 4. Run process…. 用户可以通过 Run process… 菜单项给出命令行启动进程。 5. Check for Updates….. 用户可以通过 ...

    ChemWindow+6.0

    《ChemWindow 6.0:化学分子结构绘图的得力助手》 ...无论是进行学术研究,还是进行教学活动,甚至是进行化学产品开发,ChemWindow 6.0都能提供强大而实用的支持,助力化学工作者在分子世界中自由翱翔。

Global site tag (gtag.js) - Google Analytics