




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,第10章状态机图,10.1状态机图概述,10.2状态机图基本元素,10.3建立状态机图,10.4状态机图应用范围,小结,2,10.1状态机图概述,状态机图用来对系统的动态行为建模;描述单一对象在其生命期内受各种事件的影响而发生的状态变化;状态机图是展示状态与状态转换的图,可以描述对象的行为,也可以描述用例、协作和方法甚至整个系统的动态行为。,3,10.2状态机图基本元素,图10-1状态机图,初始状态,终止状态,中间状态,事件,转换,监护条件,活动,动作,分支,4,一、状态(state),1、状态对象生命周期中的某个条件或状况,在此期间对象将满足某些条件、执行某些活动或等待某些事件。,说明:对象在任何时候都会处于某种状态中,所有对象都有状态。对象所处的状态决定了它如何响应所检测到的事件或所接受的消息。通常,事件使对象从一种状态转向另一种状态(即状态的转移)。,5,例:CD播放器,6,一、状态(state),2、状态的表示状态名称入口动作出口动作内部转换内部活动可推迟事件,状态示例,7,动作(Action)可执行的原子计算。不可中断,其执行时间可忽略不计。两种特殊动作:进入动作(entryaction):进入某状态时执行的动作,用“entry/要执行的动作”表示。退出动作(exitaction):退出某状态时执行的动作,用“exit/要执行的动作”表示。,8,活动对象处于某个状态时,对象进行的一些列动作。表示活动的格式为“do/动作名”,9,一、状态(state),3、状态的分类初态终态简单状态(中间状态)组合状态历史状态,10,显示状态图中状态机的执行(execution)的开始。一个状态机只能有一个初态。如果一个状态机用多张图描述,则多张图用同一个初态。如果用了组合状态,则组合状态中可有初态。,(1)初始状态(StartState),11,表示一个最后的或者终端状态。,(2)终止状态(EndState),一张图中终态可以有多个,也可以没有。,12,(3)简单状态,组成:状态名进入/退出动作内部转移-不导致状态改变的转换,不会执行entry和exit动作。内部活动延迟事件-延迟到下一状态处理的事件。,13,例:状态示例,14,含有子状态的状态称为组合状态。,(4)组合/嵌套状态,15,两种类型:,顺序子状态复合状态包含的多个子状态之间是互斥的;复合状态只包含一个状态机。并发子状态复合状态包含两个或多个并发的子状态机。,(4)组合/嵌套状态,16,两种类型:,并发子状态,顺序子状态,(4)组合/嵌套状态,17,复合状态的表示法有2两种:(1)将子状态机嵌入表示状态的圆角矩形中(2)在圆角矩形中加入加分解指示符,(4)组合/嵌套状态,18,(5)历史状态,使用历史状态,则可以存储退出组合状态时所处的子状态,则返回组合状态时可以直接回到相应的子状态。,19,二、转换(transition),1、转换两个状态之间的一种关系,表示对象在第一个状态中执行一定的动作,并在某个特定事件发生而且满足某个条件时进入第二个状态。转换进入的状态称为活动状态,转换离开的状态变变为非活动状态。,20,二、转换(transition),2、转换的格式事件(参数)条件/动作Helplen(PSW)6/verifyPSW.help()每个转移只允许一个事件,一个事件只允许一个动作。,21,二、转换(transition),3、转换的分类外部转换内部转换自动转换复合转换,22,一种改变对象状态的转换,用从源状态到目标状态的箭头表示。,(1)外部转换,23,有一个源状态但没有目标状态,转换后的状态仍是它本身。,(2)内部转换,24,在没有外部事件的作用下,对象执行了某些活动后,自然而然地完成的转换。自动转换是离开某个状态后重新进入原先的状态,它会激发状态的入口动作和出口动作的执行。,(3)自动转换,25,复合转换由简单转换组成,通过分支判定,把多个简单转换组合在一起。,(4)复合转换,26,三、事件(Event),1、事件是对一个时间和空间上占有一定位置的有意义的事情的规格说明。2、事件的类型信号事件调用事件变化事件时间事件延迟事件,27,所谓信号,是指由一个对象异步地发送、并由另外一个对象接收的一个已命名的对象。信号事件表示对象接收到某个信号。,(1)信号事件(signalevent),信号可以作为状态机中一个状态转换的动作而被发送,也可作为交互中的一个消息发送。,28,一个对象请求调用某个对象的成员方法;是一种同步机制。,(2)调用事件(callevent),29,某个指定属性值为真时,事件得到触发。用关键字When,后面跟布尔表达式。When(temperature120)/alerm(),(3)变化事件(changeevent),30,满足某一时间表达式的情况的出现。例如到达某时间或经过了某一时间段。用关键字After或When表示。,(4)时间事件(timeevent),31,对象处在某状态时外部事件产生了,但没有执行事件,要推迟到另外一个状态才执行的事件。,(5)延迟事件(deferredevent),32,例:订单处理系统,33,34,10.3建立状态机图,绘制状态机图的一般步骤是:1寻找主要的状态;2寻找外部事件,以便确定状态之间的转换;3详细描述每个状态和转换;4.把简单状态图转换为复合状态图。,35,10.3建立状态机图,1寻找主要的状态飞机票有以下4种状态:无预订、部分预订、预订完、预订关闭。(1)在刚确定飞行计划时,显然没有任何预订,且在顾客预订机票之前都将处于“无预订”状态。(2)对于订座而言,有“部分预订”和“预订完”两种状态。(3)当航班快要起飞时,要“预订关闭”。,36,10.3建立状态机图,2寻找外部事件(1)预订():顾客预订机票。(2)退订():顾客退票。(3)关闭():机票管理员关闭订票系统。(4)取消航班():飞机调度人员取消飞行计划。,37,10.3建立状态机图,3确定状态间的转换,表10-1事件与状态转换,38,10.3建立状态机图,确定了状态之间的有效转换,绘制出相应的状态机图,如图10-18所示。,39,10.3建立状态机图,4详细描述每个状态和转换详细描述后的状态图,见图10-19,40,10.3建立状态机图,5把简单状态图转换为符合状态图转换后的符合状态图,见图10-20,41,10.4状态机图应用范围,状态机图主要应用有两种:一是,在对象生命周期内,对一个对象的整个活动状态建模;二是,对反应型对象的行为建模。,42,实例成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年剪切机床项目提案报告
- 神奇的太空之旅想象文4篇
- 2025广西百色干部学院招聘教研人员3人考前自测高频考点模拟试题(含答案详解)
- 2025河南新乡某国有企业招聘人力资源部经理1名考前自测高频考点模拟试题附答案详解
- 2025年蚌埠五河县乡村医生“乡聘村用”招聘30人模拟试卷及答案详解一套
- 2025年春季北燃实业集团校园招聘模拟试卷附答案详解(典型题)
- 企业资质提升承诺函(7篇)
- 2025江西抚州市妇幼保健院编制外临床医师招聘7人考前自测高频考点模拟试题及答案详解1套
- 2025广东汕头市潮阳区教育局属下学校外出招聘硕士研究生18人(编制)考前自测高频考点模拟试题及一套参考答案详解
- 2025包头白云鄂博矿区就业困难人员公益性岗位招聘考前自测高频考点模拟试题有答案详解
- 保险基础知识培训
- 口腔药品急救知识培训课件
- 2025年教育系统学校中层后备干部选拔考试题(含答案)
- 养老院安全培训考试题及答案解析
- DB32-T 5192-2025 工业园区碳排放核算指南
- 湖南省九校联盟2026届高三上学期9月第一次联考日语试题(含答案)
- 时事政治讲座课件
- 四次侵华战争课件
- 2025年成人高考试题及答案
- 2025年上海市公安辅警、法检系统辅助文员招聘考试(职业能力倾向测验)历年参考题库含答案详解
- 2025年上海市大数据中心工作人员公开招聘考试参考题库及答案解析
评论
0/150
提交评论