一.软件缺陷
软件缺陷的定义
软件缺陷是指存在于软件(程序、数据、文档)中的那些不符合用户需求的问题
1.软件未达到需求规格说明书表明的功能
2.软件出现了需求规格说明书指明不会出现的错误
3.软件的功能超出了需求规格说明书指明的范围
4.软件未达到需求规格说明书虽未指明而应该达到的目标
5.软件测试人员认为软件难以理解、不易使用、运行速度慢、或者最终用户认为
不好
软件缺陷的表现形式
1.功能、特性没有实现或部分实现。
2.设计不合理,功能特性不明确,逻辑不清楚或存在矛盾。
3.产品实际结果和所期望的结果不一致。
4.没有达到需求规格说明书所规定的性能指标等。
5.运行出错,包括运行中断、系统崩渍、界面混乱等。
6.数据不正确、精度不够、不完整或格式不统一。
7.用户不能接受的其他问题,如存取时间过长、界面不美观。
8.硬件或系统软件上存在的其他问题
软件缺陷的产生原因
软件缺陷产生是不可避免的,造成软件缺陷产生的原因主要归纳如下:
1.需求解释或者记录错误
2.用户需求定义错误
3.设计说明存在错误
4.编码说明、程序代码有误
5.硬件或者软件系统上存在错误
6.其他,如文档错误、内容
软件缺陷分类——缺陷状态
1.提交(Submited)已提交的缺陷
2.打开(Open)确认“提交的缺陷”,等待处理
3.拒绝(Rejected)拒绝“提交的缺陷”,不需要修复或不是缺陷、重复缺陷、无法重现
4.修复(Resolved)缺陷被修复
5.关闭(Closed)确认修复的缺陷,将其关闭
6.推迟(Later)可在以后解决,但要确定修复日期或版本
软件缺陷分类——缺陷所属模块
系统缺陷
1.由于程序所引起的死机,异常退出
2.程序死循环
3.程序错误,不能执行正常工作或重要功能,使系统渍或资源不足
数据缺陷
1.数据计算错误
2.数据约束错误
3.数据输入、输出错误
数据库缺陷
1.数据库发生死锁
2.数据库的表、缺省值未加约束条件
3.数据库连接错误
4.数据库中的表有过多的空字段
接口缺陷
1.数据通信错误
2.程序接囗错误
功能缺陷
1.功能无法实现
2.功能实现错误
安全性缺陷
1.用户权限无法实现
2.超时限制错误
3.访问控制错误
4.加密错误
兼容性缺陷
与需求规定配置兼容性不符合
性能缺陷
1.未达到预期的性能目标
2.性能测试中出错,导致无法继续进行测试
界面缺陷
1.操作界面错误
2.打印内容、格式错误
3.删除操作未给出提示
4.长时间操作未给出提示
5.界面不规范
建议
1.功能建议
2.操作建议
软件缺陷分类——严重程度
1.Low 表面性错误(如错别字)
2.Medium
1>影响一个相对独立的功能
2>仅仅在特定条件上发生
3>与产品需求定义不一致
4>断断续续的出现问题
3.High
1>功能点没有实现或不符合用户需求
2>数据丢失
4.VeryHigh
频繁的死机,系统的大部分功能不可用
5.Critical
系统瘫痪异常退出,死循环,严重的计算错误等
软件的缺陷分类——优先级
1.Low
最低优先级,时间和资源允许时修正
2.Medium
低优先级,不会延迟发布,但是会在以后修正这个错误
3.High
中优先级,如果这个错误在于系统中,会制约开发和测试的活动的进行,如果先前没有修复它,那么需要在发布前修复它。
4.VeryHigh
高优先级,错误对这套系统的能力产生严重的影响
5.Urgent
最高优先级,在这个错误的影响下,系统几乎不可用