第8章活动图1_第1页
第8章活动图1_第2页
第8章活动图1_第3页
第8章活动图1_第4页
第8章活动图1_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、活动图概述活动图概述如何阅读活动图如何阅读活动图如何绘制活动图如何绘制活动图活动图应用说明活动图应用说明使用使用Rose创建活动图创建活动图本章小结本章小结活动图概述活动图概述如何阅读活动图如何阅读活动图如何绘制活动图如何绘制活动图活动图应用说明活动图应用说明本章小结本章小结活动图和交互图是活动图和交互图是UML中对系统动态方面建模的两种中对系统动态方面建模的两种主要形式主要形式交互图强调的是对象到对象的控制流,而活动图则强调交互图强调的是对象到对象的控制流,而活动图则强调的是从活动到活动的控制流的是从活动到活动的控制流 活动图是一种表述过程基理、业务过程以及工作流的技活动图是一种表述过程基理

2、、业务过程以及工作流的技术。它可以用来对业务过程、工作流建模,也可以对用术。它可以用来对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模例实现甚至是程序实现来建模 UML 2.0而言,去除了而言,去除了“活动图是状态图活动图是状态图的一种特例的一种特例”这一规定这一规定 (1)描述一个操作执行过程中所完成的工作。主要说明描述一个操作执行过程中所完成的工作。主要说明角色、工作流、组织和对象是如何工作的。角色、工作流、组织和对象是如何工作的。 (2)活动图对用例描述尤其有用,它可建模用例的工作活动图对用例描述尤其有用,它可建模用例的工作流,显示用例内部和用例之间的路径。它可说明用流,显示

3、用例内部和用例之间的路径。它可说明用例的实例是如何执行动作以及如何改变对象状态。例的实例是如何执行动作以及如何改变对象状态。 (3)显示如何执行一组相关的动作,以及这些动作如何显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象。影响它们周围的对象。(4)活动图对理解业务处理过程十分有用。活动图可以活动图对理解业务处理过程十分有用。活动图可以画出工作流用以描述业务,有利于与领域专家进行画出工作流用以描述业务,有利于与领域专家进行交流。通过活动图可以明确业务处理操作是如何进交流。通过活动图可以明确业务处理操作是如何进行的,以及可能产生的变化。行的,以及可能产生的变化。 (5)描述复杂过

4、程的算法,在这种情况下使用的活动图描述复杂过程的算法,在这种情况下使用的活动图和传统的程序流程图的功能是差不多的。和传统的程序流程图的功能是差不多的。活动图概述活动图概述如何阅读活动图如何阅读活动图如何绘制活动图如何绘制活动图活动图应用说明活动图应用说明本章小结本章小结初始节点表示活动的起点;终点表示活动的终结点用一初始节点表示活动的起点;终点表示活动的终结点用一个实心圆表示初始节点,用一个圆圈内加一个实心圆来表个实心圆表示初始节点,用一个圆圈内加一个实心圆来表示活动终点在活动图中,可能包含多个活动终点。示活动终点在活动图中,可能包含多个活动终点。活动节点活动节点l 是原子性的动作或操作的执行

5、状态,也可以是能进一是原子性的动作或操作的执行状态,也可以是能进一步分解的一系列操作,不能被外部事件的转换中断。步分解的一系列操作,不能被外部事件的转换中断。l 活动图中最主要的元素之一,它用来表示一个活动。活动图中最主要的元素之一,它用来表示一个活动。l 在在UML中,使用平滑的圆角矩形表示,相应的动作写中,使用平滑的圆角矩形表示,相应的动作写在矩形内部。在矩形内部。 转换:当一个活动结束时,控制流就会马上传递给下转换:当一个活动结束时,控制流就会马上传递给下一个活动节点,在活动图中称之为一个活动节点,在活动图中称之为“转换转换”,用一条,用一条带箭头的直线来表示带箭头的直线来表示 从语义上

