网站大量收购闲置独家精品文档,联系QQ:2885784924

10软件工程 课件.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * “脚本” 原指“表演戏曲、话剧,拍摄电影、电视剧等所依据的本子,里面记载台词、故事情节等”。 * * * * * * 21 * * * * Imp comments: 没有查帐事务, 退卡,请求继续 不在需求中;请求继续=询问, 加入停机,考虑断电后电池弱时停机 * IMP:合并为一,加等待ATM请求, ONLY ONE INIT STATE 若1个类有2个无共态的状态图,可能应为2个类。 +1 way to communicate with ATM: a/synchronic, different efficiencies and securities, but it is more a design issue. * * * * * * * * * * 面向对象方法学比较自然地模拟了人类认识客观世界的思维方式,它所追求的目标和遵循的基本原则,就是使描述问题的问题空间和在计算机中解决问题的解空间,在结构上尽可能一致。 * * 如何确定事件 通过分析脚本,可从中提取出所有外部事件。 事件包括系统与用户交互的所有信号、输入、输出、中断、动作等等。 例如,储户插入现金兑换卡。 不能遗漏了异常事件和出错。 某些事件可以按类组合在一起。 例如,“吐出现金”是一个事件类,吐出的具体的现金数 额用参数/属性值表达。 区分出每类事件的发送对象和接受对象。 ATM系统正常情况下的事件跟踪图 时间 对象 事件/消息 顺序图(Sequence Diagram) 顺序图也称为序列图,它按时间顺序显示对象之间的交互。 registration manager math 101 : Student registration form math 101 section 1 1: fill in info 2: submit 3: add course(joe, math 101) 4: are you open? 5: are you open? 6: add (joe) 7: add (joe) 一张状态图描绘一类对象的行为,它确定了由事件序列引出的状态序列。 从一张事件跟踪图出发画状态图时,仅考虑影响对象的一类事件。 两个事件之间的间隔就是一个状态(也可能不变)。 从竖线射出的箭头线,常是对象达到某个状态时所做的行为(也常是引起另一类对象状态转换的事件)。 要把从不同脚本或事件跟踪图得到的同一类的状态图合并。 10.4.4 画状态图 考虑完正常事件之后再考虑边界情况和特殊情况. 如,用户要求取消该当前事务, “超时”, 停电/机。 不能省略对用户出错情况的处理。 一张覆盖了脚本中某类对象的全部事件的状态图仍可能会一些遗漏的情况。 设想各种可能出现的情况,多问几个“如果……,则……”的问题是一种测试完整性的方法. 尽量给每个状态取个有意义的名字。 10.4.4 画状态图 以ATM系统为例: “ATM”、“柜员终端”、“总行”和“分行”都是主动对象,它们相互发送事件; “现金兑换卡”、“事务”和“账户”是被动对象,并不发送事件。 “储户”和“柜员”虽然也是动作对象,但是,它们都是系统外部的因素,无须在系统内实现它们。 ATM的状态图 图10.10 总行类的状态图 各个类的状态图通过共享事件联系(合并)起来,构成了系统的动态模型。 应该检查系统级的完整性和一致性。 对于没有前驱或没有后继的状态应该着重审查,如果这个状态既不是交互序列的起点也不是终点,则发现了一个错误。 10.4.5 审查动态模型 应该审查每个事件,跟踪它对系统中各个对象所产生的效果,以保证它们与每个脚本都匹配。 例: ATM系统 在总行类的状态图中,事件“无效代码”, 是由总行发出的,但是在ATM类的状态图中并没有一个状态接受这个事件。因此,在ATM类的状态图中应该再补充一个状态“do/显示分行代码错信息”,它接受由前驱状态“do/验证账户”发出的事件“无效代码”,它的后续状态是“退卡”。 10.4.5 审查动态模型 10.5 建立功能模型 功能模型 含义 功能模型描述的是系统内值的变化,以及通过值的变化表现出来的系统功能、映射、约束、功能依赖的条件。 内容 确定输入值和输出值 画出数据流图 (DFD) 以表示功能之间的依赖关系 描述各功能 确定约束 详细说明优化标准 功能模型 (续) 基本概念和图形表示 处理 数据流 数据流的克隆 vs. 数据流的分离

文档评论(0)

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

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

1亿VIP精品文档

相关文档