- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件演化生命周期模型 初步开发 初始开发阶段按照传统的软件开发方式完成第一个版本的软件产品开发。第一版的软件产品可以实现全部需求,也可以(通常是)只包含部分需求——对用户来说非常重要和紧急的最高优先级需求。 初始阶段的一个极其重要的工作是建立一个好的软件体系结构。 具有很好的可扩展性,能够包容后续的演化增量。 具有很好的可修改性,能够处理后续阶段中的预期变更请求和未预期变更请求。 比较坚实、可靠,能够在后续演化保持稳定的表现。 在初始阶段的详细设计也要关注软件系统的可扩展性和可修改性,编程要关注程序的可读性以方便后续阶段的程序理解,技术文档的准备要充分以帮助后续阶段的程序理解。 演化 在完成初始开发之后,软件产品就进入演化阶段。该阶段可能会有预先安排的需求增量,也可能完全是对变更请求的处理,它们的共同点都是保持软件产品的持续增值,让软件产品能够满足用户越来越多的需要,实现更大的业务价值。 总的来说,该阶段可能的演化增量有: 预先安排的需求增量; 因为问题变化或者环境变化产生的变更请求; 修正已有的缺陷; 随着用户与开发者之间越来越相互熟悉对方领域而新增加的需求。 演化 演化阶段的软件产品要具备两个特征: (1) 软件产品具有较好的可演化性。一个软件产品在演化过程中复杂性会逐渐增高,可演化性会逐渐降低直至无法继续演化。演化阶段的软件产品虽然其可演化性低于初始开发阶段的软件产品,但是还没有到达无法演化的地步,还具有较好的可演化性。 (2) 软件产品能够帮助用户实现较好的业务价值。只有这样,用户才会继续需要该产品,并持续提供资金支持。 如果在演化过程中,一个软件产品开始不满足第(2)条特征,那么该产品就会提前进入停止阶段。如果软件产品满足第(2)条的同时不满足第(1)条特征,那么该产品就会进入服务阶段。如果开发团队因为竞争产品的出现或者其他市场考虑,也可以让同时满足上面两条特征的软件产品提前进入服务阶段。 《软件工程与计算II 》 ch21 软件维护与演化 主要内容 维护 软件维护的主要工作是“修改” 软件维护代价高昂 软件维护的过程 演化 软件维护与演化的技术 维护 各个工程领域都会在将产品交付给用户之后进行维护工作 主要是为了保证产品的正常运转而进行使用帮助、故障解决和磨损处理等工作。 软件的维护主要是“修改” 软件不会磨损 软件维护只需要完成少量的使用帮助、故障解决和磨损处理等工作 软件特性上是易于修改的 软件只有持续修改才能保持价值 软件维护的定义 IEEE就定义软件维护为[IEEE610.12-1990]:软件维护是在交付之后修改软件系统或其部件的活动过程,以修正缺陷、提高性能或其他属性、适应变化的环境。 ‘Software development does not stop when a system is delivered but continues throughout the lifetime of the system’ . (Sommerville, 2004) 软件变更的常见情景 问题发生了改变。 随着时间的发展,形势可能会发生变化,导致用户的问题发生变化。这些使得软件的需求发生变化,出现新的需求,否则软件将减小甚至失去服务用户的作用。 环境发生了改变。 随着软件产品的生命周期越来越长,在软件生存期内外界环境发生变化的可能性越来越大,因此,软件经常需要修改以适应外界环境的改变。 软件产品中存在缺陷。 软件开发的理想结果当然是建立一个完全无缺陷的软件产品,但这是不可能达到的目标。最终的软件产品总是或多或少的会遗留下一些缺陷。当这些缺陷在使用中暴露出来时,必须予以及时的解决。 软件维护类型划分[Lientz1980] 完善性维护(Perfective maintenance):为了满足用户新的需求、增加软件功能而进行的软件修改活动。 适应性维护(Adaptive maintenance):为了使软件能适应新的环境而进行的软件修改活动。 修正性维护(Corrective maintenance):为了排除软件产品中遗留缺陷而进行的软件修改活动。 预防性维护(Preventive maintenance):为了让软件产品在将来可维护,提升可维护性的软件修改活动。 随着持续的修改,软件的复杂度会上升,质量会下降。预防性修改是为了解决上述问题而进行的软件调整,是一种特殊类型的“修改” 主要内容 维护 软件维护的主要工作是“修改” 软件维护代价高昂 软件维护的过程 演化 软件维护与演化的技术 软件维护成本远远超出开发 一般认为,维护成本是开发成本的3倍以上 从事维护工作的人员比率在上升 [Jones2006]在对美国的软件开发者进行调查时发现:1975年时有不超过75,000人在从事维护工作,占所有开发人员的
您可能关注的文档
最近下载
- 李惠军:《丝绸之路》.pptx VIP
- 2025年6月浙江省高考历史试卷及答案.docx VIP
- 人教版数学四年级上册 第六单元 商是两位数的除法 课件(16张PPT).pptx VIP
- 《机器人工作站故障诊断与维护》实训16 典型工作站气动系统维保与故障排除.pptx VIP
- 企业工会助推企业高质量发展.docx VIP
- 《三级工学一体化师资培训》课件——第四课:教学活动策划.pptx VIP
- MDR-CE临床评价控制程序.pdf VIP
- 08SG360 预应力混凝土空心方桩.pdf VIP
- 乡村振兴乡村旅游-南京村庄规划设计方案.pdf VIP
- 安宁疗护个人工作总结和计划.docx VIP
原创力文档


文档评论(0)