6、说,这种转换称为无触发转换,也就是一旦从语义上说,这种转换称为无触发转换,也就是一旦前一个动作完成就会马上转到下一个。前一个动作完成就会马上转到下一个。如果需要对这些转换设置一些条件,使其在满足特定如果需要对这些转换设置一些条件,使其在满足特定的条件时才触发,则可以借助监护条件来完成。的条件时才触发,则可以借助监护条件来完成。分支与监护条件:分支是用菱形表示的,它有一个进入分支与监护条件:分支是用菱形表示的,它有一个进入转换(箭头从外指向分支符号),一个或多个离开转换转换(箭头从外指向分支符号),一个或多个离开转换(箭头从分支符号指向外)。而每个离开转换上都会(箭头从分支符号指向外)。而每个离

7、开转换上都会有一个监护条件,用来表示满足什么条件的时候执行该有一个监护条件,用来表示满足什么条件的时候执行该转换。转换。l 分岔与汇合:实际的控制流中,除了顺序结构、分支分岔与汇合:实际的控制流中,除了顺序结构、分支结构和循环结构外,还可能存在并发的事件流。结构和循环结构外,还可能存在并发的事件流。l 在在UML中,可以采用一个同步线来说明这些并行控制中,可以采用一个同步线来说明这些并行控制流的分岔与汇合。流的分岔与汇合。l 同步线是一种水平或垂直的粗线段。同步线是一种水平或垂直的粗线段。l 泳道将活动图中的活动节点分成了几个小组,每个小泳道将活动图中的活动节点分成了几个小组,每个小组都显示了

8、负责实施这些操作的角色。组都显示了负责实施这些操作的角色。l 每个泳道在视觉上是用一条垂直的线将它们分开,并每个泳道在视觉上是用一条垂直的线将它们分开,并且每个泳道都必须有一个唯一的名称。且每个泳道都必须有一个唯一的名称。l 每个活动节点、分支必须只属于一个泳道,而转换、每个活动节点、分支必须只属于一个泳道,而转换、分岔与汇合是可以跨泳道的。分岔与汇合是可以跨泳道的。l 通过泳道,不仅体现整个活动控制流,还体现了每个通过泳道,不仅体现整个活动控制流,还体现了每个活动的实施者。活动的实施者。活动图中,一个节点是可能创建、输入、输出一个对象或活动图中,一个节点是可能创建、输入、输出一个对象或修改对

9、象的状态的,这个相关的对象如果在活动图中体现修改对象的状态的,这个相关的对象如果在活动图中体现出来,会使得活动图对于变成实现更有指导意义。出来,会使得活动图对于变成实现更有指导意义。UMLUML中,活动图不仅可以显示一个对象的流,还可以显示中,活动图不仅可以显示一个对象的流,还可以显示对象的角色、状态和属性值的变化。对象的角色、状态和属性值的变化。还可以像类的表示法一样,在方框中添加一栏,列出对象还可以像类的表示法一样,在方框中添加一栏,列出对象的当前属性值,以更细致地定义对象的状态。的当前属性值,以更细致地定义对象的状态。辅助活动图:辅助活动图:l 还可以通过连接符来实现不同活动图之间的连接

10、还可以通过连接符来实现不同活动图之间的连接l 其图形表示是让外联的活动节点指向一个圆圈标识符,其图形表示是让外联的活动节点指向一个圆圈标识符,而被连接的活动节点由一圆圈标识符指向该节点,这而被连接的活动节点由一圆圈标识符指向该节点,这两个圆圈标识符上的名字必须相同。两个圆圈标识符上的名字必须相同。l 汇合描述:当汇合的所有入流均到点汇合点时,就将汇合描述:当汇合的所有入流均到点汇合点时,就将执行汇合点指向的活动节点。执行汇合点指向的活动节点。l 但是有些时候,如希望对其做一些约束,这时就可以但是有些时候,如希望对其做一些约束,这时就可以借助汇合描述来完成。借助汇合描述来完成。l 汇合描述实际上

