- 1
- 0
- 约6.7千字
- 约 73页
- 2019-05-17 发布于江西
- 举报
软件需求分析与建模- 状态机和状态图 I 引 言 在软件系统中有这样一类对象, 它们一方面需要处理各种随机发生的事件序列,通过相应的动态行为产生对事件的响应 另一方面,其特定时刻的动态行为取决于此对象在早些时刻的行为的结果。 I 引 言 根据当前事件,以及对以前事件的响应的结果决定对当前事件的响应的软件对象的动态行为,称为是事件驱动的。 在UML里,最适合于描述这类动态行为的建模手段,就是状态机。 状态机 用状态:记录以前的动态行为的结果, 用变迁:描述软件对象对外来事件的响应以及响应的状态的变化。 例如:图1描述一个软件的图形用户界面的动态行为的状态机。 它描述的是一个位图观察器的图象浏览工具的动态行为。 它可以通过鼠标在窗口上拖动图象,以观察图象的不同局部。 在UML中,除了状态机之外,还有一种为动态行为建模的手段,这就是交互图。 交互强调的是对象之间的互相协作, 通过软件对象的交互实现软件系统的设计功能。 状态机则强调的是 对象本身对对象外部发生的事件的响应及伴随的状态的变化。 对状态机而言,它所能描述的对象是广义的。 状态机描述的对象 可以是类的实例, 可以是用例的实例, 甚至可以是非软件对象。 对于任何一个对象, 如果此对象的动态行为具有事件驱动的特性,就适合于用状态机来建模 2、状态机的定义及构成 状态机用于为具有事件驱动的特征的动态行为进行建模。 事件驱动的动态行为的特点: 对象当前时刻的动态行为将取决于:当前的事件输入和此对象在以前时刻的动态行为产生的结果。 为描述这类动态行为,状态机内部设置了 状态和变迁 在UML里,设有相应的图形符号以描述这些建模元素。 状态机:在类层次反映状态与状态转化的图,它是一个类的对象的所有可能的生命历程的模型。主要用来捕捉外部事件引起的变化,它将一个对象与其外部世界隔离开来独立考察其行为。不宜用来描述系统的整体运作(如有此要求,可用序图)。状态机用来描述界面和控制类业务比较合适。 状态是软件对象在其生存期内满足特定条件的存在,在此条件下,对象能执行特定的动作、或等待事件的发生。 状态被图形化表示为一个圆角矩形(图3)。 除了用圆角矩形表示的状态外, 还有两种特殊的状态,初始状态和终止状态。 状态机所在对象在创建后状态机产生的第一个变迁将从初始状态出发。 用带实心圆的圆环表示的状态称为状态机的终止状态(final state)。 变迁 变迁被定义为软件对象的两个状态之间的关系,表明在指定的事件发生后,在特定的条件下,对象执行指定的动作,并进入另一个状态。 变迁被图形化表示为 连接两个状态的箭头, 箭头起始端是变迁发生前的状态, 箭头所指的状态是变迁完成后的状态。 3、变迁的构成 变迁用来描述:状态机所在的对象所处的状态的变换。 变迁由事件触发,变迁的激发还将伴随着特定的动作的执行。 在UML里,变迁由五个部分构成,它们是: 起始状态 目标状态 触发事件(event trigger) 触发条件(guard condition) 变迁动作。 (1)、起始状态和目标状态 变迁被激发之前对象所处的状态就是变迁的起始状态 变迁完成之后,对象的状态发生了变化,这时对象所处的状态就是变迁的,目标状态。 在绘制状态机时, 变迁的起始状态位于表示变迁的箭头的起始位置; 变迁的目标状态是表示变迁的箭头所指向的那个状态。 一个变迁可以有多个起始状态, 这时,代表状态机所在对象中的多个控制流在变迁发生的时刻汇合为一个控制流。 一个变迁也可以有多个目标状态 它表示状态机所在对象在变迁被激发的时刻其中的一个控制流被分解为多个控制流。 (2)、触发事件 变迁的触发事件描述的就是引发状态机所在对象的动作的事件。 触发事件是状态机在某变迁的起始状态状态下能接受的一个事件,此事件的发生使得变迁的激发成为可能。 (3)、触发条件 要使变迁被激发,状态机所在对象必须还满足触发条件。 触发条件是一个布尔表达。 (4)、变迁动作(action) 变迁动作是伴随着变迁的激发被执行的一个元计算。 (5)、触发事件、触发条件、变迁动作的图形化表示 在绘制变迁时,变迁的触发事件、触发条件和变迁动作被表达成一个字符串被放置在表示变迁的箭头上。此字符串又被称为变迁的文字标记(text label)。变迁的文字标记的格式如下: 触发事件[触发条件]/变迁动作 什么是状态图? 状态图描述了一个对象或交互过程在它的生命周期中对一系列外界激励的所呈现出的不同状态以及它相应的响应和活动。 状态机用状态和瞬时过程的变化图形来表示是一个对象对外界激励下的响应。状态机一般附着在一个对象或具体的方法上。 状态图描述了一个状态机,在我们考虑的范围内,它们是同一件事。 状态图:描述交互对对象内部的影响,交互图中的消息在这里变
您可能关注的文档
- 国有企业反腐倡廉形势及对策教育课件.ppt
- 国之源多媒体教室使用说明书.doc
- 哈尔滨长江路延长线地块项目开发营销策略建议提案.ppt
- 含氨基酸水溶肥料.doc
- 含钛高炉渣综合利用技术的探讨.ppt
- 含异步清零和同步时钟使能的加法计数器设计.doc
- 函数的极值与导数导学案.doc
- 函数视角下的面积问题.doc
- 合并同类项 说课稿.doc
- 合肥工业大学操作系统课程设计 动态分区分配存储管理java版.doc
- 2026年中国窗饰产品市场全景调查与市场供需预测报告.docx
- 2026年中国船舶水下清洗行业深度研究报告:市场需求预测、进入壁垒及投资风险.docx
- 2026年中国船用绞车行业运行态势及十五五盈利前景预测报告.docx
- 2026年中国橱柜行业深度调研报告.docx
- 2026年中国船用绞车市场深度调研及投资前景战略分析报告.docx
- 2026年中国船用配套设备市场发展策略及投资潜力可行性预测报告.docx
- 2026年中国储能材料行业运营态势与投资前景预测分析报告.docx
- 2026年中国储氢材料行业运营现状及发展规划分析报告.docx
- 2026年中国传真机市场深度研究及投资前景咨询报告.docx
- 2026年中国储能变流器(PCS)产业深度评估与发展前景趋势分析研究报告.docx
最近下载
- GB/T 4340.1-2024金属材料 维氏硬度试验 第1部分:试验方法.pdf
- 高血压病人的护理(PPT).pptx VIP
- IEC 62446-1(中文版)光伏检测标准.pdf VIP
- 带头固本培元、增强党性方面存在的问题及下一步整改措施(“五个带头”8篇精选).docx VIP
- 呼吸机相关性肺炎的预防措施.ppt VIP
- 建筑电气工程《建筑工程施工工艺规程》山东省工程建设标准.doc VIP
- 2019年基金法律法规真题2.docx VIP
- 四年级语文下册《挑山工》教学设计.doc VIP
- 2019年基础医学知识竞赛练习题(5)其他医科组.docx VIP
- 2026年党建工作要点.pdf VIP
原创力文档

文档评论(0)