欢迎来到天天文库
浏览记录
ID:22025537
大小:443.00 KB
页数:67页
时间:2018-10-21
《uml第5章 动态模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章动态模型5.1事件和状态5.2操作5.3嵌套状态图5.4并发性5.5动态模型的实例5.6对象模型和动态模型的关系5.7实践技巧我们更需要了解所有时间内对象的变化和对象之间关系的变迁,这也正是系统所关注的时序关系(时序关系理解起来比较困难)。这就产生了一种与静态结构(对象模型)相对应的、与时间有关的和与变化有关的内容,把这种结构称为动态模型。动态模型的主要概念是表示外部触发的事件和表示对象值的状态。状态图(有穷状态机的图形表示法)是一种标准计算机科学概念,它可以根据不同的使用,用不同的控制方法来处理。5.1事件和状态对象模型描述系统中的对象、属性和链接
2、的合理的模式。对象所拥有的属性值和链接称为对象的状态.从一个对象到另一个对象的单个触发称为事件。5.1.1事件事件不具有持续性,当然没有一个事件是真正瞬间的;事件是一个简单的当前值,此值的发生比给定抽象的短的时间区间还要快。一个事件是单方向地从一个对象到另一个对象的信息传送,它不像子程序调用那样返回一个值。如图5-1所示了一些具有属性的事件类的例子,表明是否有属性的部分是可选的。图5-15.1.2脚本和事件轨迹脚本是系统一个特定执行期间所发生的事件序列。脚本可以是系统运行的历史记录,也可以是执行一个预想系统的构思的试验。事件序列和交换事件的对象能同时在扩张
3、的脚本中表示出来,这就称为事件轨迹图。5.1.3状态状态是根据影响对象总的行为的性质,一系列组合在一起是一个状态。状态有持续性,它占有一个时间间隔。在定义状态时,忽略那些不影响对象行为的属性,并把对事件所有相同响应的属性值和链接组合在一起,合并为一个状态。一个状态能用不同的方法表示它的特征。图5-2是钟的“闹铃”状态的各种特征表述。图5-25.1.4状态图状态图与事件和状态紧密相关。当一个事件被接收时,下一个状态依赖于当前的状态以及这个事件;由事件所引起的状态改变称为变迁(transition)。状态图用结点表示状态,用方向弧和标明事件名表示变迁。一个状态
4、画成矩形圆角框并含有可选的名字,变迁用从接受状态到目标状态的箭头表示,在箭头上标明产生变迁的事件名,所有脱离某一状态的变迁必对应不同的事件。状态图详细说明了由事件序列引起的状态序列。图5-3描述了电话线行为的一个状态图。图5-3状态图描述了对象单一类的行为。因为一个类的所有实例有相同的行为,所以它们共享相同的状态图,就像它们所有共享相同的类特征一样。状态图能够表示为单步生命周期,或表示为连续循环。动态模型是通过共享事件交互的状态图的汇集。就像对象类那样,状态图是一种模式,它描述一个完整的(可能是无限的)序列的范围。脚本对于动态模型的关系,就像实例图对于对象
5、模型的关系一样。5.1.5条件条件是对象值的一个布尔函数,能用作变迁的“警戒”。图5-4表示了具有警戒变迁的十字路口交通指示灯的状态图。图5-45.2操作状态图介绍到现在,仅描述了单个对象类的事件和状态的模式。本节将说明事件如何触发操作。5.2.1控制操作一个对象的行为描述必须指出在事件的响应中该对象做些什么。在响应所对应的状态和事件过程中,完成依附于状态和变迁的操作。一个活动可以是连续的操作。一个活动也可以包括经过一段时间间隔之后的自动终结顺序操作。一个状态可以控制。一个连续性活动,这种控制可以持续到一个事件使该状态发生变迁时才结束。动作与事件有关,动作
6、表示相对于状态图的变迁来说时间延续不重要的操作。动作也能表示内部控制操作,诸如设定属性或产生另一个事件。图5-5表示工作站上弹出菜单的状态图。图5-55.2.2操作的状态图小结图5-6概括了5.1和5.2节中的非结构化的状态图。状态名写在矩形圆角框内用黑体表示,事件名写在变迁箭头的上方,后面括号内可跟一个或多个属性,条件列在事件名后的方括号内。图5-65.3嵌套状态图状态图完全可以构造复杂系统的精确描述。构造状态机制的方式与构造对象的方式类似于概括和聚合。概括等价于扩展嵌套活动。它允许对活动作高层描述,然后再在低层进行扩充添加细节,这类似于嵌套过程调用。聚
7、合允许把状态划分成互不相关的纵向分量,它们之间仅有有限的交互,这类似于对象聚合的层次体系结构。5.3.1平状态图问题状态图因为明显缺乏表达能力和对大的问题不适用而经常受到批评。这些问题对于平的、非结构化的状态图来说,的确是一个问题。如图5-7所示的状态图。图5-75.3.2嵌套状态图状态的活动能扩展成低层状态图,每个状态表示该活动的一步。嵌套活动是单步的有输入输出变迁的状态图,类似于子程序。图5-8表示了一个自动售货机的顶层模型。这个图包含了分发物品的活动和选择物品的事件,在嵌套状态图中作了更详细的扩充。图5-8图5-9表示为图5-8的分发物品的子图。这个
8、活动相对应于在原来高层状态图中没有表示出来的低层状态和事件序列。图
此文档下载收益归作者所有