1.软件的使用
软件在经过确认测试、评审后交付给客户,安装在确定的运行环境中进行使用,这个时期是软件发挥社会效益和经济效益的重要阶段。由于软件是逻辑产品,不存在物理损耗,所以软件产品使用越广泛,效益就越高。在软件的使用过程中,用户和维护人员要认真地收集和整理被发现的软件错误和缺陷,定期撰写“软件问题报告”和“软件维护报告”。
2.软件的维护
软件的维护是对软件产品进行修改、运行环境发生变化或者软件需求变化做出响应的过程。软件的维护不仅仅是针对代码,而且还要针对软件的定义、开发的各个阶段生成的文档。其过程如图4-4所示:
维护主要包括改正性维护、适应性维护、完善性维护和预防性维护四种。
改正性维护:在软件交付使用后,由于开发测试时的不彻底、不完全、必然会有一部分隐藏的错误被带到运行阶段,这些隐藏的错误在某些特定的使用环境下就会暴露。
适应性维护:是为适应环境的变化而修改软件的活动。
完善性维护:是根据用户在使用过程中提出的一些建设性意见而进行的维护活动。
预防性维护:是为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础。
一般情况下软件维护人员只能依据软件的现有文档和相关设计信息进行维护,这样就耗费大量的劳动用于软件系统的再分析和对软件信息的理解,据估算,这部分的劳动量大概占所有维护工作的60%以上。
由于软件的应用和生存期直接受到维护的影响,而软件的可维护性与软件的设计息息相关,因此我们在前期的开发过程中要高度重视对可维护性的支持。
(www.xing528.com)
图4-4 软件维护的过程
3.软件的退役
软件的退役是软件生存周期中的最后一个阶段,软件停止使用,终止对软件产品的支持。在出现不可调和的大问题时(这种情况一般是系统运行若干年之后,系统运行的环境已经发生了根本的变化时才能出现),则用户会进一步提出开发新系统的请求,这标志着老系统生命的结束,新系统的诞生。
软件开发的各个阶段都与测试息息相关,如图4-5所示:
图4-5 软件开发与测试关系
在软件开发中的每个阶段都会有一些文档产生,各个阶段所需要的文档的对应关系如表4-2所示。
表4-2 文档与阶段对应表
在本部分中重点介绍了软件生存周期的划分以及各个阶段的主要任务、活动和产品等,生存周期的划分是为软件开发过程管理和软件质量控制奠定基础。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。