面向对象的分-析设计 活动图 交互图.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象的分-析设计 活动图 交互图

客户需求分析中的活动图 活动是某件事情正在进行的状态。 活动在状态机中表现为一个由一系列动作组成的非原子的执行过程。 活动图是一种描述系统行为的图,它用于展现参与行为的类所进行的各种活动的顺序关系。 活动图用来表示完成一个操作所需要的活动,或者是一个用例实例的活动。 活动图特别合适描述动作流和并发处理行为。 需求分析阶段,用活动图来对用例具体实现的过程(流程)进行描述。 活动图与状态图都是状态机的表现形式。 活动图作为UML为软件对象的动态行为建模的一种手段,其侧重点在于 描述控制在活动之间的流动, 因此,它也可以看成是一种流程图。 作为流程图,它主要有两种用途, 第一是为业务流程建模; 第二是为对象的特定操作建模。 当活动图用来为业务流程建模时,它所起的作用主要是:为软件系统的需求分析提供一种视化、交流和建档的手段。这时,可以 利用泳道代表不同的业务部门, 用活动代表不同的业务步骤。 在转入系统建造阶段时, 根据泳道的划分,确立相应的协同, 并可以用相应的交互和交互图来对软件的动态行为进行细化, 并为软件的逻辑设计打下基础。 作为流程图,活动图还可以为对象的特定操作执行流程进行建模。 这时,活动图是软件动态行为的较深层的抽象, 可以根据活动图的定义,对对象的操作的进行程序编码。 从这个意义上说, 活动图也可以看作对交互图中描述的交互的细化。 交互图定义对象之间的配合, 活动图定义这些配合的实现。 2. 描述工程组织过程 1. 描述工作流 软件对象的动态行为是由一个个的动作构成的。 动作是状态机内原子的计算的执行。 所谓原子,指的是 构成动态行为的最小单位, 动作的执行是不可打断的, 动作的执行时间是可以忽略的。 在活动图中, 对动态行为的建模 是通过附加在状态中的动作实现的。 UML使用专门的图形符号代表动作状态和活动状态,此图形符号 是一个上下为平行直边,两侧用圆弧连接的图形框。 对于动作状态, 其动作就写在图形框内。 UML对动作没有规定严格的语法,因此 可以用一文本串描述动作, 也可以用任何一种程序设计语言的语句的语法书写动作文本串。 (2)、活动状态 在UML里, 活动是软件对象非原子的计算的执行。 活动可以被进一步地分解为一系列的动作。 在活动状态机里, 如果全部用动作状态来描述对象的动态行为, 那么产生的活动图将由许多十分细小的动作状态组成,使得活动图过于繁杂。 在大多数的情况下,软件对象的动态行为 可以用一系列的子过程来表达, 而不需要细化至每个原子的计算。 (3)、无触发变迁 无触发变迁又称为完成变迁。 它在活动状态机里用于为动作的自动执行建模。 在UML里,完成变迁是不包含触发事件的变迁。 如果无触发变迁的起始状态是一个简单状态(即不包含子状态的状态) 那么此变迁在起始状态的入口动作和状态活动执行完毕之后被激发; 如果起始状态是一个复合状态, 那么此变迁在复合状态的内嵌状态机都到达结束状态后被激发。 之后, 源状态的出口动作被执行; 状态机转入变迁的目标状态。 4、分支 条件判断是最基本的程序结构, 它代表软件对象在不同的判断结果的条件下,所执行的不同动作。 作为为非反应型对象的动态行为进行建模的建模手段,活动图提供了描述这种程序结构的建模元素,这就是 分支(branch)。 分支是状态机的一个建模元素,它代表由一个触发事件在不同的触发条件下激发的多个变迁。 分支在活动图上用一个菱形表示,它包括 至少 一个输入变迁 和多个输出变迁, 其中的输出变迁都是 带触发条件的完成变迁, 触发条件的书写格式可以是一个布尔表达式。 分支的输出变迁可以多于两个,当分支的输入变迁被激发后, 分支的各输出变迁的触发条件 必须有一个求值为真, 否则状态机的执行将被冻结。 为了避免状态机被冻结的情形出现… … 5、循环 在活动图里引入了分支以后,可以以它为基础描述其它的程序结构。 例如,下面的c语言的循环语句,就可以用下图的活动图表示。 for(i=1;i10;i++) { Action(i); } 6、分解和汇合 在状态机图中,并发的控制流的建模使用: 并发子状态。 在活动图中,使用的表示方法是: 分解(fork) 和汇合(join) 在UML里, 分解表示一个控制流被分解为两个或多个并发执行的控制流。 汇合代表两个或多个控制流的同步。 只有当所有的控制流都到达汇合点之后,控制才继续向下流动。 在分解和汇合的表示使用的是: 同步条(synchronization bar)。 同步条是一个粗的水平线。 当同步条表示分解时,可以有:一个转入变迁,两个或多个转出变迁 当同步条用来表示汇合时, 它可以有 两个或多个转入变迁, 一个转出变迁。 其中的转入变迁代表同步之前的多个并发控

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档