软件维护.docVIP

  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文档。上传文档
查看更多
第七章 软件维护 一、复习要求 1. 了解软件质量定义和软件质量度量。 2. 了解软件维护的类型与策略。 3. 了解软件维护的过程与管理方法。 4. 了解可维护性的概念。 5. 了解提高可维护性的方法。 6. 了解软件逆向工程与再工程的概念 二、内容提要 1. 软件质量的概念 (1) 软件质量的定义 关于软件质量的定义,曾给出过多种定义。 ( ANSI/IEEE Std 729-1983定义软件质量为“与软件产品满足规定的和隐含的需求的能力有关的特征或特性的全体”。 ( M.J. Fisher 定义软件质量为“所有描述计算机软件优秀程度的特性的组合”。 也就是说,为满足软件的各项精确定义的功能、性能需求,符合文档化的开发标准,需要相应地给出或设计一些质量特性及其组合,作为在软件开发与维护中的重要考虑因素。如果这些质量特性及其组合都能在产品中得到满足,则这个软件产品质量就是高的。 软件质量反映了以下三方面的问题: ( 软件需求是度量软件质量的基础。不符合需求的软件就不具备质量。 ( 规范化的标准定义了一组开发准则,用来指导软件人员用工程化的方法来开发软件。如果不遵守这些开发准则,软件质量就得不到保证。 ( 往往会有一些隐含的需求没有显式地提出来。如软件应具备良好的可维护性。如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证。 软件质量是各种特性的复杂组合。它随着应用的不同而不同,随着用户提出的质量要求不同而不同。因此,有必要讨论各种质量特性,以及评价质量的准则,还要介绍为保证质量所进行的各种活动。 (2) 软件质量特性与质量模型 软件质量特性,反映了软件的本质。讨论一个软件的质量,问题最终要归结到定义软件的质量特性。而定义一个软件的质量,就等价于为该软件定义一系列质量特性。 人们通常把影响软件质量的特性用软件质量模型来描述。已有多种有关软件质量模型的方案。它们共同的特点是:把软件质量特性定义成分层模型。最基本的叫做基本质量特性,它可以由一些子质量特性定义和度量。子质量特性在必要时又可由它的一些子质量特性定义和度量。 早在1976年,由Boehm等提出软件质量模型的分层方案。1979年McCall等人改进Boehm质量模型又提出了一种软件质量模型。模型的三层次式框架如图7.1所示。质量模型中的质量概念基于11个特性之上。而这11个特性分别面向软件产品的运行、修正、转移。它们与特性的关系如图7.2所示。McCall等认为,特性是软件质量的反映,软件属性可用做评价准则,定量化地度量软件属性可知软件质量的优劣。 图7.2 McCall软件质量模型 McCall等人的质量特性定义如下: 正 确 性 在预定环境下,软件满足设计规格说明及用户预期目标的程度。它要求软件本身没有错误。 可 靠 性 软件按照设计要求,在规定时间和条件下不出故障,持续运行的程度。 效 率 为了完成预定功能,软件系统所需的计算机资源的多少。 完 整 性 为某一目的而保护数据,避免它受到偶然的或有意的破坏、改动或遗失的能力。 可使用性 对于一个软件系统,用户学习、使用软件及为程序准备输入和解释输出所需工作量的大小。 可维护性 为满足用户新的要求,或当环境发生了变化,或运行中发现了新的错误时,对一个已投入运行的软件进行相应诊断和修改所需工作量的大小。 可测试性 测试软件以确保其能够执行预定功能所需工作量的大小。 灵 活 性 修改或改进一个已投入运行的软件所需工作量的大小。 可移植性 将一个软件系统从一个计算机系统或环境移植到另一个计算机系统或环境中运行时所需工作量的大小。 可复用性 一个软件(或软件的部件)能再次用于其它应用(该应用的功能与此软件或软件部件的所完成的功能有关)的程度。 互 连 性 又称相互操作性。连接一个软件和其它系统所需工作量的大小。如果这个软件要联网或与其它系统通信或要把其它系统纳入到自己的控制之下,必须有系统间的接口,使之可以联结。 对以上各个质量特性直接进行度量是很困难的,有些情况下甚至是不可能的。因此,McCall定义了一些评价准则,使用它们对反映质量特性的软件属性分级,以此来估计软件质量特性的值。软件属性一般分级范围从0 (最低)到10 (最高)。各评价准则定义如下。 可跟踪性 在特定的开发和运行环境下跟踪设计表示或实际程序部件到原始需求的(可追溯)能力。 完 备 性 软件需求充分实现的程度。 一 致 性 在整个软件设计与实现的过程中技术与记号的统一程度。 安 全 性 防止软件受到意外的或蓄意的存取、使用、修改、毁坏,或防止泄密的程度。 容 错 性 系统出错(机器临时发生故障或数据输入不合理)时,能以某种预定方式,做出适当处理,得以继续执行和恢复系统的能力

文档评论(0)

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

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

1亿VIP精品文档

相关文档