软件形式化方法-详解.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件形式化方法 - 详解 软件形式化方法 (The formal method) 目录 ? 1 什么是软件形式化方法 ? 2 软件形式化方法的起源 ? 3 软件形式化方法的内容 ? 4 软件形式化方法的分类 ? 5 相关条目 什么是软件形式化方法 软件形式化方法 是指建立在严格数学基础上的软件开发方法。形式化方法模型的主要 活动是生成计算机软件形式化的数学规格说明。形式化方法使软件开发人员可以应用严格的 数学符号来说明、开发和验证基于计算机的系统。 软件形式化方法的起源 软件形式化方法最早可追溯到 20 世纪 50 年代后期对于程序设计语言编译技术的研究, 即 J.Backus 提出 BNF描述 Algol60 语言的语法,出现了各 种语法分析程序自动生成器以及 语法制导的编译方法,使得编译系统的开发从“手工艺制作方式”发展成具有牢固理论基础 的系统方法。 形式化方法的研究高潮始于 20 世纪 60 年代后期,针对当时所谓“软件危机” , 人们提 出种种解决方法 , 归纳起来有两类:一是采用工程方法来组织、管理软件的开发过程;二是 深入探讨程 序和程序开发过程的规律,建立严密的理论,以其用来指导软件开发实践。前 者导致“软件工程”的出现和发展,后者则推动了形式化方法的深入研究。经过 30 多 年的 研究和应用,如今人们在形式化方法这一领域取得了大量、重要的成果,从早期最简单的形 式化方法一阶谓词演算方法到现在的应用于不同领域、不同阶段的基于逻辑、状态机、网 络、进程代数、代数等众多形式化方法。形式化方法的发展趋势逐渐融入软件开发过程的各 个阶段 , 从需求分析、功能描述 ( 规约 ) 、( 体系结构 / 算法 ) 设计、编程、测试直至维护。 软件形式化方法的内容 形式化方法的本质是基于数学的方法来描述目标软件系统属性的一种技术。不同的形式 化方法的数学基础是不同的,有的以集合论和一阶谓词演算为基础(如 Z 和 VDM),有的则 以时态逻辑为基础。形式化方法需要形式化规约说明语言的支持。 这样的形式化方法提供了一个框架,可以在框架中以系统的而不是特别的方式刻划、开 发和验证系统。如果一个方法有良好的数学基础,那么它就是形式化的,典型地以形式化规 约语言给出。这个基础提供一系列精确定义的概念,如:一致性和完整性,以及定义规范的 实现和正确性。形式化方法模型的主要活动是生成计算机软件形式化的数学规格说明。形式 化方法使软件开发人员可以应用严格的数学符号来说明、开发和验证基于计算机的系统。这 种方法的一个变型是净室软件工程( cleanroom software engineering ),这一软件工程方 法目前已应用于一些软件开发机构。 软件形式化方法的分类 1、根据说明目标软件系统的方式,形式化方法可以分为两类: 1. 面向模型的形式化方法。面向模型的方法通过构造一个数学模型来说明系统的行为。 2. 面向属性的形式化方法。面向属性的方法通过描述目标软件系统的各种属性来间接定 义系统行为。 2、根据表达能力,形式化方法可以分为五类: 1)基于模型的方法:通过明确定义状态和操作来建立一个系统模型(使系统从一个状 态转换到另一个状态)。用这种方法虽可以表示非功能性需求(诸如时间需求),但不能很 好地表示并发性。如: Z 语言, VDM,B 方法等。 2 )基于逻辑的方法:用逻辑描述系统预期的性能,包括底层规约、时序和可能性行 为。采用与所选逻辑相关的公理系统证明系统具有预期的性能。用具体的编程构 造扩充逻 辑从而得到一种广谱形式化方法,通过保持正确性的细化步骤集来开发系统。如: ITL (区 间时序逻辑),区段演算( DC),hoare 逻辑, WP演算,模态逻辑,时序逻辑, TAM(时序 代理模型), RTTL (实时时序逻辑)等。

文档评论(0)

逍遥文档 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档