软件的生命周期
软件的生命周期:软件从出生到死亡的整个过程,即软件的生命周期。
软件的生命周期模型
常见的软件生命周期模型有以下五大类:
一、瀑布模型
二、V模型
三、W模型
四、双V模型
五、敏捷开发模型
一、瀑布模型
- 将软件的过程进行阶段划分:计划、需求、设计、编码、测试、运维。
- 特点:从上往下依次执行,前一个阶段完成后,才能进行下一阶段。
- 重要文档:需求规格说明书(SRS)、概要设计(HLD)、详细设计(LLD)
- 测试介入的时间很晚,要等到编码完成后才能开始进行。
二、V模型
- 相对于瀑布模型,更为复杂了。
左边是开发流程
右边是测试流程 - 顺序:依然是先开发再测试。
- 测试的进行阶段:
(1)单元测试:测试对象:函数(构成系统的最小单位), 依据:详细设计(LLD) 【开发完成】
(2)集成测试:测试对象:交互的接口,依据:概要设计(HLD) 【很少提及】
(3)系统测试:测试对象:整个系统本身,依据:需求规格说明书(SRS) 【测试完成】
(4) 验收测试:测试对象:发布的系统, 依据:用户需求(原始需求) 【用户完成】
三、W模型
- 开发、测试分成了两条线。
- 开发流程:需求、设计、编码、实施、交付。
- 测试:分成了两个阶段:测试左移、测试右移
测试左移:与开发同时开始进行测试的准备工作
测试右移:编码完成后开始执行测试用例
四、双V模型
双V模型类似于W模型
五、敏捷开发模型(Scrum模型)
- 专有词汇:故事(需求)、迭代(一个版本的开发周期)、燃尽(进度)、站立会议
- 特点
每个版本都可以演示
每个版本的迭代周期短