概念
瀑布模型的改进,将测试提前。如图:
各阶段介绍
需求分析
入口条件:项目计划书已通过评审
出口条件:软件需求规格说明书通过评审
操作过程:根据项目经理或者开发代表提出或者了解的用户需求,进行分析确认,由项目经理和系统分析人员共同指定需求规格说明书,主要说明软件的运行环境、开发工具以及详细的功能和性能需求。
系统测试计划
入口条件:软件需求规格说明书已通过评审
出口条件:软件系统测试计划通过评审
操作过程:系统测试计划通常是由专门的测试人员根据软件的需求规格说明书定义的软件功能书写的,他的测试用例涵盖了需求规格中定义的软件所有基本功能和性能的测试
概要设计
入口条件:软件的需求规格说明书和系统测试计划书通过评审
出口条件:概要设计说明书通过评审
操作过程:根据软件的需求规格说明书,将软件分解到功能模块一级,并定义好全局变量和全局数据以及各个模块之间的接口描述。最后,将这些形成软件概要设计说明书。
集成测试计划
入口条件:软件的概要设计说明书已通过评审
出口条件:软件设计说明书通过评审(可分为概要设计和详细设计)
操作过程:根据软件的需求规格说明书,将软件分解到功能模块一级,并定义好全局变量和全局数据以及各个模块之间的接口描述(一般可以将此整理成为概要说明书)。并根据模块划分,定义好实现每一个模块功能所需的结构、变量以及函数,并对每一个函数提供基于伪代码的实现(这些可拆分为详细设计说明书)。将这些形成软件设计说明书。
详细设计
入口条件:软件的概要设计说明书和集成测试计划通过评审
出口条件:详细设计说明书通过评审
操作过程:开发人员根据概要设计说明书的模块划分,定义好实现每一个模块功能所需的结构、变量以及函数,并对每一个函数提供基于伪代码的实现。将这些形成软件详细设计说明书。
单元测试计划
入口条件:软件的详细设计说明书通过评审
出口条件:单元测试计划通过评审
操作过程:开发人员根据详细设计说明书所描述的函数实现书写单元测试计划,该测试计划的测试用例应该概括所有函数的所有分支。
程序编码
入口条件:软件的详细设计说明书和单元测试计划已通过评审
出口条件:代码通过评审和编译检查
操作过程:开发人员根据详细设计说明书定义的函数实现过程,依照一定的编码规则,编写出软件的实现代码,然后使用编译检查工具对其进行编译检查
单元测试
入口条件:代码通过评审和编译检查
出口条件:函数功能正确,而且测试用例的覆盖率满足要求
操作过程:测试人员根据单元测试计划,以函数为基本单元进行测试,验证函数的功能以及健壮性,然后将测试结果形成单元测试报告,并将错误记录在单元测试报告中。
集成测试
入口条件:代码通过单元测试
出口条件:接口函数功能正确,模块功能正确,而且测试用例的覆盖率满足要求
操作过程:测试人员根据集成测试计划,以接口函数为基本单元进行测试,验证模块的功能以及健壮性,然后将测试结果形成集成测试报告,并将错误记录在集成测试报告中。
系统测试
入口条件:代码通过单元测试和集成测试
出口条件:软件功能通过验证
操作过程:测试人员根据系统测试计划,在实际的系统运行环境中验证软件的功能
缺点
开发周期过长