关于BUG率的计算和它的实际意义的思考

我的微信号是Shalayang,以下是我的二维码名片,欢迎添加。

问题1:bug率有什么作用?

my opion:用处有很多,需要具体情况具体分析,不过主要作用一般是来评价工作产品的质量。如果bug率较高,说明系统质量较差,需要大量的返工。项目经理就需要做好缺陷分析(缺陷的类型、分布、严重程度等),找出原因,以便做好下一阶段的缺陷预防工作。除此之外,还可以结合其它方面的信息,判断是否一些工作不充分。譬如,如果缺陷密度过低,有两个原因:可能工作产品质量确实高;也可能评审或测试不充分,更多的缺陷没有发现。在某些公司,bug率也作为项目度量考核的一项指标。

问题2:bug率的计算公式是什么?

流行的公式主要以下两个:

观点一、bug率=bug数/代码行数

观点二、bug率=bug数/功能点数

my opion:

网上对于这两个公式的争议比较多,这个问题上,个人觉得没必要争哪个才是正道。说句唯心主义的话,存在即是合理,每个公式都有他生存的环境和产生的根源,对于我们需要用到它的时候,只需要根据公司需要进行择优选择就好了,不是吗。

问题3:哪种方法更有效,更合理可行呢?

my opion:

使用代码行进行计算,优点是可以通过自动统计工具计算(特别是对于大型项目,一般都会计算代码行数),比较方便,所以该方法比较普遍,是大多数公司或项目运用的计算方法。但它的缺点是受开发人能力影响大(毕竟不同开发人员的编码能力不一样),且不同编程语言差别较大。

使用功能点进行计算,优点是计算方法适用性强,不同语言之间也有可比性,但缺点是参数较多,比较复杂,而且目前还没有比较方便的工具。其次,计算功能点虽然与开发人员的代码能力无关,但是与计算功能点的人有关,对于没有根基的人而言,能准确的计算出功能点也不是一件容易的事。而且功能点涉及的内容也比较多。

网上看过有人说到“功能点与不同语言的代码行数之间有一个对应,可以在统计出代码行数后根据比例换算成功能点”, 具体对应关系是什么我没有查到,希望有知道的童鞋告知一下。

问题4:bug率计算公式中的bug数怎么取值?

在看到上面的公式后,也许有人疑惑:

  1. 能很方便的统计出新版本变化的代码行数吗?
  2. 分子中的bug数是本次剩余的bug数呢,还是总共的bug数?
  3. 如果代码行数为总行数,那么bug数就应该为总的bug数?即所有bug的和?而且如果是总的bug数那么对于后期的仅仅改错的阶段而言,可能代码的增加会很少,但是这时bug数会不断增加,这样一来,bug率岂不是在不断的升高?但是按常理而言是应该减少的呀,应该越到后期bug率越小才对,是不?
  4. 或者bug数取剩余的bug总数(上几个版本剩余未修改的bug和本版本的新bug)呢?而代码行数仍然是总的代码行数。这样是不是有问题呢?

解惑:

1、代码统计工很多都能做到新旧两个版本对比,很容易得到版本变化的代码行数.

2-3、那就看你用这个度量项来说明什么问题:如果是评价新增代码的质量,那不应该包括以前未解决的Bug,可以用“新增的bug数/新增+修改+删除代码行数”,如果是当前版本的整个系统的代码质量-----总的bug数/总代码行数。

4、这个就是相当于统计bug收敛率了。

问题5:对于迭代方式开发的缺陷统计怎么做?

现在有很多项目是采用迭代的方式来进行的,每次可能添加的代码部分比较少,那如何来计算其bug率呢?是用新增的bug数/新增的代码行数?还是总的bug数/ 总的代码行数?

my opion:

采用何种统计策略,还要看该统计项目的,如果用于评价新开发工作的质量,那就不能把原有系统缺陷统计在内;如果不作为评价新的开发工作,那就都统计在一起(譬如有的只是跟踪版本质量)。

每一个统计项都应有它的目的,不应该机械地去做统计,还要看设计该统计项的目的是什么。

时间: 2024-08-10 15:11:51

关于BUG率的计算和它的实际意义的思考的相关文章

五年零存整取率息计算

巴菲特说过理财不一定是富人的事,越穷的人越需要理财,理财的第一步就是储蓄.雪球是一点一点积累起来的,不要不在乎一点点小钱. 编程一方面是一个工作,别一方面编程也是一种工具,像数学一样,平时生活中是会用到的.比如平时我们会遇到有自己计算花了多少钱,计算发工资怎么算的,计算社保等等都会用到数学,大家对数学就不陌生了,当然博客园朋友肯定也对编程不会太陌生.我认为未来编程却实会深入到我们生活中,编程主要是用来解决问题,而生活中会有很多很多问题.据说国外很多公司都会主动学习编程,不说远了,我经常在网上看到

从函数计算架构看 Serverless 的演进与思考

作者?|?杨皓然? 阿里巴巴高级技术专家 导读:云计算之所以能够成为 DT 时代颠覆性力量,是因为其本质是打破传统架构模式.降低成本并简化体系结构,用全新的思维更好的满足了用户需求.而无服务器计算(Serverless Computing)作为这个巨大市场的下一个阶段的进化产物,将真正帮助企业实现只专注于业务和构建应用程序,而不必担心 IT 基础设施,这也将成为云服务商未来竞争的关键. 什么是无服务器计算 云原生计算基金会(Cloud Native Computing Foundation, C

BUG数量和项目成本

 在说BUG数量对项目成本的影响之前,首先说下软件测试流程,本人所在的公司使用的是maintis作为跟踪BUG的工具,使用其他的工具,对BUG测试流程没有影响 具体流程如下, 测试员执行测试用例 测试员如果发现BUG,在mantis上记录BUG信息,同时将信息转给项目经理 项目经理浏览BUG记录,把相应的BUG转给对应的开发人员 程序员按照maintis记录的内容,执行测试用例,确认是否有BUG 程序员修改BUG 程序员修改BUG结束后,更新mantis上的BUG状态 测试员验证已修复的BUG

复利计算6.0

一.主要功能与需求分析 1.本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:按复利计算公式来计算就是:1,000,000×(1+3%)^30 2.如果按照单利计算,本息的最终收益 3.假如30年之后要筹措到300万元的养老金,平均的年回报率是3%,那么,现在必须投入的本金是多少呢? 4.利率这么低,复利计算收益都这么厉害了,如果拿100万元去买年报酬率10%的股票,若一切顺利,过多长时间,100万元就变成200万元呢? 5.如果我希望在十年内将100万

03-29复利计算单元测试

说明:之前用C语言写代码,现用java写代码. 场景分析,期待的返回值以及运行结果如下表: 注释:预期结果0.0,表示输入数据有误.即得不到正确的结果 测试模块 测试输入 预期结果 运行结果 bug跟踪 单利计算 获得利息 “100”,”2”,”1” 102.0 正确 “0”,”2”,”1” 0.0 正确 “0”,”dsaf”,”1” 0.0 正确 “0”,”-100”,”1” 0.0 正确 单利计算 获得利息 “100”,”2”,”1” 102.01 正确 “0”,”dsaf”,”1” 0.0

一个市值110亿美元的独角兽是如何计算用户流失率的

编者注:本文出自美国著名的红点创投Tom Tunguz 之手,被海外多家著名科技媒体和风投媒体所转载,中文版由天地会珠海分舵编译.大家怎么计算你自己的初创企业的用户流失率呢?以每月丢失了多少个用户算?那抓不住重点,因为有大客户和小客户之分.以向上销售率算?那有失偏颇,因为有可能你单个用户就给你带来大量销售额,而给你虚假繁荣的假想,看不到用户的大量流失这个事实.下面我们看看作者无意中窥破的ServiceNow的用户流失率的计算秘密- 之前在为全球第三大的SaaS公司ServiceNow准备他们的注

【软件分析与挖掘】BOAT: An Experimental Platform for Researchers to Comparatively and Reproducibly Evaluate Bug Localization Techniques

摘要: 目前有许多的bug定位技术,但是,由于他们基于不同的数据集,而且有些数据集还不是公开的,甚至有些技术只应用于小数据集,不具有通用性,因此,不好比较这些技术之间的优劣. 因此,BOAT应运而生.BOAT是指:Bug lOcalization experimental plATform.这是一个web平台,开发者注册之后,可以在这上面上传他们的bug定位技术,因为在这个平台上测试的数据集是相同的,所以与其他的bug定位技术具有可比性. 地址:http://www.vlis.zju.edu.c

计算小费

import javax.swing.JOptionPane; public class Money { public static void main(String[] args){ double gratuity; double total; String input = JOptionPane.showInputDialog(null,"请输入费用:","对话框",JOptionPane.QUESTION_MESSAGE); String input1 =JO

微软HPC群集添加Linux计算节点

HPC群集系统中计算资源的管理是重要的一块,如果能够实现计算作业可以在异构操作系统上面协同运作,无疑将是一大亮点,微软HPC pack自2012 upate3开始,支持本地linux作为计算节点,微软官网写到如何添加linux计算节点进入HPC群集的方法,但仅是Ubuntu版本的操作,而且有些关键步骤并没有写出,导致如果不是很懂linux的微软系统管理员做起来会遇到各种问题,因此老王通过本文将实际环境中安装涉及到的步骤全部呈现,并讨论linux计算节点为微软HPC群集带来的可能性. 本文以hpc