关于ZAKER 融媒体解决方案 合作 加入

分析了 3000 份 Bug 记录,可以发现什么?

CSDN 2019-12-15

为了进一步了解软件开发团队处理 bug 的流程,我们随机抽取了过去的两个月中上传到我们数据库中的 3000 个 bug 记录 ......

作者 | Dan Makarov

译者 | 弯月,责编 | 郭芮

出品 | CSDN(ID:CSDNnews)

以下为译文:

人们会在哪些时段报告 bug?你可能从未认真想过这个问题,这就是我们想要探索这个问题的原因之一。第二个原因是我们手头有合适的数据,因为我们的工具可以帮助团队报告和修复 bug。简而言之,我们希望进一步了解软件开发团队处理 bug 的流程。为此,我们随机抽取了过去的两个月中上传到我们的数据库中的 3000 个 bug 记录。

以下是我们的发现。

下午两点是报告 bug 的黄金时段

看来,下午 2 点是报告 bug 的黄金时段。有趣的是,从早上 9 点开始,陆陆续续出现 bug 报告,一直到下午 2 点的时候达到最高峰。5 点钟的时候也有一个小高潮。很难确定为什么会这样。可能是因为有些人在一天的工作结束之前进行了一系列测试。那么问题就来了:人们的工作时间是从几点到几点?

我曾经怀疑北美的软件开发界甚至都没有标准的工作时间。然而,事实证明并非如此。我们比较了常规时间段(早 9 点 - 晚 5 点)内上传的 bug 记录,以及其他时间段内上传的 bug 记录。

两个时间段的比例几乎相等,起初我们有些惊讶。从上一张图(各个时段报告的 bug 数)看来,似乎常规工作时间内人们的活动更多。因此,我们完全没想到会出现几乎完美的 50/50 分布。然而,原因很简单:因为早 9 点 - 晚 5 点仅为一天的 1/3。因此,剩余时间是常规时间段的两倍,但是报告 bug 的速度却仅为 1/2。那么问题来了:现如今产品团队工作人员的工作时间是否更加灵活?还是说如今我们的工作时间更长,而且我们应该反省我们的工作习惯?

四分之一的 bug 报告发生在周二

我们以为周五和周末提交的 bug 报告会的于其他时间段。事实证明,我们的猜测是正确的。但我们没想到的是,每周开头两天的活动量很高。而我们以为周一、周二、周三和周四之间没有太大差异。

2/3 的 bug 都是在预生产环境中报告的

根据 Capers Jones 在 2009 年进行的一项研究,85% 的 bug 都已经在代码进入生产环境之前被发现了。如今也是这样吗?

在我们的样本中,2/3 的 bug 报告来自预生产环境(本地和暂存环境)。这个数字远低于 Capers Jones 最初的研究。

其中一个原因可能是因为用户组不同。Capers Jones 主要关心软件开发团队,但我们的产品用户不仅限于工程师、测试人员、项目经理和设计师。例如,我们发现客服团队的活动有所增加。这意味着两件事。首先,通常业务和运营岗位上的人不会使用暂存环境,所以他们只能报告生产环境中的 bug。其次,他们报告的有些 bug 实际上并不是 bug。即便是一个完全通晓产品的人也无法立即判断出某个问题是否真的是 bug。某些行为的起因可能是隐藏得很深的设置,也可能是由于广告拦截器导致的,或者是连接问题等。

我们无法断定,这种假设是否足以解释预生产环境报告的 bug 数高出 20% 的现象。因为其中的因素有很多:公司规模、开发方法论(敏捷 / 瀑布)、质量保证流程、业务逻辑的复杂性,甚至公司如何定义 bug 等。

"Bug" 是 bug 报告中最常见的词

在此次的分析中,我们利用 bug 报告的标题创建了词云,并发现了最常见的主题。

这个结果与我们的预想非常接近。Bug、Error、Page、Test 等都是最常见的词。坦白说,我们没想到 "Collection" 和 "Date" 会如此醒目,可能是由于我们的样本数据所致。

接下来,我们删除了频率最高的 7 个单词,以更好地理解其他词语。如上所示,很明显形容词和动词也显现了出来。尽管如此,大多数单词还是名词。

我们发现了一件最有趣也最令人欣慰的事情:有些词没有在榜单上名列前茅。根据个人经验,我们知道有时人们会以非常笼统的术语来描述 bug,比如 " 根本跑不通 "、" 某某功能出了问题 " 等。为了避免这种现象,我们还特意建立了一个 bug 报告模板,帮助非技术人员更好地报告 bug。然而,在我们的样本中,这种行为很少见。

大多数 bug 报告都来自 macOS

尽管 macOS 仅占普通市场的 17%,但它仍然在 bug 报告中居榜首,这个操作系统下报告的 bug 甚至超过了 Windows 和 Linux 的总和。难道是因为 macOS 可以提高工作效率吗?

最近两个月里的使用大部分都来自旧版本的 macOS(Mojave)。最近我们还看到 Catalina 上的活动增加了。

我们在 Windows 上看到的数据没有那么详细。我们只能说,几乎所有的 bug 记录都来自 Windows 10 用户。

Google 可以向 Chrome 用户提供最新的软件

目前,我们的产品官方只支持 Chrome,这就是为什么我们没有统计有关其他浏览器信息的原因。但是,我们知道 Chrome 约占我们网站流量的 80%,其次是 Firefox 和 Safari。

在我们的数据库中,最早的 bug 报告来自两个月前。同时,只有极少量的 bug 报告来自 4 个月前发布的 Chrome 版本。Google 在确保用户升级到最新版本方面的表现非常出色。

这种策略我们只能作为最佳实践来推荐,因为这样可以让我们的调试工作更容易。此外,还可以确保我们的用户基础更为统一,这不仅对软件开发团队有积极的影响,而且对技术支持也有益。

最常见 bug 的 bug 报告

最后,我们决定利用手中的数据,建立一份最常见 bug 的 bug 报告。为此,我们结合了本文的信息以及上图中未包含的数字。

下面是今年秋季 " 最常见 bug" 的 bug 报告:

标题:Bug error. Test collection date issue。(注:来自文中词云图的条目)

时间:星期二下午 2 点

环境:暂存

作业系统:macOS 10.14.6

设备供应商:Apple

浏览器:Chrome 77

屏幕尺寸:1920x1080

视窗尺寸:1920x798

语言环境:en-US

原文:https://hackernoon.com/what-weve-learnt-from-3000-bug-reports-nxp3ohv

本文为 CSDN 翻译,转载请注明来源出处。

以上内容由"CSDN"上传发布 查看原文

最新评论

没有更多评论了