软件缺陷分类标准广州市新康博思信息科技有限公司项目名称项目名称起始时间YYYY_MM_DD产品名称软件缺陷分类标准产品版本1.0文档编号文档类型密级Sdcc_0.2编制/日期审核/日期批准/日期蓝娜/2012-03-14变更控制状态页数共10页软件缺陷分类标准Sdcc_0.2I文档修改记录*S–STARTA-ADDEDM-MODIFIEDD-DELETED版本号日期修订人S*AMD版本修订描述变更请求号草稿v0.12012-03-14蓝娜S首次编写,用于规范系统测试。初稿v0.22012-03-20蓝娜M修改缺陷状态与优先级初稿v0.22012-03-20蓝娜A增加缺陷原因、缺陷修改次数终稿v1.0修订稿v1.1软件缺陷分类标准Sdcc_0.2I目录1引言.........................................................................11.1编写目的...................................................................................................................................11.2定义与缩写...............................................................................................................................11.3参考资料...................................................................................................................................12软件缺陷分类标准..............................................................12.1缺陷属性...................................................................................................................................12.2缺陷类型...................................................................................................................................22.3缺陷严重程度............................................................................................................................42.4缺陷优先级...............................................................................................................................42.5缺陷状态...................................................................................................................................52.6缺陷来源...................................................................................................................................5软件缺陷分类标准Sdcc_0.211引言1.1编写目的制定本标准的目的是为软件测试提供缺陷分类的标准。本文档说明了问题类型、缺陷属性、缺陷类型、缺陷严重级别、缺陷优先级、缺陷状态、缺陷来源、缺陷修改次数、缺陷原因。其预期的读者是测试人员、开发人员、开发经理。1.2定义与缩写表1-1定义与缩写术语定义软件缺陷(SoftwareDefect)对软件产品预期属性的偏离现象。残留缺陷(ResidualDefect)指软件发布后存在的缺陷,包括在用户安装前未被检测出的缺陷以及检测出但未被修复的缺陷。1.3参考资料表1-2参考资料列表编号资料名称作者日期出版单位01计算机软件测试标准2软件缺陷分类标准2.1问题类型表2-1问题类型列表2.2缺陷属性表2-2缺陷属性列表序号问题类型名称说明1缺陷一个导致软件功能不能正常使用的问题。2改进改进或者增强现有的功能或任务。3新功能产品或项目尚未开发的新功能。4遗漏功能产品或项目应具备但尚未开发的功能。序号属性名称说明软件缺陷分类标准Sdcc_0.222.3缺陷类型缺陷种类:根据缺陷的自然属性来划分。表2-2缺陷类型列表编号缺陷类型描述子类型编号名称01功能问题F-Function影响了重要的特性、用户界面、产品接口、硬件结构接口和全局数据结构。并且设计文档需要正式的变更。如指针,循环,递归,功能等缺陷。0101功能错误0102功能缺失0103功能超越0104设计二义性0105算法错误02接口问题I-Interface与其他组件、模块或设备驱动程序、调用参数、控制块或参数列表相互影响的缺陷。0203模块间接口0204模块内接口0205公共数据使用03逻辑问题L-Logic需要进行逻辑分析,进行代码修改,如循环条件等0301分支不正确0302重复的逻辑0303忽略极端条件0304不必要的功能0305误解0306条件测试错误0307循环不正确0308错误的变量检查0309计算顺序错误0310逻辑顺序错误04计算问题C-Computation等式、符号、操作符或操作书错误,精度不够、不适当的数据验证等缺陷。0401等式错误0402缺少运算符0403错误的操作数0404括号用法不正确0405精度不够0406舍入错误0407符号错误05数据问题A-Assignment需要修改少量代码,如初始化或控制块。如声明、重复命名,范围、0501初始化错误0502存取错误1标识(Identifier)标记某个缺陷的唯一的符号,可以使用数字、字母组合来表示。2标题(Headline)对缺陷进行的简短描述。3描述(Description)对缺陷进行详细的描述,以便缺陷重现。4严重程度(Severity)指因缺陷引起的故障对软件产品的影响程度。5优先级(Priority)缺陷必须被修复的紧急程度。6状态(State)缺陷通过一个跟踪修复过程的进展情况。7来源(Source)指引起缺陷的起因。软件缺陷分类标准Sdcc_0.23限定等缺陷。0503引用错误的变量0504数组引用越界0505不一致的子程序参数0506数据单位不正确0507数据维数不正确0508变量类型不正确0509数据范围不正确0511操作符数据错误0513变量定位错误0514数据覆盖0517外部数据错误0518输出数据错误0519输入数据错误0520数据检验错误06用户界面问题U-UserInterface人机交互特性:屏幕格式,确认用户输入,功能有效性,页面排版等方面的缺陷。0601界面风格不统一0602屏幕上的信息不可用0603屏幕上的错误信息0604界面功能布局和操作不合常规07文档问题D-Documentation影响发布和维护,包括注释等缺陷。0701描述含糊0702项描述不完整0703项描述不正确0704项缺少或多余0705项不能验证0706项不能完成0707不符合标准0708与需求不一致0709文字排版错误0710文档信息错误0711注释缺陷08性能问题P-Performance不满足系统可测量的属性值,如:执行时间,事务处理速率等缺陷。09配置问题B-Build/package/merge由于配置库、变更管理或版本控制引起的错误。0901配置管理问题0902编译打包缺陷0903变更缺陷0904纠错缺陷10标准问题N-Norms不符合各种标准的要求,如编码标准、设计符号等缺陷。1001不符合编码标准1002不符合软件标准1003不符合行业标准11环境问题E-Environments由于设计、编译和运行环境引发的问题。1101设计、编译环境1102运行环境12兼容问题软件之间不能正确地交互和共享信息1201操作平台不兼容1202浏览器不兼容1203分辨率不兼容13其他问题O-Others以上问题所不包含的其他问题。软件缺陷分类标准Sdcc_0.242.4缺陷严重程度缺陷严重程度:指因缺陷引起的故障对软件产品的影响程度。表2-3缺陷严重程度列表严重级别对应缺陷严重等级描述1-严重(Critical)严重缺陷不能执行正常工作功能或实现重要功能,包括:1)可能有灾难性的后果,如造成系统崩溃,造成事故等;2)数据库错误,如数据丢失等。2-重要(Major)较大缺陷产生错误的结果,导致系统不稳定,运行时好时坏,严重地影响系统要求或基本功能实现的问题。如:1)造成数据库不稳定的错误;2)在说明中的需求未在最终系统中实现;3)程序无法运行,系统意外退出;4)业务流程不正确;3-中等(Normal)一般缺陷不正确的,但不会影响系统稳定性的:1)过程调用或其它脚本错误;2)系统刷新错误;3)产生错误结果,如计算结果错误,数据不一致等;4)功能的实现有问题,如在系统实现的界面上,一些可接受输入的控件点击后无作用,对数据库的操作不能正确实现;5)编码时数据类型、长度定义错误;6)虽然正确性,功能不受影响,但系统性能和响应时间受到影响;7)对于输入数据没有进行必要的类型校验4-次要(Minor)轻微缺陷不正确的,但有使系统使用起来不太方便的错误,重点指系统的UI问题:1)系统的提示语不明确,不简明;2)滚动条无效;3)可编辑区和不可编辑区不明显;4)光标跳转设置不好,鼠标(光标)定位错误;5)上下翻页,首尾页定位错误;6)界面不一致,或界面不正确;7)日期或时间初始值错误(起止日期、时间没有限定);8)出现错别字,标点符号错误,拼写错误,以及不正确的大小写等;5-有待改进(Enhancement)其他缺陷系统中值得改良的问题:1)容易给用户误解和歧义的提示;2)界面需要改进的,某个控件没有对齐等。3)对有疑虑的部分,提出修改建议2.5缺陷优先级缺陷优先级:指缺陷必须被修复的紧急程度。“优先级”的衡量抓住了在严重性中没有考虑软件缺陷分类标准Sdcc_0.25的重要程度因素。表2-4缺陷优先级列表缺陷优先级描述1-立即解决(ResolveImmediately)导致测试无法继续进行,必须立刻进行修复;对用户产生很大影响,必须优先解决。2-高度关注(HighlyFocus)对此缺陷给以高度重视,应优先进行修复。3-正常排队(NormalQueue)缺陷需要正常排队等待修复或列入软件发布清单。4-低优先级(NotUrgent)缺陷可以在方便时被纠正。2.6缺陷状态缺陷状态:指缺陷通过一个跟踪修复过程的进展情况。表2-6缺陷状态列表序号缺陷状态描述1提交(Submitted)测试人员提交新的错误入库。2激活或打开(ActiveorOpen)问题还没有解决,存在源代码中,确认“提交的缺陷”,等待处理。3拒绝(Rejected)拒绝“提交的缺陷”:不需要修复(Wontfix)或不是缺陷(Invalid)或缺陷已经被其他的软件测试人员发现(Duplicate)。4已修正或修复(FixedorResolved)已被开发人员检查、修复过的缺陷,通过单元测试,认为已解决但还没有被测试人员验证。5验