V模型
开发和测试阶段划分比较清晰
需求分析、概要设计、详细设计、编码、单元测试(独立的模块测试)、继承测试(模块联调)、验收测试(验证是否满足需求)
优点:包含了底层测试(单元测试)和高层测试(系统测试)阶段划分清晰、方便工作的整体把控。
缺点:测试阶段比较靠后,之前的问题已经产生,修改不方便:v模型就是瀑布模型的变种,如果需求发生变化,必然返工!!!
w模型(双v模型)
开发一个v,测试一个v 开发和测试并行
1,开发v(系统分析,概要设计,详细设计,编码,集成,实施,交付)
2,测试v(系统测试设计,继承测试设计,单元测试设计,单元测试,集成测试,系统测试,验收测试)
优点:开发伴随着测试并行,需求和设计一样要进行测试,尽早的接入测试,会更早的发现问题,降低修复成本,阶段依然明显,方便整体流程把控
缺点:代码依然在测试之前,不方便代码的测试工作。如果没有文档根本没法进行w模型;但对于人员要求较高