您的当前位置:首页>全部文章>文章详情

【PHP】关于bug率计算和它的实际意义

CrazyPanda发表于:2024-06-22 17:43:35浏览:254次TAG:

问题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:

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

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

 

猜你喜欢

【PHP】支付宝小程序授权登录踩坑记录
最近做了个uniapp转支付宝小程序的项目,遇到了很多问题,在此记录一下。1 授权登录,提示grant_type参数不正确接口链接https://opendocs.alipay.com/mini/05dxgc?pathHash=1a3ecb13小程序端先获取授权codePage({   getAuthCode() {     my.getAuthCode({      &nbs
发表于:2023-12-27 浏览:382 TAG:
【PHP】PHP面试题
100 个常见的 PHP 面试题1) PHP是什么?PHP是一种基于脚本的web语言,开发者可以动态的创建网页。2) PHP的全称?Hypertext Preprocessor(超文本预处理器)。3) PHP与哪些编程语言相似?PHP语法类似于Perl和C。5) 实际使用的PHP是哪个版本?推荐使用版本7。6) 如何从命令行执行PHP脚本?在命令行界面(CLI),指定要执行的脚本的文件名,如下所示:1php script.php7) 如何从命令行界面运行交互式PHP Shell?将PH
发表于:2024-05-22 浏览:281 TAG:
【PHP】php使用curl常见出错
hp是一款广泛应用于服务器端开发的编程语言。在常见的web应用程序中,php常使用curl库实现http请求,主要用于与其他web服务进行通信。然而,在使用curl时,开发人员可能会遇到各种问题,其中最常见的问题是curl在发送请求时出错。cURL错误通常会导致请求无法正常发送或无法成功获取响应。本文将介绍cURL的常见错误以及如何解决这些问题。一、未安装cURL扩展在使用cURL前,首先需要在PHP中安装cURL扩展,否则cURL库将无法正常工作,在发送请求时会抛出错误。要检查PHP是否已经
发表于:2024-03-19 浏览:295 TAG:
【PHP】RestFul简介和使用
1.1 RestFul简介REST全称是(Resource) Representational State Transfer,翻译过来为“资源代表状态转移”,中文意思是表述性状态转移。它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:“我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST指的是一组架构约束条件和原则,不是标
发表于:2024-05-24 浏览:216 TAG:
【PHP】tp使用lunar-php,获取节日节气
lunar-php 是一个用于获取公历和农历(即阳历和阴历)信息的 PHP 库。要使用 lunar-php 获取节日和节气,你需要先安装这个库。 首先,通过 Composer 安装 lunar-php:composer require chenmingl/lunar-php获取阳历阴历节日及节气:require 'vendor/autoload.php';   use Lunar\Lunar;   //&nbs
发表于:2024-04-09 浏览:310 TAG:
【PHP】php函数find的用法
在php的开发中,有很多常用函数可以帮助我们快速完成一些操作,其中常用的一个函数是find函数。这个函数的作用是用于查找字符串中的特定字符或子字符串。本篇文章将详细介绍php函数find的用法。基本语法find函数的基本语法非常简单,只需要在字符串中调用该函数并传递要查找的字符或子字符串作为参数即可。例如:$string = "Hello World!"; $find = "W"; $result
发表于:2023-12-29 浏览:299 TAG:
【PHP】PHP8.0 match函数
`match` 表达式是 PHP 8.0 引入的一个新的控制结构,它提供了一种简洁且更强大的方式来进行条件匹配。与 `switch` 语句相比,`match` 表达式具有以下优势:返回值:match 是一个表达式,它会返回一个值。严格比较:match 使用严格比较(===),而 switch 使用宽松比较(==)。单行语法:每个条件都必须在同一行内完成。默认值:可以使用 _ 作为默认匹配情况。基本语法$result = match ($value) { &
发表于:2024-08-07 浏览:256 TAG:
【PHP】ThinkPHP 资源路由的简单使用,restfull风格API
一、资源控制器资源控制器可以轻松的创建RESTFul资源控制器,可以通过命令行生成需要的资源控制器,例如生成index应用的TestR资源控制器使用:php think make:controller index@TestR # php think make:controller 应用名@资源控制名或者使用完整的命名空间生成php think make:controller app\index\c
发表于:2024-05-24 浏览:249 TAG:
【PHP】php怎么使用正则匹配去掉html
php使用正则匹配去掉html方法:1、创建一个php示例文件;2、定义一个HTML标签的字符串“$html_string”;3、使用正则表达式“/1dad84ea0069e7538b7dfc1ec7547c1e/”匹配所有html标签;4、使用“preg_replace("/1dad84ea0069e7538b7dfc1ec7547c1e/",$html_string)”语法删除html标签即可。本教程操作系统:Windows10系统、php8.1.3版本、Del
发表于:2023-12-19 浏览:325 TAG:
【PHP】微信支付v3的jsapi接口接入thinkphp6完整流程
        相信,写过微信支付接口的程序员,都会骂一句,什么垃圾文档。惠州网站建设今天给个完整的解决案例。哎,绕来绕去,把你绕坑里。我也是不知道掉了多少坑才写出这个避坑文档。目的是想让自己记住thinkphp6在接入微信支付v3时候jsapi的时候,不要在掉一次坑。因为,官网文档的说明内容真的让人无语。都严重怀疑,他不想让人成功接入他们支付一样。        下面说下我们
发表于:2023-12-01 浏览:781 TAG: