缺陷分析方法简介

本文分享自天翼云开发者社区《缺陷分析方法简介》,作者:Miya 

一、缺陷分析简介

质量是反应软件与需求相符程度的指标,缺陷则被认为是软件与需求不一致的某种表现。因此通过对测试过程中所有已发现的缺陷进行分析和评估,可以更加清楚地了解软件的质量状况,同时可以帮助项目组很好地掌握和评估软件的研发过程,进而改进研发过程。此外,还能为软件新版本的开发提供宝贵的经验,进而在项目开展之前,制定准确、有效的项目控制计划,为开发高质量的软件产品提供保障 

二、缺陷分析方法简介

常用的缺陷分析方法有:缺陷根因分析法、四象限缺陷分析法、ODC 缺陷分析法、Rayleigh缺陷分析法和Gompertz 缺陷分析法等等

根据缺陷分析的目的不同,缺陷分析方法可以分类如下:

1、缺陷根因分析

  • RCA法

RCA(Root Cause Analysis)根本根因分析方法,是一种产品质量管理工具,也经常应用于问题根因分析中。简单定位为:使用结构化的过程和方法,识别问题产生的根本原因并制定相应的解决方案,使问题不再发生。

RCA 过程包括四个阶段:收集信息、理解问题、确定根本原因和制定解决方案,其流程如下所示

 

  • 5W2H

5W2H法通常被应用在多个领域,如做产品、销售等,在缺陷分析领域同样可以通过7个问题来确认问题的根因。

5W(即5个为什么):

what(发生什么事)
when(什么时候)
where(哪里)
why(为什么)
who(是谁)

2H:

how (怎么做)
how much(多少钱)

  • E-C失效机理分析法

E-C(Effect-CauseDiagram)是进行设备类故障分析的常用方法。失效机理是从激活缺陷的事件出发,到故障症状,是一个正向的“技术回放”,把系统行为打开,从逻辑上展示定位结论是正确的。分析方法包括五步,如下:

第一步:先两端(首:诱发时间 尾:故障症状)

第二步:再中间(导致的直接缺陷)

第三步:补节点(补充场景的事件及中间流程)

第四步:加强防护措施(包括正向和失效防护措施)

第五步:找隐患,总结负向经验(问题/隐患、改进措施、改进类别、完成时间、责任人)注:改进类型纠正修改、排查清零、负向需求、设计准则、场景库、测试经验。

2、过程改进

  • FST缺陷流出分析方法

FST,全称Fault Slip Through,缺陷流出,是当前应用比较成熟的一种分析方法。其主要作用是根据各个阶段发现的问题数进而反向推动整个开发流程的一种负向改进方法。其目的是尽早暴露缺陷,在有限的开发和测试人力的基础上尽量降低后续暴露定位和修复的代价(即发现成本+修复成本最低原则)

主要从缺陷引入和缺陷流出两个维度进行分析,以确定缺陷的最佳发现活动。

缺陷流入率=本阶段发现的前期缺陷/本阶段发现的总缺陷

缺陷流出率=本阶段之后发现的本该本阶段发现的缺陷/本阶段应该发现的缺陷总数

通过分析各个阶段的缺陷流出率,可以优先改进流出率最大的研发阶段,进而分析该阶段哪种类型的缺陷漏出最多。

  • 漏测分析工具

根据缺陷漏测的原因归类分析

  • ODC分析方法

通过识别发现缺陷的手段方法的归类,对过程做针对改进。

3、分类分析

  • ODC分析方法

ODC,全称Orthogonal Defect Classification,正交缺陷分类。是将缺陷按照不同属性分别归入正交的类别中,然后对分类后的数据进行定量分析,从中得出过程改进措施

odc缺陷分析法的具体工作流程如下:

第一步,对缺陷进行分类。

第二步,校验已经被分类的缺陷。

第三步,对数据进行评估。

第四步,采取行动来对工作作出改进

针对第一步的缺陷分类,目前ODC技术的主要维度包括发现问题的活动(分为8类)、触发因素(分为36类),结果影响(分为13类),问题根源对象(分为6类),缺陷类型(分为39类)、缺陷定界(分为3类),责任来源(分为5类),缺陷年龄(分为4类)8个,共114类。根据大量缺陷分类后产生的各类缺陷的统计数字,结合缺陷定位信息(所属子系统、模块、特性)进行多维度正交分析,能准确确定产品主要质量问题区域,识别缺陷引入和去除过程的重点改进对象,实现对过程和产品的精确改进指导。

 

4、质量评估

缺陷趋势分析

  • Gompertz

根据测试的累积投入时间和累积缺陷增长情况,拟合得到符合自己过程能力的缺陷增长Gompertz曲线,用来评估软件测试的充分性、预测软件基线缺陷数和退出测试所需时间、作为测试退出的判断依据、指导测试计划和策略的调整。

  • Rayleigh

