第11章净室软件工程.pptxVIP

  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文档。上传文档
查看更多
第11章 净室软件工程;11.1 基本概念;净室方法的观点: 通过在第一次正确地书写代码增量,并在测试前验证它们的正确性来避免成本很高的缺陷消除过程。它的过程模型是在代码增量集成到系统的同时,进行代码增量的统计质量验证。; 与形式化方法技术一样,净室过程强调规格说明和设计上的严格性,并且使用基于数学的正确性证明来对结果设计模型的每个元素进行形式化验证。 净室方法不是先制造一个产品,然后再去消除缺陷,而是要求在规格说明和设计中消除错误,然后以“干净”的方式???行制造。 净室方法还对形式化方法进行了扩展,强调统计质量控制技术,包括基于客户对软件的预期使用的测试。;“第一次就将事情做正确”是软件工程最重要的哲学。 净室软件工程是这样一个过程:它强调在程序构造开始前进行正确性的数学验证,并且将软件可靠性认证作为软件测试的一部分。 其底线是极低的故障率,这是使用非形式化方法难于或不可能达到的。;20世纪80年代,Mills、Dyer、及Linger最先建议将净室原理应用于软件工程。 虽然在软件开发的早期,人们对其抱以很大的希望,但它并没有得到广泛的使用。 ; Henderson提出了没有得到广泛使用的三个原因: 1. 净室方法学太理论化、太数学化、太激进,难于在实际的软件开发中使用。 2. 它提倡开发者不需要进行单元测试,而是进行正确性验证和统计质量控制,这些观念与当前大多数软件开发方式有很大的偏离。;3.软件开发产业的成熟度不高。使用净室过程需要在整个生命周期阶段严格按照定义的过程进行。由于大多数软件企业的运作还处于过程成熟度中的较低级别,软件工程师还没有准备应用净室技术。 ; “程序中出现错误的唯一方式是作者将错误引入进去的。没有其他方式……正确实践的目标是:设法避免引入错误,如果引入了错误,通过测试或任何其他运行程序的方式来消除错误。”                    Harlan Mills;11.2 净室策略;一旦将功能分配给系统的软件元素,则可启动净室增量的流水线。需要完成的任务如下: (1)增量策划。制定一个采用增量策略的项目计划,确定每个增量的功能、预计规模、及净室开发进度。 (2)需求收集。为每个增量开发更详细的客户级需求描述。 ;(3)盒结构规格说明。运用盒结构的规格说明方法描述功能规格说明。遵从操作分析原则,盒结构“在每一个精化级别上使行为、数据及过程的创造性定义独立”。 (4)形式化设计。使用盒结构方法,净室设计是规格说明的自然、无缝扩展。 对规格说明(称为黑盒)进行迭代求精(在一个增量内)类似于体系结构设计和构件级设计(分别称为“状态盒”和“清晰盒”) 。 ; (5)正确性验证。净室团队对设计及代码进行一系列严格的正确性验证活动。 验证从最高层次的盒结构(规格说明)开始,然后移向设计细节和代码。 正确性验证的第一层次通过应用一组“正确性问题”来进行,如果这些没有证明规格说明是正确的,则使用更形式化的(数学的)验证方法。 ;(6)代码生成、检查和验证。以某种专门语言表示的盒结构规格说明被翻译为适当的程序设计语言。然后,使用标准的走查或检查技术来保证代码和盒结构的语义相符性,以及代码的语法正确性。最后,对源代码进行正确性验证。 ;(7)统计测试规划。分析软件的预计使用情况,规划并设计一组测试用例,以测试使用情况的“概率分布” 。 ; (8)统计使用测试。 对计算机软件进行穷举测试是不可能的,因此,设计有限数量的测试用例总是必要的。 统计使用技术执行由统计样本导出的一系列测试,这里的统计样本是从来自目标人群的所有用户对程序的所有可能执行中抽取的。 ; (9)认证。一旦完成验证、检查和使用测试(并且所有错误被改正),则对增量进行集成前的认证工作。 ;净室方法的特异之处 ;净室软件工程和传统软件实践的差别在于:它不再强调(有些人称取消)单元测试和调试的作用,从而大量地减少(或取消)由软件开发者所承担的测试工作量。 在净室软件工程中,单元测试和调试被正确性验证和基于统计的测试所替代。;11.3 功能规格说明;净室软件工程通过使用盒结构规格说明的方法来遵从操作分析原则。 一个“盒”在某个细节层次上封装系统(或系统的某些方面)。 通过逐步求精的过程,盒被精化为层次。“每个盒规格说明的信息内容足以定义其精化,不需要依赖任何其他盒的实现” 。 这使得分析员能够按层次划分一个系统——从顶层的基本表示到底层实现的特定细节。 ;有三种类型的盒:黑盒,状态盒,清晰盒   黑盒。黑盒刻画系统行为或系统部件的行为。通过运用由触发映射

文档评论(0)

老师驿站 + 关注
官方认证
文档贡献者

专业做教案,有问题私聊我

认证主体莲池区卓方网络服务部
IP属地北京
统一社会信用代码/组织机构代码
92130606MA0GFXTU34

1亿VIP精品文档

相关文档