软件建模技术第10章状态机图资料.ppt

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
满足某一时间表达式的情况的出现。 例如到达某时间或经过了某一时间段。 用关键字After或When表示。 * (4)时间事件(time event) 对象处在某状态时外部事件产生了,但没有执行事件,要推迟到另外一个状态才执行的事件。 例如E-mail中正在发送第一封邮件时,用户下达发送第二封邮件命令被延迟,等到发送完第一封收件后,这封邮件就会被发送。 * (5)延迟事件(deferred event) 例:订单处理系统 * * 10.3 建立状态机图 绘制状态机图的一般步骤是: 1.寻找主要的状态; 2.寻找外部事件,以便确定状态之间的转换; 3.详细描述每个状态和转换; 4. 把简单状态图转换为复合状态图。 * 10.3 建立状态机图 1.寻找主要的状态 飞机票有以下4种状态:无预订、部分预订、预订完、预订关闭。 (1)在刚确定飞行计划时,显然没有任何预订,且在顾客预订机票之前都将处于“无预订”状态。 (2)对于订座而言,有“部分预订”和“预订完”两种状态。 (3)当航班快要起飞时,要“预订关闭”。 * 10.3 建立状态机图 2.寻找外部事件 (1)预订():顾客预订机票。 (2)退订():顾客退票。 (3)关闭():机票管理员关闭订票系统。 (4)取消航班():飞机调度人员取消飞行计划。 * 10.3 建立状态机图 3.确定状态间的转换 * 表10-1 事件与状态转换 源目标 无预订 部分预订 预订完 预订关闭 无预订 ? 预订() 不直接转换 关闭() 部分预订 退订()事件发生 后,使预订人=0 ? 预订(), 无空座 关闭() 预订完 不直接转换 退订() ? 关闭() 预订关闭 无转换 无转换 无转换 ? 10.3 建立状态机图 确定了状态之间的有效转换,绘制出相应的状态机图,如图10-18所示。 * 10.3 建立状态机图 4.详细描述每个状态和转换 详细描述后的状态图,见图10-19 * 10.3 建立状态机图 5.把简单状态图转换为符合状态图 转换后的符合状态图,见图10-20 * 10.4 状态机图应用范围 * 状态机图主要应用有两种: 一是,在对象生命周期内,对一个对象的整个活动状态建模; 二是,对反应型对象的行为建模。 实例—成绩管理系统 建模Grade对象 * * * 小结 介绍了“状态机图”的概念和UML表示法 通过例子说明简单状态机图、复合状态的状态机图的概念和阅读方法。 通过一个航班机票预订系统来阐述了状态图的构建过程。 * 思考 状态图与交互图的区别 状态图与活动图的区别 内部转换和自动转换的区别 * 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 第10章 状态机图 * 10.1 状态机图概述 10.2 状态机图基本元素 10.3 建立状态机图 10.4 状态机图应用范围 小结 10.1 状态机图概述 状态机图用来对系统的动态行为建模; 描述单一对象在其生命期内受各种事件的影响而发生的状态变化; 状态机图是展示状态与状态转换的图,可以描述对象的行为,也可以描述用例、协作和方法甚至整个系统的动态行为。 * 10.2 状态机图基本元素 * 图10-1 状态机图 初始状态 终止状态 中间状态 事件 转换 监护条件 活动 动作 分支 一、状态(state) 1、状态 对象生命周期中的某个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件。 * 说明: 对象在任何时候都会处于某种状态中,所有对象都有状态。 对象所处的状态决定了它如何响应所检测到的事件或所接受的消息。 通常,事件使对象从一种状态转向另一种状态(即状态的转移)。 * 例:CD播放器 一、状态(state) 2、状态的表示 状态名称 入口动作 出口动作 内部转换 内部活动 可推迟事件 * 状态示例 动作(Action) 可执行的原子计算。 不可中断,其执行时间可忽略不计。 两种特殊动作: 进入动作(entry action):进入某状态时执行的动作,用“entry/要执行的动作”表示。 退出动作(exit action):退出某状态时执行的动作,用“exit/要执行的动作”表示。 * 活动 对象处于某个状态时,对象进行的一些列动作。 表示活动的格式为“do/动作名” * 一、状态(sta

文档评论(0)

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

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

1亿VIP精品文档

相关文档