11、是一个约束,其格式就是汇合描述实际上是一个约束,其格式就是“约束条约束条件件”。 在活动图中,有三种信号元素:在活动图中,有三种信号元素:(1 1)时间信号:时间信号是用来表示随着时间的流逝而自)时间信号:时间信号是用来表示随着时间的流逝而自动发出的信号,时间信号表示,当时间到达某个特定的时动发出的信号,时间信号表示,当时间到达某个特定的时刻时,就会触发时间事件,例如每天刻时,就会触发时间事件,例如每天1010点时,闹钟开始响点时,闹钟开始响铃,铃,1010点钟发出响铃的信号就是时间信号。点钟发出响铃的信号就是时间信号。(2 2)发送信号:也就是发出一个异步消息,对于发送者而)发送信号:也就是

12、发出一个异步消息,对于发送者而言,就是发送信号;对于接收到这种消息的目标而言,就言,就是发送信号;对于接收到这种消息的目标而言,就是是“接收信号接收信号。(3 3)接收信号:就是接收者收到的一个外部信号。)接收信号:就是接收者收到的一个外部信号。在一个信息管理系统中要实现一个在一个信息管理系统中要实现一个“事项提醒事项提醒”的功能,的功能,也就是在计划的事项预定时间到达前一个小时弹出系统对也就是在计划的事项预定时间到达前一个小时弹出系统对话框告知用户,直到用户关闭该对话框才隐藏。话框告知用户,直到用户关闭该对话框才隐藏。引脚:表示活动节点的相应参数引脚:表示活动节点的相应参数扩展区:扩展区:活

13、动图概述活动图概述如何阅读活动图如何阅读活动图如何绘制活动图如何绘制活动图活动图应用说明活动图应用说明本章小结本章小结“活动图活动图” 比较直观易懂;与传统的流程图十分的相近,比较直观易懂;与传统的流程图十分的相近,只要能够读懂活动图,就不难画出活动图只要能够读懂活动图,就不难画出活动图绘制时首先决定是否采用泳道:主要根据活动图中是否绘制时首先决定是否采用泳道:主要根据活动图中是否要体现出活动的不同实施者要体现出活动的不同实施者然后尽量使用分支、分岔和汇合等基本的建模元素来描然后尽量使用分支、分岔和汇合等基本的建模元素来描述活动控制流程述活动控制流程如果需要,加入对象流以及对象的状态变化,利用

14、一些如果需要,加入对象流以及对象的状态变化,利用一些高级的建模元素(如辅助活动图、汇合描述、发送信号高级的建模元素(如辅助活动图、汇合描述、发送信号与接收信号、引脚、扩展区)来表示更多的信息与接收信号、引脚、扩展区)来表示更多的信息活动图的建模关键是表示出控制流,其它的建模元素都活动图的建模关键是表示出控制流,其它的建模元素都是围绕这一宗旨所进行的补充是围绕这一宗旨所进行的补充活动图概述活动图概述如何阅读活动图如何阅读活动图如何绘制活动图如何绘制活动图活动图应用说明活动图应用说明本章小结本章小结对工作流建模:用于业务建模的时候,每一条泳道表示对工作流建模:用于业务建模的时候,每一条泳道表示一个

15、职责单位,该图能够有效地体现出所有职责单位之一个职责单位,该图能够有效地体现出所有职责单位之间的工作职责,业务范围及之间的交互关系、信息流程间的工作职责,业务范围及之间的交互关系、信息流程 建模时应遵循以下策略:建模时应遵循以下策略:为工作流建立一个焦点,除非你所涉及的系统很小,否为工作流建立一个焦点,除非你所涉及的系统很小,否则不可能在一张图中显示出系统中所有的控制流则不可能在一张图中显示出系统中所有的控制流选择对全部工作流中的一部分有高层职责的业务对象,选择对全部工作流中的一部分有高层职责的业务对象,并为每个重要的业务对象创建一条泳道并为每个重要的业务对象创建一条泳道识别工作流初始节点的前

16、置条件和活动终识别工作流初始节点的前置条件和活动终点的后置条件,这可有效地实现对工作流点的后置条件,这可有效地实现对工作流的边界进行建模。的边界进行建模。从该工作流的初始节点开始,说明随时间发生的动作和从该工作流的初始节点开始,说明随时间发生的动作和活动,并在活动图中把它们表示成活动节点活动,并在活动图中把它们表示成活动节点将复杂的活动或多次出现的活动集合归到一个活动节点,将复杂的活动或多次出现的活动集合归到一个活动节点,并通过辅助活动图或子活动图来表示它们并通过辅助活动图或子活动图来表示它们找出连接这些活动节点的转换,首先从工作流的顺序开找出连接这些活动节点的转换,首先从工作流的顺序开始,然

