软件工程——原理、方法与应用(第二版)肖孟强电子教案 10.pptVIP

软件工程——原理、方法与应用(第二版)肖孟强电子教案 10.ppt

  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文档。上传文档
查看更多
第10章 现代软件工程 学习目标 了解软件重用的概念和软件重性技术的基本方法 掌握软件构件的概念及基于软件构件的开发技术 了解软件形式化技术和软件智能化技术 了解嵌入式系统的基本知识与开发过程 第10章 现代软件工程 教学内容 10.1 软件形式化技术 10.2 软件重用技术 10.3 基于构件的开发技术 10.4 软件智能化技术 10.5 嵌入式系统软件技术 10.6 嵌入式系统开发过程 10.7 嵌入式软件的测试 本章小结 10.1 软件形式化技术 10.1.1 形式方法的引入 20世纪80年代中期以来,一种综合性的专用需求规格说明的形式规格描述语言应运而生。这种形式化规格语言克服了自然语言和程序设计语言的不足,应用形式化、规范化的数学理论,严格定义软件系统“做什么”的形式语义模型,并支持自动程序转换系统将需求规格说明的语义模型转换为可执行代码。由此产生的软件形式开发方法正日益受到各国软件业界的重视。 10.1 软件形式化技术 10.1.2 形式方法的分类 形式方法是应用严格的形式符号和数学方法,定义或描述目标软件系统需求规格说明的一种方法。形式方法按照需求规格说明的定义可分为以下两大类: 1.面向模型的形式方法 又称为基于状态描述的形式方法。其基本思想是利用域、元组、集合、序列、映射、包等这些已知特性的数学抽象概念来为目标软件系统的状态特征和行为特征构造形式语义模型。语义模型就作为目标软件系统需求规格的形式说明。面向模型的形式方法的主要代表有:VDM方法(维也纳开发方法)、软件工程Z方法等。 2.代数构造形式方法 代数形式方法为目标软件系统的需求规格说明提供一些特殊的构造机制,并以代数构造方式描述目标系统的结构、功能。 10.1 软件形式化技术 10.1.3 形式方法的优缺点 优点是: (1)对系统的需求规格说明描述精确、定义完整。 (2)形式化的需求规格说明有利于系统的设计与实现。 (3)软件实现的正确性可以形式验证,确保软件质量。 形式方法存在的缺点主要有: (1)形式化的需求规格说明可读性较差。 (2)形式化方法对软件设计人员提出较高要求,需进行更专业化的培训。 (3)形式方法只适用于能够静态定义的软件系统,它无法定义动态系统行为。 (4)形式化的规格说明即形式语义模型,其正确性验证费时费力,目前还不能简化或自动化。 (5)形式方法目前还缺乏软件工程环境的支持。 10.1 软件形式化技术 10.1.4 软件形式开发方法 如果在软件开发过程中应用形式方法则称为软件形式开发方法。 首先,在需求分析阶段的信息收集和信息分析工作中,采用形式化的规格说明语言(如:Z、VDM、LoTos OBJ、Larch等)构造目标软件系统严格的形式需求规格说明(形式语义)。其中信息收集工作要求形式规格说明语言简明、清晰、可维护。信息分析要求形式规格说明语言精确、无二义性并能够实施完整性、一致性、正确性的检查和验证工作。不同的形式规格说明语言在表达能力、术语、准确性以及支持形式处理的能力方面均有所不同,应根据软件系统的功能特征和行为特征选择。 然后,以形式需求规格说明为起点,借助相应的形式开发支持工具辅助实现目标软件系统。目前,除了在软件设计、编码阶段采用形式方法外,还在开展软件系统形式化测试的研究工作。软件形式开发方法还有许多问题有待研究发展。 10.2 软件重用技术 软件重用就是重复利用已经存在的软件制品,包括代码、设计结构、模块实现、变换过程、规格说明、文档,用于构造新的软件系统。 10.2.1 软件重用的概念 从软件工程的角度看,软件重用的主要内容是对软件生命期中各主要开发阶段的软件制品实现重复使用。重用软件制品的目标是提高软件开发的生产率和系统的可靠性。从工程的角度看,只有通过系统化、工程化的广泛重用才能实现这个目标。 软件重用可按抽象的层次划分为以下4层: 1.代码重用 2.设计结果的重用 3.分析结果的重用 4.测试信息的重用 10.2 软件重用技术 10.2.2 软件重用的基本方法 1.重用实体的抽象定义方法 抽象是任何重用技术的本质特征,抽象是对重用实体的概括提炼。每一个抽象可以描述相关的可重用的对象集合,而每一个可重用的对象集又决定着一个抽象。软件抽象分为规格说明和抽象实现两个层次。一种重用技术能否在软件工程中成功应用,取决于该重用技术的抽象层次,抽象层次越高,重用的可能性就越大。 2.重用实体的选择及评价方法 多数重用技术都提供快速检索功能,使软件人员快速定位实体的存放位置,还要提供分析、比较、评价软件可重用性的功能。可重用的软件实体必须具备简

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档