软件工程教案--第八章 维护XXXX
- 格式:ppt
- 大小:479.05 KB
- 文档页数:56
软件工程第八章维护第一点:软件维护的定义和重要性软件维护是指在软件发布后对其进行的一系列操作和活动,旨在确保软件系统的持续可用性、可靠性和性能。
软件维护是软件开发生命周期中的一个重要环节,它涉及到对软件进行修正、优化和升级。
软件维护的重要性体现在以下几个方面:1.保障软件质量:软件在实际运行过程中可能会出现各种问题,维护可以帮助及时修复这些问题,保证软件的正常运行。
2.提高用户满意度:通过维护,可以对软件进行功能优化和界面调整,使其更加符合用户的需求,提高用户的使用体验。
3.降低风险:软件维护可以帮助提前发现并解决潜在的风险,避免因软件问题导致的损失。
4.延长软件寿命:通过不断的维护和升级,可以使软件适应不断变化的环境和需求,延长其使用寿命。
5.提高开发效率:良好的维护可以避免因软件问题导致的重复开发,提高开发团队的效率。
第二点:软件维护的类型和策略软件维护可以分为以下几种类型:1.改正性维护:这种维护类型主要是针对软件中存在的问题和错误进行修复,保证软件的正常运行。
2.适应性维护:随着环境的变化和用户需求的变化,软件需要进行相应的调整和优化,以适应新的环境和工作需求。
3.完善性维护:这种维护类型主要是针对软件的功能进行增强和扩展,以满足用户的新需求。
4.预防性维护:预防性维护是为了避免软件出现潜在的问题和风险,提前对软件进行调整和优化。
在进行软件维护时,可以采取以下策略:1.计划维护:制定详细的维护计划,包括维护的时间、内容、责任人等,确保维护工作的有序进行。
2.变更管理:对于软件的修改和更新,需要进行严格的变更管理,确保每次变更都是经过审核和评估的。
3.版本控制:通过版本控制工具,对软件的不同版本进行管理,确保软件的每个版本都是可追踪和可恢复的。
4.文档管理:对软件的维护过程和结果进行详细的文档记录,方便对软件进行管理和维护。
5.持续集成:将软件的维护工作与开发工作结合起来,通过持续集成的方式,确保软件的质量和稳定性。
软件工程第8章维护—总结第一篇:软件工程第8章维护—总结第8章维护周四上午2#211的34节,下午在1#202的78节在软件产品被开发出来并交付用户使用之后,就进入了软件的运行维护阶段。
这个阶段是软件生命周期的最后一个阶段。
大型软件的维护成本高达开发成本的4倍左右。
8.1软件维护的定义在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。
四项活动:改正性维护,适应性维护,完善性维护(一半以上),预防性维护。
8.2软件维护的特点8.2.1结构化维护与非结构化维护差别巨大1.非结构化维护2.结构化维护8.2.2维护的代价高昂维护工作量的一个模型:M=P+K*exp(c-d)M是维护用的总工作量,P是生产性工作量,K是经验系数,c是复杂程度(非结构化设计和缺少文档都会增加软件的复杂程度),d 是维护人员对软件的熟悉程度。
8.2.3维护的问题很多1.2.3.4.5.理解别人写的程序通常非常困难;没有文档或文档资料显著不足;不能指望开发人员详细说明软件;设计时未考虑将来的修改;维护不是一项吸引人的工作。
8.3软件维护过程1.维护组织未必建立正式的维护组织,但是非正式的委托责任是绝对必要的。
在维护活动开始之前就明确维护责任是十分必要的,可以大大减少维护过程中可能出现的混乱。
2.维护报告即软件修改报告。
3.维护的事件流4.保存维护记录5.评价维护活动8.4软件的可维护性定义:维护人员理解、改正、改动或改进这个软件的难易程度。
8.4.1决定软件可维护性的因素1.可理解性定义:外来读者理解软件的结构、功能、接口和内部处理过程的难易程度。
2.可测试性可以用程序复杂度来度量它的可测试性。
3.可修改性耦合、内聚、信息隐藏、局部化、控制域与作用域的关系等,都影响软件的可修改性。
4.可移植性定义:把程序从一种计算环境(硬件配置和操作系统)转移到另一种计算环境的难易程度。
5.可重用性定义:同一事物不做修改或稍加改动就在不同环境中多次重复使用。