好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

uml基础教程第七章活动图.ppt

81页
  • 卖家[上传人]:cl****1
  • 文档编号:593557695
  • 上传时间:2024-09-25
  • 文档格式:PPT
  • 文档大小:2.59MB
  • / 81 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 实例讲解——网上书店的订单对象为例 订单对象有确认订单、等待到款、等待受理、已受理、已发货、交易成功和取消7种状态 (1)“确定订单”后根据订单的付款方式决定向下一个状态的转换若付款方式=网银支付,则订单对象进入“等待到款”状态,若付款方式=货到付款,则订单对象直接进入“等待受理”状态;用户付款成功后,订单对象可由“等待到款”状态转换为“等待受理”状态; (2)订单对象处于“等待到款”或“等待受理”状态时,用户可取消交易,由此订单对象转换为“取消”状态; (3)订单对象处于“等待受理”状态,若书店销售管理员受理了订单,则更新订单状态,订单对象转换为“已受理”状态; (4)订单对象处于“已受理”状态,书店发货,销售管理员更新订单状态订单对象转换为“已发货”状态; (5)用户收到货物,书店确认后“交易成功”精选ppt 精选ppt 第七章第七章 活动图活动图精选ppt 本章要点:• 活动图的定义• 活动图中各种标记符的含义基础内容:活动图中的活动、转换和泳道重点掌握:活动图中的动作一般了解:活动图中的对象流精选ppt 为什么要引入活动图?• 从系统任务的观点来看,系统的执行过程是由一系列有序活动组成的。

      活动图可以有效地描述整个系统的流程,即活动图描述的是系统的全局的动态行为• 活动图是唯一能够描述并发活动的活动图是唯一能够描述并发活动的UML图 活动图还描述了系统中各种活动的执行顺序,刻画一个方法中所要进活动图还描述了系统中各种活动的执行顺序,刻画一个方法中所要进行的各项活动的执行流程活动图的应用非常广泛,它既可用来描述过行的各项活动的执行流程活动图的应用非常广泛,它既可用来描述过程或操作(类的方法)的工作步骤,也可以描述用例和对象内部的工作程或操作(类的方法)的工作步骤,也可以描述用例和对象内部的工作流程,并可用于表示并行过程流程,并可用于表示并行过程精选ppt 活动图的作用活动图的作用•((1)描述一个操作执行过程中所完成的工作;)描述一个操作执行过程中所完成的工作;•((2)描述对象内部的工作;)描述对象内部的工作;•((3)显示如何执行一组相关的动作以及这些动作如何影)显示如何执行一组相关的动作以及这些动作如何影响它们周围的对象;响它们周围的对象;•((4)显示用例的实例是如何执行动作以及如何改变对象)显示用例的实例是如何执行动作以及如何改变对象状态。

      状态•((5)说明一次活动中角色、工作流、组织和对象是如何)说明一次活动中角色、工作流、组织和对象是如何工作的精选ppt 7.1 活动图的定义•  活动图是一种用于描述系统行为的模型视图,它可用来描述动作和动作导致对象状态改变的结果,而不用考虑引发状态改变的事件 • UML中,活动图被设计用于用来描述一个过程或者操中,活动图被设计用于用来描述一个过程或者操作的工作步骤作的工作步骤精选ppt UML图的表示• 在UML中,活动的起点用来描述活动图的开始状态,用黑色实心圆表示• 活动的终点描述活动图的终止状态,用一个含有实心圆的空心圆表示• 活动图中的活动用圆角矩形表示•  活动图中的转换描述一个活动转向另一个活动,用带箭头的实线段表示,箭头指向转向的活动,可在转换上用文字标识转换发生的条件•  活动图中还包括分支与合并、分叉与汇合等模型元素分支和合并的图标和状态图中判定的图标相同,分叉与汇分叉与汇合用一条加粗的线段表示,是用来描述并发处理行为合用一条加粗的线段表示,是用来描述并发处理行为如图7-1精选ppt •活动•活动前置和后置条件精选ppt 分支与合并(Decision and Merge Nodes)分支与合并用菱形表示分叉与汇合(Fork and Join Nodes)分为水平风向和垂直方向。

      精选ppt •   活动图的主要目的是描述动作及对象的改变结果,活动图的主要目的是描述动作及对象的改变结果,而状态图则是以状态的概念描述对象、子系统、系统在生而状态图则是以状态的概念描述对象、子系统、系统在生命周期中的各种行为命周期中的各种行为•   与正常的状态图不同,活动图中的状态转换不需任   与正常的状态图不同,活动图中的状态转换不需任何触发事件,活动图中的动作可以放在泳道中,而状态图何触发事件,活动图中的动作可以放在泳道中,而状态图则不可以则不可以•   活动图着重表现从一个活动到另一个活动的控制流,   活动图着重表现从一个活动到另一个活动的控制流,是内部处理驱动的流程;状态图着重描述从一个状态到另是内部处理驱动的流程;状态图着重描述从一个状态到另一个状态的流程,主要有外部事件的参与一个状态的流程,主要有外部事件的参与活动图和状态图活动图和状态图精选ppt ((1)图标不完全一样,活动图中的活动是用比状态图的圆角矩形)图标不完全一样,活动图中的活动是用比状态图的圆角矩形更加椭圆的矩形表示;更加椭圆的矩形表示;((2)活动图是以活动为中心,而状态图是以状态为中心的;)活动图是以活动为中心,而状态图是以状态为中心的;((3)二者触发一个系统或对象的状态(或活动)发生迁移的机制)二者触发一个系统或对象的状态(或活动)发生迁移的机制不同;不同;((4)二者描述对个对象共同完成一个操作的机制不同。

      二者描述对个对象共同完成一个操作的机制不同5)活动图用来描述一个过程中的一系列连续的活动的顺序,而)活动图用来描述一个过程中的一系列连续的活动的顺序,而状态图更适合于描述一个对象在一个生命周期中的离散的不连状态图更适合于描述一个对象在一个生命周期中的离散的不连续的某些状态续的某些状态活动图和状态图的区别活动图和状态图的区别精选ppt •   活动图和传统的流程图也很相似,往往流程图所能活动图和传统的流程图也很相似,往往流程图所能表达的内容,大多数情况下活动图也可以表达表达的内容,大多数情况下活动图也可以表达• 不过两者间还是有明显区别的首先活动图是面向对不过两者间还是有明显区别的首先活动图是面向对象的,而流程图是面向过程的;其次,活动图不仅能表达象的,而流程图是面向过程的;其次,活动图不仅能表达顺序流程控制,还能表达并发流程控制顺序流程控制,还能表达并发流程控制活动图和流程图的区别活动图和流程图的区别精选ppt 7.2 活动图中的标记符 构成活动图的标记符主要有动作、活动、转换和组合活动等,其中活动是活动图中的核心概念精选ppt 7.2.1 动作•   动作是一种原子操作,它不能被外部事件的转换所中断。

      动作不可以分解成更小的部分,它是构造活动图的最小单位•   执行动作就会产生结果,可以用一组相关动作来描述操作的实现,然后将这些动作转换成代码行•   动作通常有一个输出的完成转换,如果有监护条件也可以有多个输出的完成转换•   不过动作和状态图中的状态不同,它不能有入口动作和出口动作,也不能有内部转移精选ppt 7.2.2 活动• 活动是构成活动图的核心元素,是具有内部动作的状态,由隐含的事件触发活动的转移• 要注意的是,活动是一个程序的执行过程的状态而不是一个普通对象的状态离开一个活动的转换通常不包括事件触发器转换可以包括动作和监护条件,如果有多个监护条件赋值为真,那么将无法预料最终的选择结果精选ppt •  活动是由一个或多个动作组成的行为动作是活动中的一个步骤,但是,动作并不是组成活动的最小单位,每个动作只是相对它的活动而言,如果把一个动作作为一个活动那么,这个动作又可以分为更多个组成这个活动的动作• 动作是一种特殊的活动,即它只有一个入口动作,并且它活动时不会被转换所中断动作一般用于描述简短的操作,而活动用于描述持续事件或复杂性的计算活动和动作的区别精选ppt 活动边•  在活动图中,仅有动作是没有意义的,因为活动图需要表现动作与动作之间、动作与数据之间、数据与动作之间的关联和方向。

      • UML2.0 称这些出现在活动中的信息之间的关联为活动边(Activity Edge)精选ppt •   UML2.0 的活动边为一条带有开放式箭头的实线,其箭头指向下一个动作或下一个节点活动边所连的点(动作或节点)不同,所形成的信息流也不同•   在活动图中,由活动边关联起来的信息流程可分为在活动图中,由活动边关联起来的信息流程可分为两大类,即活动图的边包括控制流和对象流两大类,即活动图的边包括控制流和对象流精选ppt 1. 控制流控制流 在活动图中,控制流表示一个操作完成后对其后续操在活动图中,控制流表示一个操作完成后对其后续操作的触发作的触发 当活动边连接的是两个动作时,这种活动边称为控制流控制流一般发生在两种情况:在活动边控制下,活动由一个动作直接转变为另一个动作时,或者由一个动作经过一个逻辑判断条件转变为另一个动作表示控制流的活动边的箭头指明下一个动作 如 图精选ppt 2. 对象流对象流 当活动边连接动作与数值或活动与数值时,UML2.0 称这类活动边为对象流,对象流用于描述活动中的数据输入输出。

      如 图精选ppt 活动节点•  在活动图中,流动的信息不仅仅只有动作,UML2.0把除了动作外的其他活动信息称为活动节点这些活动节点主要分为3大类:v 参数节点v 对象节点v 控制节点精选ppt 参数节点用来表示一个参数进入一个活动或者一个参数从一个活动中输出参数节点用一个直角的长方形来表示 如图 参数节点是出现在活动框上的长方形,活动框上可以有一个或多个参数节点,它的一个边通常与活动框内的某个动作相连以表示它是这个动作的输入或输出数据,参数的输入来源于活动之外,参数的输出表示参数将输出到活动之外精选ppt 2. 对象节点 当UML活动图表达一个复杂的数据试图通过一个活动时,这个穿越活动的数据包被称为对象节点对象节点用于表示活动中移动的数据对象节点用矩形框表示,对象节点名可以加在矩形框内或外部,框内标明数据的名称。

      如图 对象节点与参数节点的差别是,对象节点与动作相连,参数节点是在活动框上的数据精选ppt 3. 控制节点 用于表示活动中的控制判断、同步运算、路径分叉、路径合并等特殊节点控制节点主要包括起始节点、判断节点、汇合节点、分叉节点、结合节点以及终点节点 如 图精选ppt 精选ppt 7.2.3 转换• 与状态图不同,活动图的转换一般不需要特定事件的触发一个动作状态执行完本状态需要完成的动作后会自发转换到另外一个状态• 当一个活动结束时,控制流就会马上传递给下一个活动结点,在活动图中称之为“转换”,用一条带箭头的直线表示箭头上还可带有监护条件,用来发送短句和动作表达式监护条件用来约束转移,监护条件为真时转移才可以开始,用菱形符号来表示分支精选ppt 7.2.4 组合活动• 一个活动还可以分为若干个动作或子活动,那么这些动作和子活动本身又可以组成一个活动图,嵌套了若干个动作或子活动的活动称为组合活动。

      组合活动是一种内嵌活动图的状态把不含内嵌活动或动作的活动称为简单活动,把嵌套了若干个活动或动作的活动称为组合活动 • 一个组合活动在表面上看是一个状态,但其本质却是一组子活动的概括一个组合活动可以分解为多个活动或者动作的组合每个组合活动都有自己的名字和相应的子活动图一旦进入组合活动,嵌套在其中的子活动图就开始执行,直到到达子活动图的最后一个状态,组合活动结束精选ppt 精选ppt • 如果一些活动状态比较复杂,就会用到组合活动• 使用组合活动可以在一幅图中展示所有的工作流程细节,但是如果所展示的工作流程较为复杂,就会使活动图难以理解,所以当流程复杂时也可将子图单独放在一个图中,然后让活动状态引用它   精选ppt 7.3 其他标记符 在活动图中,除了前面介绍的动作、活动、转换和组合活动4个主要的标记符以外,还存在几个次要的标记符:v 分支与合并v 分叉与汇合v 泳道v 对象流精选ppt 7.3.1 分支与合并• 分支在活动图中很常见,它是转换的一部分,它将转换路径分成多个部分,每一部分都有单独的监护条件和不同的结果。

      当动作流遇到分支时,会根据监护条件(布尔值)的真假来判定动作的流向• 分支的每个路径的监护条件应该是互斥的,这样可以保证只有一条路径的转换被激发在活动图中离开一个活动状态的分支通常是完成转换,它们是在状态内活动完成时隐含触发的• 要注意的是,分支应该尽可能地包含所有的可能,否则可能会有一些转换无法被激发这样最终会因为输出转换不再重新激发精选ppt • 合并指的是两个或者多个控制路径在此汇合的情况合并是一种便利的表示法,省略它不会丢失信息合并和分支常常成对使用,合并表示从对应分支开始的条件行为的结束•  在活动图中,分支与合并都用空心的菱形表示分支有一个输入箭头和两个输出箭头,而合并有两个输入箭头和一个输出箭头,如图7-5所示精选ppt 精选ppt • 需要注意区分合并和结合合并汇合了两个以上的控制路径,在任何执行中每次只走一条,不同路径之间是互斥的关系而结合则汇合了两条或两条以上的并行控制路径在执行过程中,所有路径都要走过,先到的控制流要等其他路径的控制流到达后才能继续运行•  在活动图中,分支与合并都是用空心的菱形表示分支有一个输入箭头和两个输出箭头,而合并有两个输入箭头和一个输出箭头。

      精选ppt 7.3.2 分叉与汇合• 在实际的控制流中,除了顺序结构、分支结构和循环结构之外,还可能存在并发的事件流并发指的是在同一时并发指的是在同一时间间隔内,有两个或者两个以上的活动执行间间隔内,有两个或者两个以上的活动执行• 为了对并发的控制流建模,在为了对并发的控制流建模,在UML中引入了分叉和汇中引入了分叉和汇合的概念合的概念精选ppt • 分叉用来表示将一个控制流分成两个或者多个并发运行的分支,它有一个进入转换,有两个或多个离开转换,也就是说分叉表示一个控制流被两个或多个控制流代替,经过分叉后这些控制流是并发的;而汇合用来表示并行分支在此得到同步,有两个或多个进入转换,一个离开转换,表示两个或多个控制流被一个控制流代替• 分叉和汇合在UML中的表示法相似,都用粗黑线表示分叉具有一个输入转换、两个或者多个输出转换,每个转换都可以是独立的控制流 如图7-6所示精选ppt 精选ppt • 汇合与分叉相反,结合具有两个或者多个输入转换,只有一个输出转换先完成的控制流需要在此等待,只有当所有的控制流都到达结合点时,控制才能继续往下进行。

      如图 7-7所示 要注意区分合并与汇合的不同合并结合了两个以上的控制路径在任何执行中,每次只走一条路径,不同路径之间是互斥的关系而汇合则结合了两条或两条以上的并行控制路径在执行过程中,所有路径都要走过,先到的控制流要等其他路径的控制流都到后,才能继续运行精选ppt 精选ppt 7.3.3 泳道•  为了表明活动图中各种元素的归属,UML用垂直线将不同归属的元素分开,将它称为活动划分,由于这种划分的外观很像泳道,所以也称为活动图中的泳道• 为了对活动的职责进行组织而在活动图中将活动状态分为了对活动的职责进行组织而在活动图中将活动状态分为不同的组,称为泳道为不同的组,称为泳道活动图可以使用泳道根据每个活动的职责对活动进行划分,每个泳道是一个责任区,代表特定含义的状态职责部分在活动图中,每个活动只能明确地属于一个泳道,泳道明确地表示了哪些活动是由哪些对象进行的每个泳道都有一个与其他泳道不同的名称精选ppt • 在活动图中,每个泳道通过垂直实线与它的邻居泳道相分离在泳道的上方是泳道的名称,不同泳道中的活动既可以顺序进行也可以并发进行。

      虽然每个活动状态都指派了一条泳道,但是转移则可能跨越数条泳道• 每个泳道可能由一个或者多个类实施,类所执行的动作或拥有的状态按照发生的事件顺序自上而下的排列在泳道内而泳道的排列顺序并不重要,只要布局合理、减少线条交叉即可精选ppt    考虑一个咨询公司和该咨询公司会见一个客户时的业务过程活动可能是像这样发生的:l公司业务员打给客户,确定一个约定;l如果约定地点是在公司之内,那么公司中的技术人员就要为会面准备一间会议室;l如果约定地点是公司之外,那么咨询顾问就要用膝上电脑准备一份陈述报告;l咨询顾问和业务员与客户在约定的时间和地点见面;l业务员随后给他们准备好会议用纸;l如果会议产生了一个问题陈述,咨询顾问就根据问题陈述建立编写一个提案并把该提案发给客户精选ppt •  每个泳道代表特定含义的状态职责部分在活动图中,每个活动只能明确地属于一个泳道,泳道明确表示了哪些活动是由哪些对象执行的每个泳道都有一个与其他泳道不同的名称•  在活动图中,每个泳道通过垂直实线与它邻居泳道相分离在泳道的上方是泳道的名称,不同泳道中的活动既可以顺序进行也可以并发进行虽然每个活动状态都指派了一条泳道,但是转移则可能跨越数条泳道. 如图7-8所示精选ppt 精选ppt 精选ppt 7.3.4 对象流• 活动图中交互的简单元素是活动和对象,控制流就是对活动和对象之间的关系的描述。

      控制流表示动作与其参与者和后继动作之间、动作与输入和输出对象之间的关系而对象流就是一种特殊的控制流 • 在活动图中,对象可以作为活动的输入或输出活动图中的对象流表示活动和对象之间的关系活动对对象施加了影响(如创建、修改、销毁对象等),对象作为活动的输出,对象流箭头从活动指向对象精选ppt • 活动图中交互的简单元素是活动和对象,控制流就是对活动和对象之间的关系的描述,它表示了动作与其参与者和后继动作之间以及动作和其输入或输出对象之间的关系• 对象流是将对象流状态作为输入或输出的控制流在活动图中,对象流描述了动作状态或者活动状态与对象之间的关系,表示动作使用对象以及动作对对象的影响精选ppt    对象流表示对象与对象、操作或产生它或使用它的转换间的关系为了在活动图中把它们与普通转换区分开,用带箭头的虚线而非实线来表示对象流如果虚线箭头从活动指向对象流状态,则表示输出   输出表示了动作对象施加了影响,影响包括创建、修改、撤销等如果虚线箭头从对象流状态指向活动,则表示输入输入表示动作使用了对象流所指向的对象流状态如果活动有多个输出值或后继控制流,那么箭头背向分叉符号反之,如果有多个输入箭头,则指向结合符号。

      如图7-10所示精选ppt 精选ppt 精选ppt 总结 创建一个UML活动图,需要反复执行下列步骤:(1)定义活动图要对什么建模•单个用例•一个用例的一部分•一个包含多个用户用例的业务流程•一个类的单个方法(2)添加起始和结束点   每个活动图有一个起始点和结束点3)添加活动   如果对一个用户案例建模,应该为每个参与者所发出的主要步骤添加一个活动如果对一个高层的业务流程建模,应为每个主要流程引入一个活动,通常为一个用例或用例包如果为一个方法建模,那么引入一个活动图是很常见的精选ppt (4)添加活动间的转换(5)添加决策点   有时候,所建模的逻辑需要做出一个决策有可能是需要检查某些事务或比较某些事务,可以选择使用控制节点6)找出可并行活动之处 当两个活动间没有直接的联系,而且它们都必须在第3个活动开始前结束,那它们是可以并行运行的并行活动可以按任意次序进行,但是它们都得在结束整个流程前完成精选ppt 状态图和活动图的不同之处((1)图标不完全一样,活动图中的活动是用比状态图的圆)图标不完全一样,活动图中的活动是用比状态图的圆角矩形更加椭圆的矩形表示;角矩形更加椭圆的矩形表示;((2)活动图是以活动为中心,而状态图是以状态为中心的)活动图是以活动为中心,而状态图是以状态为中心的((3)二者触发一个系统或对象的状态(或活动)发生迁移)二者触发一个系统或对象的状态(或活动)发生迁移的机制不同;的机制不同;((4)二者描述对个对象共同完成一个操作的机制不同。

      二者描述对个对象共同完成一个操作的机制不同5)活动图用来描述一个过程中的一系列连续的活动的顺)活动图用来描述一个过程中的一系列连续的活动的顺序,而状态图更适合于描述一个对象在一个生命周期中的序,而状态图更适合于描述一个对象在一个生命周期中的离散的不连续的某些状态离散的不连续的某些状态精选ppt 总结精选ppt 例子精选ppt 精选ppt 案例精选ppt 精选ppt 精选ppt 精选ppt 例子精选ppt 精选ppt 精选ppt 例子精选ppt 精选ppt 精选ppt 实例1:建立医院病房监护系统的动态模型用活动图描述系统在监护病人时的活动 医院病房监护系统,主要活动由“采集病症信号”、“分析比较信号”、“判断病症异常否”、“报警”、及“打印病情报告”等活动组成当病症出现异常时,立即报警,同时打印病情报告和更新病历,三者是并发执行的活动,因此使用同步线描述精选ppt 实例2:   以课程注册系统中的“学生浏览目录”为例,创建系统完整的活动图   对于“学生浏览目录”的用例来说,参与者是学生,涉及的用例是:• 根据科目查询课程• 根据课程目录浏览• 浏览课程精选ppt •   在开始创建用例的活动图时,往往先建立一条明显的路径执行工作流,然后从该路径进行扩展,下图为“学生浏览目录”的工作流示意图。

      •   学生在浏览器中输入网址进入首页,系统收到用户请求后,构建首页并显示学生在首页中有两种浏览课程信息的方法:通过科目查询浏览和课程目录页面输入课程编号查询浏览当系统获得用户的不同请求时,显示相应的课程信息给用户学生在页面浏览课程的详细信息浏览完毕退出精选ppt 精选ppt 活动图应用题 在网上书店中,会员选购图书、管理员管理图书和处理订单等都可以为其工作流程建立活动图2. 商品管理员活动图 网上书店的商品管理员需要管理图书信息、图书分类信息,以及特价书信息 3. 销售管理员活动图 主要管理会员订单4. 系统管理员活动图 主要维护管理员信息、管理会员和管理留言精选ppt 会员选购图书活动图精选ppt 商品管理员活动图精选ppt 销售管理员活动图精选ppt 系统管理员活动图精选ppt 实战模拟一 考虑一下使用考虑一下使用Office软件包建立一个文档的过程一个活动序列可软件包建立一个文档的过程一个活动序列可能如下:能如下:•打开打开Word字处理软件包字处理软件包;•新建一个文件新建一个文件;•命名该文档并为该文档指定一个存放目录;命名该文档并为该文档指定一个存放目录;•键入文档的内容键入文档的内容;•如果文档中需要图形,则打开图形软件包,创建图形,将图粘贴到文如果文档中需要图形,则打开图形软件包,创建图形,将图粘贴到文档中;档中;•如果文档中需要电子表格,则打开电子表格软件包,建立电子表格,如果文档中需要电子表格,则打开电子表格软件包,建立电子表格,将电子表格粘贴到文档中;将电子表格粘贴到文档中;•保存该文件;保存该文件;•打印一份该文档的硬拷贝;打印一份该文档的硬拷贝;•退出退出Office软件包。

      软件包 创建一个文档的过程的活动图创建一个文档的过程的活动图精选ppt 创建文档的活动图精选ppt 实战模拟二画出ATM机取款活动图(带泳道)精选ppt ATM机取款活动图精选ppt 状态图实例建模 画出电梯升降的状态图 电梯升降有5个状态:在第一层、向上移动、向下移动、空闲、向第一层移动 有3个循环圈:“空闲”状态与“向下移动”状态之间、“空闲”状态与“向上移动”状态之间、以及一个大循环 确定并标注引起状态转移的事件,“超时”是指电梯的空闲状态超过某个规定的时间值精选ppt 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.