通过生命周期各阶段缺陷发现情况得到缺陷Rayleigh曲线,用于评估软件质量、预测软件现场质量

缺陷对比分析

  • 四象限

根据软件内部各模块、子系统、特性测试所积累时间和缺陷去除情况,和累积时间和缺陷去除情况的基线进行比较,得到各个模块、子系统、特性测试分别所位于的区间,从而判断哪些部分测试可以退出,哪些测试还需要加强,用于指导测试计划和策略的调整。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/883647.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ABB IRB6640机器人减速机间隙过大维修方法

ABB IRB6640机器人随着使用时间的增长和工作强度的增加,可能会出现诸如减速机间隙过大等问题。一、ABB IRB6640机器人减速机间隙过大的危害当ABB IRB6640机器人的减速机间隙过大时,首先会影响机器人的运动精度。在工业生产中,精确的操作是保证产品质量的关键,例如在汽车零部…

GPT Assistant training pipeline

当然!这张图片清晰地展示了 GPT Assistant (如 ChatGPT, Claude 等) 的训练流程,我们来深入理解一下其中的知识点: 1. 训练阶段 (Training Stages)预训练 (Pretraining):数据集: 使用从互联网上收集的大量原始文本数据 (数万亿字),包括各种主题、风格和语言。这些数据通常质…

Burp Suite Professional 2025.2 发布,新增功能概览 (领先的 Web 渗透测试软件)

Burp Suite Professional 2025.2 发布,新增功能概览 (领先的 Web 渗透测试软件)Burp Suite Professional 2025.2 (macOS, Linux, Windows) - Web 应用安全、测试和扫描 Burp Suite Professional, Test, find, and exploit vulnerabilities 请访问原文链接:https://sysin.org/…

【GreatSQL优化器-13】直方图

【GreatSQL优化器-13】直方图 一、直方图介绍 GreatSQL的优化器负责将SQL查询转换为尽可能高效的执行计划,但因为数据环境不断变化有可能导致优化器对查询数据了解不够充足,可能无法生成最优的执行计划进而影响查询效率,因此推出了直方图(histogram)功能来解决该问题。 直方…

PVE 8.3.1安装后的优化

网上PVE优化文章比较比较多,记录一下优化的过程: 1,删除订阅的弹窗:sed -Ezi.bak "s/(Ext.Msg.show\(\{\s+title: gettext\(No valid sub)/void\(\{ \/\/\1/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pvepro…

《安富莱嵌入式周报》第350期:Google开源Pebble智能手表,开源模块化机器人平台,开源万用表,支持10GHz HRTIM的单片机,开源CNC控制器

周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 视频版: https://www.bilibili.com/video/BV1YPKEeyEeM/目录: 1、Google开源Pebble 智能手表所有代码 2、开源光谱辐射探测系统Pomelo 3、控制器开源 (1)开…

使用Prometheus+Grafana监控MySQL

前提搭建好Prometheus 本次使用Docker搭建 https://www.cnblogs.com/minseo/p/17913003.html搭建好Grafana环境查看 系统环境# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) # uname -a Linux CentOS7K8SHarbor061 3.10.0-1160.102.1.el7.x86_64 #1 SMP Tue…

centos7安装mysql5.6.43报错解决方案!

今天虚拟机安装mysql-community-server-5.6.43版本时出现依赖报错,按照提示的error进行解决! 第一个问题是 Requires: libaio.so.1()(64bit) 解决方案:确保机器联网,使用 yum install -y libaio 第二个问题是缺少perl依赖,可以使用 yum install -y perl* peri-* 安装 这条…

利用apache2本地搭建web环境

下载apache2服务sudo apt install apache2 php -y 启动apache2sudo service apache2 restart命令执行后即可在浏览器访问,访问localhost或127.0.0.1(默认端口为80)即可看到apache的默认页面说明本地站点搭建完毕目录:/var/www/html这个目录下存放的是网站的资源,图片或html…

rancher页面无法显示pod实时日志

异常现象rancher无法通过web页面查看相关pod日志排查步骤1.在k8s的主节点上执行查看日志的命令kubectl get pods -n smartroom-testkubectl logs -f register-85dbdc6df8-nqkc4 -n smartroom-test在k8s主节点上无法查看其它node上运行的pod的运行日志2.在pod运行的主机上查看容…

十. 数据结构

数据结构 二叉树遍历先序遍历:根左右 中序遍历:左根右 后序遍历:左右根 层序遍历:从上到下、从左往右依次遍历通过序列构造二叉树必须有中序序列先序遍历中序遍历后序遍历图的遍历查找哈希表散列表(Hash table, 也叫哈希表), 是根据关键码值(key value)而直接进行访问的数…