OOSE08活动视图.ppt

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

--活动视图 使用UML进行面向对象的分析 董瑞志 Email: hello_u@ MSN: nature_dong@ 联系电话引言 活动视图是一种特殊的状态机,用于对计算流程和工作流程建模。活动视图包含活动图建模机制。 活动图关注对象间发生的活动,它观测的是对象间传送的 操作。 活动图从活动到活动的流,活动最终导致一些动作,这些动作由可执行的原子计算组成。这些计算会导致状态的改变或一个值的返回。 活动图(1/2) 活动图是UML中用于对系统动态方面建模的机制。活动图从本质上是一个流程图,显示了从活动到活动的控制流。多数情况下,活动图包括对计算过程中执行步骤进行建模。 当对象在控制流的不同点上从状态到状态移动时候,用活动图可以对该对象的控制流进行建模。 活动图可以单独用来可视化、详述、构造和文档化对象群体的动态特征,也可以用来对一个操作进行建模。 活动图(2/2) 活动图中,活动是一个状态机中进行的非原子的执行单元,它最终导致系统状态的改变或一个值的返回。 活动图不仅对系统的动态特征建模,而且对于那些通过正向工程、逆向工程构造可执行的系统而言也是非常重要的。 入门(1/4) 考虑建房子有关的工作流: 入门(2/4) 在软件系统建模时候也会遇到类似的问题,如考虑软件项目开发维护过程的工作流(参考软件生命周期规律)。 如何捕获软件系统动态方面的工作流: 方法一:交互视图—顺序图、协作图; 方法二:活动图 入门(3/4) 入门(4/4) 基本概念 活动图一般包括: 活动 活动状态 动作状态 转换对象 注释 约束 活动 一个活动是一个状态机中进行的非原子执行单元。 活动最终导致一些动作,这些动作由可执行的原子计算组成。 动作包括调用一个操作,发送一个信号,创建/撤销某对象等。 动作状态 动作状态代表了可执行的原子计算,每一个原子计算都代表了一个动作的执行。 动作状态不能再分解,动作状态可以发生,但动作状态的工作不能中断。 在UML中动作状态的工作所占用的时间一般可以忽略。 活动状态 活动状态能够被进一步分解,他们的活动由其他的活动图表示。活动状态不是原子的,它允许中断执行。 一个活动状态可以看作一个组合,其控制流由其他的活动状态和动作状态组成。 放大一个活动状态的细节,可以看到另一个活动图。 在图形表示方面,活动状态可以在动作状态定义的基础上添加出口动作、入口动作等细节。为了在图形上可以把动作状态和活动状态区分开来,我们的活动状态名称的后面添加“()”的标记。 转换(1/2) 当一个活动状态/动作状态结束时候,控制流会马上传递给下一个活动状态/动作状态。 可以用转换显示从一个动作状态/活动状态到下一个活动状态/动作状态的路径。 从语义上讲,这种转换称作无触发转换或完成转换,因为一旦源状态的动作完成,立即执行该状态的退出动作(如果有)。接着控制流不加延迟的跟着转换传送到下一个活动状态/动作状态。 转换(2/2) 初始状态和终止状态 通常一个控制流都会从某个地方开始到某个地方结束,所以在活动图中需要说明初始状态和终止状态。 提示 活动状态、动作状态仅仅是状态机中状态的特殊种类。 当进入一个动作状态/活动状态时你是简单的执行动作/活动状态; 当结束一个动作/活动状态时控制权就传送给下一个动作状态/活动状态。 一个活动状态在语义上等价于在适当地点展开的活动图,直到该活动图紧紧看到动作为止。 分支(1/2) 分支描述了基于某个布尔表达式的可选择的路径。 一个分支可以有一个进入转换、多个离开转换。在每一个离开转换上都放置一个布尔表达式,该布尔表达式仅仅在进入这个分支时被判断一次。需要指出所有离开转换中其监护条件不能重叠。 为了方便可以采用else标记一个离开转换,即其他监护表达式都不为真时候执行的路径 分支(2/2) 分叉和汇合(1/3) 并行控制流的分叉和汇合均采用同步棒表示,如图所示: 分叉和汇合(2/3) 一个分叉可以有一个进入转换和两个或多个离开转换,每个转换表示一个独立的控制流。 在这个分叉之下,每个路径相关的活动将并行展开。从概念上讲,这些流中的每一个流的活动都是真实的并发。 分叉和汇合(3/3) 一个汇合表示两个或更多个并发控制流的同步发生。一个汇合可以有两个或多个进入转换和一个离开转换。 在该汇合上方,与每一个路径相关的活动并行执行。在汇合处取得同步,即每一个流都等待着,直到所有进入流都达到这个汇合处,然后在这个回合的下面只有一个控制流从这一点继续执行。 泳道 泳道是活动图中对象状态的分组机制,每一个泳道/分组表示负责这些活动的组织。 每个泳道代表了一个活动图的全部活动中部分活动的高层职责,且每个泳道最终可能由一个或多个类实施。 在一个被划分为泳道的活动图中,每个活动都明确的属于一个泳

文档评论(0)

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

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

1亿VIP精品文档

相关文档