讲述缺陷的记载、流转和分析_OD体育

栏目:茶油

更新时间:2021-10-28

浏览: 90038

讲述缺陷的记载、流转和分析_OD体育

产品简介

既然无法完全阻止缺陷的泛起,那如何确保已发生的缺陷获得有效的处置惩罚,如何使用已有缺陷来指导质量内建历程,是我们需要思量的,也就是缺陷治理的内容。

产品介绍

本文摘要:既然无法完全阻止缺陷的泛起,那如何确保已发生的缺陷获得有效的处置惩罚,如何使用已有缺陷来指导质量内建历程,是我们需要思量的,也就是缺陷治理的内容。

既然无法完全阻止缺陷的泛起,那如何确保已发生的缺陷获得有效的处置惩罚,如何使用已有缺陷来指导质量内建历程,是我们需要思量的,也就是缺陷治理的内容。敏捷测试原则中有一条是:预防缺陷,而不是关注缺陷的数量。

OD体育官网

在敏捷开发中,虽然我们接纳了种种措施预防缺陷的发生,例如精准的自动化测试、代码检视、故事卡验收等等,可是并不能保证没有缺陷发生,一个零缺陷的产物也不现实。既然无法完全阻止缺陷的泛起,那如何确保已发生的缺陷获得有效的处置惩罚,如何使用已有缺陷来指导质量内建历程,是我们需要思量的,也就是缺陷治理的内容。本文以某实际项目的缺陷治理为例,联合自己的所思所想,讲述缺陷的记载、流转和分析。

1. 缺陷记载1.1 哪些缺陷该被记载?在记载缺陷前,我们要理清楚需要记载的缺陷有哪些,是不是每一个缺陷都应该被记载。一般来讲,缺陷分为两类:一类是迭代内缺陷,即在迭代新功效开发时,故事验收或测试阶段发生的缺陷;另一类则是生产缺陷,我们是允许生产缺陷的存在的,但前提是缺陷影响规模可控,或者可以在用户发现前发现缺陷(测试右移),而且要具备快速修复或者回滚的能力。对于迭代内缺陷,一般发现阶段分为故事卡验收阶段,功效测试阶段,回归测试阶段。

对于故事卡验收阶段发现的缺陷,是否需要记载可视情况而定,一般而言不需要记载,因为此时故事卡仍在开发阶段,开发同学仍然事情在这张卡上,上下文富足,修复缺陷成本较低,可以直接备注在卡片上,等下一次故事卡验收的时候再验证是否修复。对于测试阶段和回归测试阶段的缺陷,建议记载下来,因为此时开发这张卡片功效的开发同学已事情在其他卡片上,没有措施实时修复该缺陷,或者修复该缺陷的或许是其他开发人员,那么就需要将缺陷记载下来便于跟踪。对于生产缺陷,每一个都应该被重视而且深入分析,故需要记载下来。

1.2 记载工具在选择缺陷记载工具的时候,要思量以下几点:(1)该工具是否支持协同事情?缺陷和故事卡一样重要,是各个角色都需要体贴的事情,即意味着各个角色都需要能够检察、操作缺陷记载工具,所以缺陷记载工具需要支持协同事情。(2)该工具是否容易学习?基于第一点,团队成员均需要操作该工具,不管是否有技术配景,所以需要一个学习成本低的工具。(3)该工具是否易于跟踪缺陷状态?缺陷和故事卡一样存在流转状态,也会有差别的人员事情在该缺陷上(开发人员、测试人员),所以记载工具最好具有状态流转标识,固然你也可以手动记载其状态,但能让工具帮你做的事情为什么倒霉用工具呢?(4)该工具是否能清晰记载缺陷?下一小节会讲到缺陷记载的要素,选择的工具需要能清晰表达这些要素。

(5)该工具是否便于统计分析?缺陷治理中很重要的一部门是缺陷分析,缺陷分析固然是基于数据的,这些数据可以手动收集,如果工具能自动帮你做一些统计那是最好的。所选择的工具纷歧定需要具备以上提到的所有特征,可是支持协同事情、易于跟踪缺陷状态和清晰记载缺陷是必不行少的,其余特征可凭据项目情况而定。我所在的项目选择的记载工具是看板,是项目基于Jira定制化开发的一个协同办公系统,在这里我们可以将其视为和Jira无异。

我们在故事卡的泳道下面新建了一个跟踪缺陷卡的泳道,一个缺陷记载一张卡片,这样大家就可以像操作故事卡一样操作缺陷卡。它支持添加自界说标签的,标注卡片优先级,添加附件,充实满足缺陷关联的内容。

也支持导出卡片数据,对之后的缺陷分析十分有资助。使用Jira记载缺陷,主要是便于检察缺陷状态,但随着迭代的完成,缺陷卡片会被归档,每张卡片也是独立的,倒霉于集中检察和查询。这样的流转方式对迭代内缺陷是没有问题的,因为迭代内缺陷一旦修复,后续基本不会有人再去检察关注。

但对生产缺陷却纷歧样,每一个生产缺陷都应该被认真看待分析,我们可以将其统一记载在某个地方,用于之后回首。我们项目组的做法是将生产缺陷统一记载在Confluence,便于集中检察,只要满足协同办公的软件都可以,在线WPS的Excel,Google Sheets也是不错的选择。使用Jira/Trello这类集需求跟踪为一体的工具来记载缺陷的一大利益是,缺陷记载和故事卡记载在统一系统/面板中,利便团队成员配合检察、维护缺陷,不至于只有QA在关注、维护缺陷。

OD体育

查了下网上有许多专门用于缺陷治理的工具,好比Bugout,集缺陷记载、跟踪、统计分析于一体,还可以自界说缺陷记载模版、统计字段类型等,还是比力灵活。固然另有许多其他许多缺陷治理工具,就不在此赘述了。

1.3 缺陷记载要素记载缺陷有两个原则:(1)形貌完整,清晰易读懂记载的缺陷卡和故事卡一样,需要给团队成员看,所以缺陷卡需要形貌完整清晰。(2)规范化,便于缺陷分析分析统计总是基于规范的数据结构,所以在记载缺陷的时候就需要思量之后缺陷分析需要什么,以此去规范化记载缺陷。

看板是可以自界说卡片内容模版的,所以界说好模版后,团队任何人都可以凭据模版记载缺陷。如果使用的工具没措施自界说模版,建议和团队同步记载规则,或者由QA统一记载。我们项目组记载的缺陷主要有以下要素:a.标题简述缺陷内容,清晰明晰。

b.形貌缺陷发生情况(DEV/ST/预生产/PRD),相关测试数据(ID/用户名等),复现步骤,期望效果,实际效果,备注(截图、日志等)。c.优先级在卡片上备注缺陷的优先级,一般是高、中、低。d.缺陷提交人在卡片操作记载里有记载,如果没有操作记载,可以以评论或者到场人的形式添加,以便后续开发人员或QA可以快速找到熟悉上下问的人。e.缺陷修复人分配卡片经办人/到场人员即可。

f.标签便于之后的缺陷分析,可以给缺陷打上标签。针对生产缺陷,我们会标注以下标签:所属功效模块(凭据系统自界说)、可识别阶段(需求阶段/开发阶段/测试阶段/公布阶段/难以识别)、缺陷类型(功效/性能/宁静)、影响规模(大/中/小)。2. 缺陷流转每个缺陷也应该像故事卡一样,有它完整的生命周期,下面以我们项目组为例讲述迭代内缺陷和生产缺陷的流转历程,固然每个组情况纷歧样,可视自身项目组情况而定。

2.1 迭代内缺陷流转历程上文讲到,迭代内缺陷和故事卡记载在看板的同一面板的差别泳道,那么缺陷卡的生命周期和故事卡基本是一样的,如下图所示:针对迭代内的缺陷应该在什么时候修复,我们的处置惩罚原则有以下几点:(1)如果是阻碍开发/测试进度的缺陷,应该被立刻修复;(2)如果是本迭代必须交付的功效相关缺陷,且修复成本高或影响规模大的缺陷,应该被尽早修复;(3)如果是本迭代必须交付的功效相关缺陷,但修复成本或影响规模较小的缺陷,留到迭代后期修复,在上线前2/3天时,我们会在站会竣事后团队所有成员一起回首板子上仍未修复的缺陷卡,大致同步优先级以及上下文。2.2 生产缺陷流转历程在生产缺陷发生后,我们会先决议其优先级以及处置惩罚流程,然后快速修复,并对其深入分析,其流转历程如下图所示:3. 缺陷分析敏捷测试原则说我们应该预防缺陷而不是关注缺陷的数量,所以对于缺陷分析,我们的出发点是:对已发生的缺陷举行深入分析,从中找到问题所在,以到达预防缺陷的目的。3.1 分析周期迭代内缺陷的数量比力多,而且一般大多数都是开发逻辑错误造成的,一般而言分析价值不大。

如果每个迭代平稳运行,缺陷数量平稳,建议不用特意分析,究竟分析缺陷是耗时的。如果某个迭代显着感受缺陷数量增长,可以针对性对本迭代缺陷举行分析。固然,如果你有充实的时间,可以将缺陷分析作为一项日常事情。

