第04章 形式化说明技术.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第04章 形式化说明技术.ppt

第四章 形式化说明技术 4.1 概述 4.1.1非形式化方法的缺点 非形式化是指用自然语言描述软件需求(如系统规格说明书)。因此,可能存在矛盾性、二义性、含糊性、不完整性、抽象层次混乱等问题。 4.1.2形式化方法的优点 形式化方法是指在软件工程中引入数学方法和模型。利用数序的简洁性、严谨性、科学性,克服非形式化方法的缺点。 4.1.3应用形式化方法的准则 “软件需求”是软件产品的高层、概念模型,而“形式化方法”是严谨、科学的数学方法,因此,在形式化方法的应用方面应考虑适度性、实用性、实用性。 常用的形式化方法 较严格的形式化方法(语法和语义都严谨):有穷状态机、Petri网、Z语言……… 半形式化方法(语法和语义都不太严谨) :系统流程图、数据流图、数据字典、ER图、数据库范式、状态转换图、层次方框图、Warnier图、IPO图、IPO表……… 4.1.1非形式化方法的缺点 矛盾性 在需求规格说明书(Reqirement Specifications)中对同一问题前后存在不同的描述。 二义性 需求规格说明书的读者对其中同一问题的描述存在不同的理解。 含糊性 需求规格说明书中对某一问题的描述不清晰、不可理解、不知如何实现、不具可操作性。 不完整性 需求规格说明书中对某一问题的描述不完整。只说明了局部,没有说明整体;或者只说明了概要,未说明细节。因此不具可操作性。 抽象层次混乱 在不同层次的抽象模型中内容混乱,如在高层模型中混有底层细节,造成读者不能理解系统的整体功能和下级功能。 4.1.2形式化方法的优点 可严谨地描述软件需求中的问题 可简介、准确描述物理现象、对象或动作的结果问题;适用于描述详细的需求规格;可用数学方法验证需求。 可在软件工程不同阶段平滑过渡 从需求、到设计、到实现都基于同一系统模型,平滑过渡。 可提供高层确认手段 可用数学方法证明软件工程各阶段的正确性(可回溯性),如“设计”符合“规格说明”、“编码实现”符合“设计”。 形式化方法的适用性问题 形式化方法能较好地解决需求的“二义性”、“含糊性”问题。但不能解决需求的矛盾性、完整性等问题,这些问题涉及工程管理。 4.1.3 应用形式化方法的准则 应该选用适当的规格说明表示方法 应该采用形式化,但不要过分形式化 应该估算推行形式化的成本 应该引入形式化方法的顾问与咨询 应该结合传统的、证明有效的开发方法 应该在采用形式化的同时,建立详尽的文档 应该坚持质量保障活动 应该不总是盲目依赖形式化方法 应该重视测试 应该重视重用 4.2 有穷状态机 4.2.1 有穷状态机概念 4.2.2 有穷状态机例子 4.2.3 有穷状态机方法评价 4.2.1 有穷状态机概念 通过简单例子引入有穷状态机的基本概念: 一个保险箱上装了一个复合锁,锁有三个位置,分别标记为 1 、 2 、 3 ,转盘可向左 (L) 或向右 (R) 转动。这样,在任意时刻转盘都有 6 种可能的运动,即 1L 、 1R 、 2L 、 2R 、 3L 和 3R 。保险箱的组合密码是 1L 、 3R 、 2L ,转盘的任何其他运动都将引起报警。 引例——保险箱的状态转换 引例——保险箱的状态转换 有穷状态机——概念 一个有穷状态机包括下述 5 个部分:状态集 J 、输入集 K 、由当前状态和当前 输入确定下一个状态 ( 次态 ) 的转换函数T 、初始态 S 和 终态集 F 。 状态集 J :有所有可能的状态构成的有穷集合; 输入集 K:引发状态变换的可能的外部输入(或操作); 转换函数T:由当前状态和当前 输入变换到下一个状态 ( 次态 ) 的函数(或规则); 初始态 S ∈ J ,状态机的初始状态; 终态集 F ∪ J ,状态机的终止状态集; 引例——保险箱的有穷状态机 状态集 J : {保险箱锁定, A , B ,保险箱解锁,报 警}。 输入集 K : { 1L , 1R , 2L , 2R , 3L , 3R }。 转换函数 T : 见“状态转换表” 初始态 S : 保险箱锁定 终态集 F : {保险箱解锁,报警} 有穷状态机——形式化表示 一个有穷状态机可以表示为一个 5 元组 (J,K,T,S,F) ,其中: J 是一个有穷的非空状态集; K 是一个有穷的非空输入集; T 是一个从 (J-F) × K 到 J 的转换函数; S ∈ J ,是一个初始状态; F ∪ J ,是终态集。 扩展的有穷状态机——增加谓词集 一个有穷状态机可以表示为一个 6 元组 (J, K, P, T, S, F) ,其中: J 是一个有穷的非空状态集; K是一个有穷的非空输入集; P是一个有穷的非空谓词集(条件函数集合); T 是一个从 (J-F)×K×P 到 J 的转换函数; S ∈ J ,是一个

文档评论(0)

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

1亿VIP精品文档

相关文档