软件工程软件工程软件工程 (47).pdf

上传人:刘静 文档编号:52727079 上传时间:2022-10-23 格式:PDF 页数:9 大小:907.21KB
返回 下载 相关 举报
软件工程软件工程软件工程 (47).pdf_第1页
第1页 / 共9页
软件工程软件工程软件工程 (47).pdf_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《软件工程软件工程软件工程 (47).pdf》由会员分享,可在线阅读,更多相关《软件工程软件工程软件工程 (47).pdf(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、“状态“状态”建模建模 什么是状态什么是状态 一个对象的状态空间一个对象的状态空间 具体状态与抽象具体状态与抽象 状态状态 有限状态机的主要元素有限状态机的主要元素 状态和转移状态和转移 事件和行为事件和行为 模块化的状态机模型模块化的状态机模型:状态图状态图 组合状态和子状态组合状态和子状态 绘制状态图的方法绘制状态图的方法 对象及其状态对象及其状态 所有的对象都有“状态”对象存在或者不存在 对象不存在也是一种状态 如果对象存在,则具有相应表示其属性的值 每一种状态表示一种可能的状态赋值 例如:栈 2 empty empty 1 item 1 item Push()Pop()new()2 i

2、tems 2 items 3 items 3 items 4 items 4 items Push()Push()Push()Pop()Pop()Pop()Top()Top()Top()Top()有限状态机有限状态机 有限数量的状态(所有的属性取值为有限的范围)例如,一个最大容量为4的栈 模型可以表示动作序列(状态变化)例如.new();Push();Push();Top();Pop();Push()例如 new();Push();Pop();Push();Pop()3 empty empty 1 item 1 item Push()Pop()new()2 items 2 items 3 it

3、ems 3 items 4 items 4 items Push()Push()Push()Pop()Pop()Pop()Top()Top()Top()Top()状态空间状态空间 对于大部分对象而言,状态空间是非常庞大的 状态空间大小是对象每个属性取值空间的乘积加1 例如.具有5个布尔值属性的对象有 25+1 个状态 例如.具有5个整数值属性的对象有(maxint)5+1个状态 例如.具有5个实数值属性的对象具有?个状态 如果忽略计算机表示的局限性,状态空间是无限的 4 empty empty 1 item 1 item Push()Pop()new()2 items 2 items 3 it

4、ems 3 items 4 items 4 items Push()Push()Push()Pop()Pop()Pop()Top()Top()Top()Top()状态的抽象表示状态的抽象表示 但往往状态空间中的局部更有探究的价值 有一些状态是不可能出现的状态 整数或实数值属性往往只在一定范围内取值 通常,我们只关注特定约束下的对象及其行为 例如.对于年龄,我们经常选择以下的范围:age 65 例如.对于费用信息,我们更关注的约束划分为:cost budget,cost=0,cost budget,cost (budget+10%)5 6 模型建立的过程模型建立的过程状态空间的分解状态空间的分解

5、 empty empty not empty not empty Push()Push()Pop()sc=1 new()Pop()sc1 Top()抽象之后的模型可以表达更多的状态序列 例如.上面的模型并不能防止pop()多于push()的序列出现 仍然表达了很多信息 empty empty 1 item 1 item Push()Pop()new()2 items 2 items 3 items 3 items 4 items 4 items Push()Push()Push()Pop()Pop()Pop()Top()Top()Top()Top()建模什么建模什么?现实世界还是机器世界现实世

6、界还是机器世界 7:personperson age havebirthday()child child adult adult havebirthday()age=18 havebirthday()age=65 havebirthday()age 18 havebirthday()age 18 when thisyear-birthyear65 blank blank deceased deceased recordBirth()/setDOB()recordDeath()/setDateofDeath():personperson dateOfBirth dateOfDeath recor

7、dBirth()setDOB()recordDeath()setDateofDeath()senior senior 对什么建模对什么建模?(D)应用领域实体的可观测状态 例如.一个电话的状态有空闲,响铃,接通 模型表达了实体可能处于的状态,以及什么操作会造成状态的变化 是一种描述(Indicative)模型:描述实体当前状态(R)应用领域实体所需要的行为 例如.电话交换机当且仅当被呼叫的人接受了电话请求才会连接两个电话 模型可以区分一系列状态序列或操作路径是否能达到预期的结果 是一种愿望(Optative)模型:描述动作及其预期结果 8 应用领域应用领域 机器领域机器领域 D 领域特征(do

8、main properties)R 需求(requirements)C-计算机(computers)P-程序(programs)(S)机器领域实体的具体行为 例如,当用户摁“连接”摁扭,打入的电话将会被接通 模型表达了机器该如何响应输入的事件 这是一个愿望(Optative)模型,所有的事件是共有的。这是描述(这是描述(indicativeindicative)模型还是愿望(模型还是愿望(optativeoptative)模型呢模型呢?9 idle idle connected connected ringing ringing dial dial tone tone busy busy on hook on hook on hook on hook on hook on hook on hook on hook off hook off hook Dial Dial calleecallee busy busy Dial Dial calleecallee idle idle CalleeCallee accepts accepts CalleeCallee disconnects disconnects 思考题思考题

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com