17、后考虑分支,接着再考虑分岔和汇合始,然后考虑分支,接着再考虑分岔和汇合如果工作流中涉及重要的对象,则也可以将它们加入到如果工作流中涉及重要的对象,则也可以将它们加入到活动图中活动图中若工作流中有多次启用的,则可采用若工作流中有多次启用的,则可采用展开区表示展开区表示对操作建模:每一个对象占据一个泳道,而活动则是该对操作建模:每一个对象占据一个泳道,而活动则是该对象的成员方法对象的成员方法 建模时应遵循以下策略:建模时应遵循以下策略:- 收集操作所涉及的抽象概念,包括操作的参数、返回类型、所属收集操作所涉及的抽象概念,包括操作的参数、返回类型、所属类的属性以及某些邻近的类类的属性以及某些邻近的类

18、- 识别该操作的初始节点的前置条件和活动终点的后置条件。也要识别该操作的初始节点的前置条件和活动终点的后置条件。也要识别在操作执行过程中必须保持的信息识别在操作执行过程中必须保持的信息- 从该操作的初始节点开始,说明随着时间发生的活动,并在活动从该操作的初始节点开始,说明随着时间发生的活动,并在活动图中将它们表示为活动节点图中将它们表示为活动节点- 如果需要,使用分支来说明条件语句及循环语句如果需要,使用分支来说明条件语句及循环语句- 仅当这个操作属于一个主动类时,才在必要时用分岔和汇合来说仅当这个操作属于一个主动类时,才在必要时用分岔和汇合来说明并行的控制流程明并行的控制流程l 要创建活动图

19、,首先展开要创建活动图,首先展开“Logic View”菜单项,然后在菜单项,然后在“Logic View”图标上单击鼠标右键,在弹出的菜单中选择图标上单击鼠标右键,在弹出的菜单中选择“New”下的下的“Activity Diagram”选项建立新的活动图选项建立新的活动图。l选择之后,选择之后,Rose在在“Logic View”目录下创建目录下创建“State/Activity Model”子目录,目录下是新建的活动图子目录,目录下是新建的活动图“New Diagram”,右键单击活动图,右键单击活动图图标,在弹出菜单中选择图标,在弹出菜单中选择“Rename”来修改新创建的活动图名字来修

20、改新创建的活动图名字。l 在状态图建立以后,双击状态图图标,会出现状态图绘制区域在状态图建立以后,双击状态图图标,会出现状态图绘制区域l 活动图也有初始和终止状态活动图也有初始和终止状态。l 初始状态初始状态在活动图中用实心圆表示,终止状态在活动图中在活动图中用实心圆表示,终止状态在活动图中用含有实心圆的空心圆表示用含有实心圆的空心圆表示。l 鼠标鼠标左键点击活动图工具栏中初始状态图标,然后在绘制左键点击活动图工具栏中初始状态图标,然后在绘制区域要绘制的地方单击鼠标左键就可以创建初始状态区域要绘制的地方单击鼠标左键就可以创建初始状态。l 终止状态终止状态的创建方法和初始状态相同。的创建方法和初

21、始状态相同。l 首先首先点击活动图工具栏中的点击活动图工具栏中的“Activity”图标,然后在图标,然后在绘制区域要绘制动作状态的地方单击鼠标左键。绘制区域要绘制动作状态的地方单击鼠标左键。l 修改动作状态的属性修改动作状态的属性信息。首先双击动作信息。首先双击动作状态图标,在弹出的状态图标,在弹出的对话框对话框“General”General”选项卡里进行如名称选项卡里进行如名称“Name”Name”和文档说明和文档说明“Documentation”Documentation”等属性的设置。等属性的设置。 用鼠标左键双击活用鼠标左键双击活动图图标,在弹出动图图标,在弹出的对话框中选择的对话

