软件工程与计算21-软件维护与演化.pptVIP

软件工程与计算21-软件维护与演化.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

软件演化生命周期模型初步开发初始开发阶段按照传统的软件开发方式完成第一个版本的软件产品开发。第一版的软件产品可以实现全部需求,也可以(通常是)只包含部分需求——对用户来说非常重要和紧急的最高优先级需求。初始阶段的一个极其重要的工作是建立一个好的软件体系结构。具有很好的可扩展性,能够包容后续的演化增量。具有很好的可修改性,能够处理后续阶段中的预期变更请求和未预期变更请求。比较坚实、可靠,能够在后续演化保持稳定的表现。在初始阶段的详细设计也要关注软件系统的可扩展性和可修改性,编程要关注程序的可读性以方便后续阶段的程序理解,技术文档的准备要充分以帮助后续阶段的程序理解。演化在完成初始开发之后,软件产品就进入演化阶段。该阶段可能会有预先安排的需求增量,也可能完全是对变更请求的处理,它们的共同点都是保持软件产品的持续增值,让软件产品能够满足用户越来越多的需要,实现更大的业务价值。总的来说,该阶段可能的演化增量有:预先安排的需求增量;因为问题变化或者环境变化产生的变更请求;修正已有的缺陷;随着用户与开发者之间越来越相互熟悉对方领域而新增加的需求。演化演化阶段的软件产品要具备两个特征:(1) 软件产品具有较好的可演化性。一个软件产品在演化过程中复杂性会逐渐增高,可演化性会逐渐降低直至无法继续演化。演化阶段的软件产品虽然其可演化性低于初始开发阶段的软件产品,但是还没有到达无法演化的地步,还具有较好的可演化性。(2) 软件产品能够帮助用户实现较好的业务价值。只有这样,用户才会继续需要该产品,并持续提供资金支持。如果在演化过程中,一个软件产品开始不满足第(2)条特征,那么该产品就会提前进入停止阶段。如果软件产品满足第(2)条的同时不满足第(1)条特征,那么该产品就会进入服务阶段。如果开发团队因为竞争产品的出现或者其他市场考虑,也可以让同时满足上面两条特征的软件产品提前进入服务阶段。服务服务阶段的软件产品不再持续的增加自己的价值,而只是周期性的修正已有的缺陷。一个软件产品被置于服务阶段可能是因为它的软件结构已经无法继续演化,也可能是开发团队出于市场考虑,不再重点关注该产品。服务阶段的产品还仍然被用户使用,因为它仍然能够给用户提供一定的业务价值,所以开发团队仍然需要修正已有缺陷或者进行一些低程度的需求增量,保证用户的正常使用。逐步淘汰在逐步淘汰阶段,开发者已经不再提供软件产品的任何服务,也即不再继续维护该软件。虽然在开发者看来软件的生命周期已经结束,但是用户可能会继续使用处于该阶段的软件产品,因为它们仍然能够帮助用户实现一定的业务价值。只是用户在使用软件时必须要容忍软件产品中的各种不便,包括仍然存在的缺陷和对新环境的不适应。对于该阶段的产品,开发者需要考虑该产品是否可以作为有用的遗留资源用于新软件的开发,用户需要考虑如何更换新的软件产品并转移已有的业务数据。停止一个软件正式退出使用状态之后就进行停止状态。开发者不再进行维护,用户也不再使用。《软件工程与计算II》

ch21软件维护与演化主要内容维护软件维护的主要工作是“修改”软件维护代价高昂软件维护的过程演化软件维护与演化的技术维护各个工程领域都会在将产品交付给用户之后进行维护工作主要是为了保证产品的正常运转而进行使用帮助、故障解决和磨损处理等工作。软件的维护主要是“修改”软件不会磨损软件维护只需要完成少量的使用帮助、故障解决和磨损处理等工作软件特性上是易于修改的软件只有持续修改才能保持价值软件维护的定义IEEE就定义软件维护为[IEEE610.12-1990]:软件维护是在交付之后修改软件系统或其部件的活动过程,以修正缺陷、提高性能或其他属性、适应变化的环境。‘Softwaredevelopmentdoesnotstopwhenasystemisdeliveredbutcontinuesthroughoutthelifetimeofthesystem’. (Sommerville,2004)软件变更的常见情景问题发生了改变。随着时间的发展,形势可能会发生变化,导致用户的问题发生变化。这些使得软件的需求发生变化,出现新的需求,否则软件将减小甚至失去服务用户的作用。环境发生了改变。随着软件产品的生命周期越来越长,在软件生存期内外界环境发生变化的可能性越来越大,因此,软件经常需要修改以适应外界环境的改变。软件产品中存在缺陷。软件开发的理想结果当然是建立一个完全无缺陷的软件产品,但这是不可能达到的目标。最终的软件产品总是或多或少的会遗留下一些缺陷。当这些缺陷在使用中暴露出来时,必须予以及时的解决。软件维护类型划分[Lientz1980]完善性维护

文档评论(0)

趁早学习 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档