缺陷是指在软件开发过程中的针对软件产品和开发过程的问题,这些问题已经影响或者可能影响软件产品的质量。
基于此定义,将缺陷分为如下类别:
文档缺陷:是指对文档的静态检查过程中发现的缺陷,通过测试需求分析、文档审查对被分析或被审查的文档发现的缺陷;
代码缺陷:是指对代码进行同行评审、审计或代码走查过程中发现的缺陷;
测试缺陷:是指由测试执行活动发现的被测对象(被测对象一般是指可运行的代码、系统,不包括静态测试发现的问题)的缺陷,测试活动类型主要包括内部测试、连接测试、系统集成测试、用户验收测试;
过程缺陷:又称为不符合项问题,是指通过过程审计、过程分析、管理评审、质量评估、质量审核等活动发现的关于过程的缺陷和问题。过程缺陷的发现者一般是质量经理、测试经理、管理人员。
下面的表格列出了关于缺陷的定义描述:
缺陷名称
|
对象
|
发现活动
|
主要发现人
|
文档缺陷
|
包括最终产出物和中间产出物文档;
具体包括:项目组的文档,如需求文档、设计文档、计划、报告等
测试文档,如测试计划、测试需求分析、测试设计、测试案例、测试分析报告等。
|
同行评审
产品审计
|
同行评审人员
测试经理
|
代码缺陷
|
程序代码:包括程序单元、数据库脚本、配置文件等。
|
同行评审
产品审计
代码走查
|
同行评审人员
测试经理
|
测试缺陷
|
可运行的程序代码、系统、原型等。
|
单元测试
集成测试
系统测试
性能测试等
|
测试人员
|
过程缺陷
|
测试管理体系
测试项目实施过程
|
过程审计
过程分析
管理评审
质量评估
质量审核等
|
质量经理、项目经理、管理人员
|