22、框中选择“Action”选项卡。选项卡。然后在空白处单击然后在空白处单击鼠标右键,在弹出鼠标右键,在弹出的右键菜单中选择的右键菜单中选择“Insert”菜单项。菜单项。接下来双击列表中出现的默认动作“Entry/”,在弹出的对话框的“When”选项下拉列表中有“ON entry”、“On Exit”、“Do”和“On Event”等动作选项。用户可以根据自己的需求来选择需要的动作,“Name”字段要求用户输入动作的名称。如果选择“On Event”,则要求在相应的字段中输入事件的名称“Event”、参数“Arguments”和事件发生条件“Condition”等。如果选择的是其他3项,则这几个

23、字段不可填写信息。 要创建转换,首先点击工具栏中的“State Transition”图标,然后在两个要转换的动作状态之间拖动鼠标。 创建分岔汇合,创建分岔汇合,首先首先点击工具栏中的点击工具栏中的“Horizontal Synchronization”图图标按钮,在绘制区域标按钮,在绘制区域要要创建分岔与汇合的创建分岔与汇合的地方单击鼠标左键。地方单击鼠标左键。l 分支分支l 首先点击工具栏中首先点击工具栏中的的“Decision”图标图标按钮,然后在绘制按钮,然后在绘制区域要创建分支与区域要创建分支与合并的地方单击鼠合并的地方单击鼠标左键。标左键。l 要要创建泳道,首先点击工具栏中的创建泳

24、道,首先点击工具栏中的“Swimlane”图标按钮,然后图标按钮,然后在绘制区域点击鼠标左键,就可以创建新的泳道。在绘制区域点击鼠标左键,就可以创建新的泳道。 l 接下来可以修改泳道的名字等属性。选中需要修改的泳道,单击接下来可以修改泳道的名字等属性。选中需要修改的泳道,单击鼠标右鼠标右 键,在弹出的菜单中选择键,在弹出的菜单中选择“Open Specification”。弹出的。弹出的对话框中的对话框中的 “Name”字段可以修改泳道的名字。字段可以修改泳道的名字。 l 首先点击工具栏中图标按钮首先点击工具栏中图标按钮“Object”,在绘制区域要,在绘制区域要绘制对象流状态的地方单击鼠标左

25、键。绘制对象流状态的地方单击鼠标左键。l 接下来左键双击对象,在弹出的对象框接下来左键双击对象,在弹出的对象框“General”选选项卡中,可以设置对象的名称、标出对象的状态、增项卡中,可以设置对象的名称、标出对象的状态、增加对象的说明等。其中加对象的说明等。其中“Name”字段可以输入对象的字段可以输入对象的名字。如果建立了相应的对象类,可以在名字。如果建立了相应的对象类,可以在“Class”对对象的下拉列表中选择。如果建立了相应的状态,可以象的下拉列表中选择。如果建立了相应的状态,可以在在“State”字段下拉列表中选择。如果没有状态或需要字段下拉列表中选择。如果没有状态或需要添加状态,则

26、选择添加状态,则选择“New”,然后在弹出的对话框中输,然后在弹出的对话框中输入名字点击入名字点击“OK”按钮即可。按钮即可。 l 创建好对象流状态后,就可以开始创建对象流。首先创建好对象流状态后,就可以开始创建对象流。首先点击工具栏中的图标按钮,然后在活动和对象流状态点击工具栏中的图标按钮,然后在活动和对象流状态之间拖动鼠标创建对象流。之间拖动鼠标创建对象流。首先介绍了首先介绍了“活动图活动图”的历史变迁;逐一介绍简单活动的历史变迁;逐一介绍简单活动图、带泳道的活动图、带对象流的活动图的阅读方法图、带泳道的活动图、带对象流的活动图的阅读方法讲解了活动节点、初始节点和活动终点、转换、讲解了活动节点、初始节点和活动终点、转换、分分支与监护条件、分岔与汇合等基本建模元素;逐步引出支与监护条件、分岔与汇合等基本建模元素;逐

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论