而对于生产缺陷,每一个都值得被重视。2.2节讲述的流转历程,其中我们就已经对其举行分析了,分析其问题出在哪儿,然后增补相应的测试。如果想要对生产缺陷举行归类、趋势分析,那么就需要有一定的数据才可以,而生产缺陷不常有。所以其分析周期建议是1个月,或者3个月,甚至6个月,视各个项目组的情况而定。

3.2 分析角度我们组常用的分析角度有以下几个,差别的项目偏重点会有所差别。(1)缺陷根因可以将缺陷一一分析后举行归类,根因可以分类为:需求缺失或者不清晰、技术方案设计问题、代码逻辑错误、测试未笼罩、情况相关(硬件、软件、第三方等)。分类后如果某一类问题较突出,则可以针对性产出革新事项。

(2)缺陷发现阶段针对迭代内缺陷,发现阶段可以归类为:故事验收阶段、功效测试阶段、回归测试阶段。我们知道,缺陷越早发现修复成本越低,如果分析后发现某一阶段泛起的缺陷较多,应该去反思是哪个环节错了,我们是否可以更早的袒露缺陷。(3)缺陷所属功效模块功效所属模块凭据系统差别而差别,这一类分析资助我们思考,某一块存在的缺陷多是因为存在技术债还是测试笼罩不够,可以资助我们革新质量计谋。(4)缺陷数量趋势如果可以,对于迭代内缺陷可以维护一份数量趋势图,就不需要我们靠直觉去感受哪个迭代缺陷多,而是有真实的数据作为依据,更具说服力。

对于生产缺陷,建议可以维护一份数量趋势图,因为生产缺陷数量走势也是反映我们产物质量的一个重要维度。(5)缺陷可识别阶段这一分类主要针对生产缺陷,缺陷可识别阶段可以归类为:需求分析阶段、开发阶段、测试阶段、公布阶段,难以识别。

OD体育官网

这样分类的初衷不在于归过于某一角色,某一人,而是为了进一步分析是哪一阶段的实践有缺失,需要进一步改善。(6)缺陷类型缺陷类型可以归类为:功效缺陷,性能缺陷,宁静缺陷。敏捷项目中的QA需要关注产物各个方面的质量,包罗性能、宁静等,将缺陷类型划分清楚,可以指导增补我们单薄的地方。

这些分析维度并不是一开始就是这样的,途中履历过多个版本,有增有减。好比一开始我们没有“缺陷类型”这个分析维度,将所有的缺陷都归为功效缺陷,厥后逐渐关注平台的宁静问题,以及随着平台用户增加,也泛起过性能问题,所以加入了“缺陷类型”这个字段。又例如,我们一直保持着“缺陷所属功效模块”这个分析维度,而且比力重视该维度分析,因为通过对它的分析经常能发现一些问题。所以分析维度不是牢固一层稳定的,是可以凭据项目实际情况择优选择的。

3.3 分析工具数据有了,就需要将数据可视化出来,便于分析,便于展示给团队。我们项目组曾使用过的分析工具有:(1)Jira一开始我们使用的Jira记载缺陷,Jira可以凭据卡片自动生成图表,饼图、趋势图都可以,所以记载分析一体就很利便。(2)ppt到后期,使用看板,看板没有图表分析的功效。

那么我们就将看板数据导出,然后导入PPT绘图。只要记载的缺陷卡片规范,也不是很费时,但没措施展示趋势,只能展示导出阶段的数据。(3)Tableau是一款商业的数据分析工具,可以画种种图,对于展示趋势图也很利便。

可是上手成本并不低,而且它主要的功效是举行数据分析,绘图只是它的九牛一毛,用它做缺陷分析有点大材小用的意思了。固然也需要现将缺陷数据从看板导出然后导入Tableau。(4)定制化开发看板插件我们项目组缺陷分析的事情在团队内是获得认可的,分析缺陷比力耗时的问题在迭代回首会时引起大家的关注。于是通过团队的努力,我们在迭代内排了一定事情量给开发同学基于看板开发了一款用于卡片分析的插件,该插件可以分析故事卡的工具量、投入比等,也可以统计缺陷数量,按缺陷标签分析自动生成图表。

算是团队定制化的插件,也具有一定普适性,列入了看板系统官方推荐插件。如果使用Jira/Trello治理缺陷的团队,也可以实验开发一些定制化的缺陷/故事卡分析插件。

以上就是本人基于项目实践总结的缺陷治理相关内容,主要在于缺陷治理流程和思路的分析,希望对大家有所资助,也接待大家多多交流。文/ThoughtWorks蔡群尧。


本文关键词:OD体育,OD体育官网,OD体育网址

本文来源:OD体育-www.dymviviendas.com