软体研发有其生命周期,包括设计、开发、部署、维护等阶段;而利用科技自动化辅助每个关键环节进行,就称为软体生命周期管理。
软体就像建筑工程,有其生命周期。任何一个软体都要经历需求分析(RA)、软体设计(SD)、程式开发(coding)及单元测试(unit test)、整合及系统测试(integration and system test)、安装(install)、实施(implementation)等各种历程,直到最后的废止。
在软体的生命周期中,每一个关键都有其任务,同时产生一定的规格或是程序再交付给予下一个动作。如果缺少管理,或者是流程中的某个环节建立在上一个过程所产生的错误结果之上,整个软体工程极有可能面临失败的命运。
另外,软体导入之后,后续维护也属于软体生命周期的一部份,包括对于系统瑕疵所进行的需求分析、实施变更所需要的程式开发,以及后续的测试。