软件缺陷模型

简介:

软 件 缺 陷 分 类 标 准 收藏 
缺陷的定义
软件没有达到产品说明书表明的功能
软件出现了产品说明书中不一致的表现
软件功能超出产品说明书的范围
软件没有达到用户期望的目标(虽然产品说明书中没有要求)
测试员或用户认为软件的易用性差
不是所有缺陷都会修改
市场的压力使得产品最终发行有时间限制
测试员错误理解或者不正确操作引出的缺陷(FAQ)
错误的修改影响的模块较多,带来的风险较大(遗留)
修改性价比太低(FAQ,遗留)
缺陷报告中提出的问题很难重现
缺陷分析的关注点:
对软件问题的功能域分布进行分析,找出系统的薄弱环节
要详细采集每个功能模块或系统构件的bug数据,并按功能、错误类型、严重程度等分类
比较实际发现的软件bug是否与预期的问题分布相吻合
二八定理:80%的软件问题总是发生在大约20%的功能模块(系统构件)中。
、对bug的注入阶段的分布进行分析,并与历史数据相比较。应按不同的开发阶段详细采集bug的数据

要求软件各开发阶段的缺陷密度小于本单位过去的平均值
而且要求需求分析、设计和代码复查阶段的缺陷排除率之和大于或等于规定值(例如75%)。(同行评审)
应对软件缺陷类型进行分析,以便针对各自的特点,先修复严重缺陷。


软 件 缺 陷 分 类 标 准 
分类范畴 子项目 缺陷等级 备注 
 
系统缺陷 由于程序所引起的死机,非法退出 待定  (建议A类) 不能执行正常工作工那或重要功能,使系统崩溃 
程序死循环 待定  (建议A类) 或资源严重不足 
程序错误 待定  (建议A类)   
待定  (建议A类)   
 
数据缺陷 数据计算错误 待定  (建议B类) 严重地影响系统要求或基本功能地实现,且没有 
数据约束错误 待定  (建议B类) 办法更正(重新安装或重新启动软件不属更正 
数据输入、输出错误 待定  (建议B类) 办法) 
待定  (建议B类)   
 
数据库缺陷 数据库发生死锁 待定  (建议B类)   
数据库的表、缺省值未加完整性等约束条件 待定  (建议B类)   
数据库连接错误 待定  (建议B类)   
数据库中的表有过多的空字段 待定  (建议B类)   
 
接口缺陷 数据通讯错误 待定  (建议B类)   
程序接口错误 待定  (建议B类)   
硬件接口、通讯错误 待定  (建议B类)   
待定  (建议B类)   
 
功能错误 程序功能无法实现 待定  (建议C类) 严重的影响系统要求或基本功能的实现,但存在 
程序功能实现错误 待定  (建议C类) 合理的更正办法(重新安装或重新启动软件不属 
待定  (建议C类) 于更正办法 
 
界面错误 操作界面错误 待定  (建议D类) 使操作者不方便或遇到麻烦,但不影响执行工作 
打印内容、格式错误 待定  (建议D类) 功能的实现 
删除操作未给出提示 待定  (建议D类)   
长时操作未给出提示 待定  (建议D类)   
界面不规范 待定  (建议D类)   
界面错误详细清单见《界面缺陷分类》 待定  (建议D类)   
 
建议类错误 功能建议 待定  (建议E类) 建议性的改进要求 
操作建议 待定  (建议E类)   
校验建议 待定  (建议E类)   
说明建议 待定  (建议E类)   
 
 
说明:以上缺陷分类中的内容构成基本缺陷库,根据实际工作总结,将不断扩充、完善。如新增分类,或分类内容均需要经过技术总监与质量主管的认可,备注中的内容为缺陷等级分类说明。  

目录
相关文章
|
7月前
|
数据可视化 测试技术
深入理解软件测试中的风险评估方法
【4月更文挑战第19天】 在软件开发的生命周期中,风险评估是确保产品质量和项目成功的关键步骤。本文将探讨几种常用的软件测试风险评估方法,包括定性分析和定量分析,并讨论它们在不同类型的测试环境中的应用。通过案例研究和最佳实践,我们将展示如何有效识别、评估和管理测试过程中可能遇到的风险,以及如何制定相应的缓解策略,以优化资源分配和提高测试效率。
347 0
|
3月前
|
机器学习/深度学习 人工智能 安全
软件测试中的探索性测试:一种高效发现软件缺陷的方法
本文将深入探讨软件测试中的一种关键方法——探索性测试。探索性测试是一种动态的、探索性的软件测试方法,它依赖于测试人员的直觉和经验,通过实际操作软件来发现潜在的问题和缺陷。与传统的基于预定义用例的测试方法相比,探索性测试更加灵活,能够更全面地覆盖软件的各个方面,从而更有效地发现难以预见的错误和漏洞。
37 2
|
3月前
|
测试技术 UED
软件测试中的探索性测试:一种有效的缺陷检测方法
探索性测试,作为一种灵活且强大的软件测试技术,越来越受到测试人员的青睐。它不仅依赖于预定义的测试用例,而是依靠测试人员的经验和直觉,动态地探索软件以发现缺陷。本文将深入探讨探索性测试的核心概念、优势以及如何在现代软件测试中有效应用这一方法。通过具体实例和实践技巧,我们将揭示如何利用探索性测试提高软件质量和测试效率。
31 4
|
4月前
|
监控 测试技术
软件测试中的风险管理:如何避免潜在缺陷
【8月更文挑战第5天】在软件开发的生命周期中,测试阶段扮演着至关重要的角色。本文将深入探讨软件测试中的风险管理,包括风险识别、评估和缓解策略。我们将通过具体案例分析,揭示如何在早期阶段预防和减少潜在的软件缺陷,以及如何通过有效的测试计划和执行来保障产品质量。文章旨在为读者提供一套系统的风险管理框架,帮助他们在软件开发过程中识别和应对各种测试风险。
190 3
|
测试技术
如何评估软件测试的质量风险?记住这5个核心关键点
如何评估软件测试的质量风险?记住这5个核心关键点
335 0
|
7月前
|
芯片
ChatGPT的缺陷
【1月更文挑战第8天】ChatGPT的缺陷
85 1
ChatGPT的缺陷
|
数据采集 运维 算法
转:决策树算法在文档管理系统中的异常检测与修复
决策树算法在文档管理系统中可以应用于异常检测和修复的过程。下面是决策树算法在文档管理系统中异常检测与修复的一般步骤和方法。
86 1
|
程序员 测试技术 数据库
如何复现难以复现的缺陷
重现缺陷很容易陷入盲目的尝试,直到测试人员感到疲倦而放弃,也没有多少进展。提出错误猜测使得测试有明确的目标,在它的指引下测试人员可以自由发挥,而不会迷失方向。整个过程的特征是设定明确的目标、用实验去获得信息、根据新信息建立新目标。
179 0
|
测试技术 微服务
启发式测试策略
启发式测试策略
179 0
启发式测试策略