v模型
用户需求-需求分析-概要设计-详细设计-编码和实现-单元测试-集成测试-系统测试-验收测试
1、优点:包含了底层测试(单元测试)和高层测试(系统测试);
清楚的标识了开发和测试的各个阶段;
自上而下逐步求精,每个阶段分工明确,便于整体项目的把控。
2、缺点:自上而下的顺序导致了,测试工作在编码之后,就导致错误不能及时的进行修改;
实际工作中,需求经常变化,导致v模型步骤,反复执行,返工量很大,灵活度较低。
改良:每个步骤都可以进行小的迭代工作。
w模型
需求分析-概要设计-详细设计-编码实现-模块集成-系统构建-系统安装
需求测试-概要设计测试-详细设计测试-单元测试-集成测试-系统测试-验收测试
优点:
开发伴随着整个开发周期,需求和设计同样要测试;
更早的介入测试,可以发现初期的缺陷,修复成本低;
分阶段工作,方便项目整体管理。
缺点:
开发和测试依然是线性的关系,需求的变更和调整,依然不方便;
如果没有文档,根本无法执行w模型;对于项目组成员的技术要求更高!