Bug改不完,迭代总延期,咋办?( 三 )


文章插图
图4 不合理的任务看板
按照【图3:合理的任务看板】的卡片流转情况,这样可以尽早的发现需求的缺陷,降低了缺陷在系统中存留的时间,就是降低了它带来的风险 。
需求上,澄清需求的时候明确验收标准在需求澄清的时候,团队和产品负责人要对验收标准达成一致意见,并且记录下来,以辅助开发团队编码时有法可依 。下图为示意图,在DevCloud记录用户故事的工作项里,同时记录验收标准,减少最后验收时出现需求式的Bug 。

Bug改不完,迭代总延期,咋办?

文章插图
图5 DevCloud用户故事中的验收标准
质量上,通过预防来产生质量质量管理大师克劳士比的质量管理基本原则里提到,预防产生质量,检验不能产生质量 。所以,如果我们能在开发的时候就采取预防措施,做到第一次做正确,这才产生了质量,这也是零缺陷管理的核心 。
Bug改不完,迭代总延期,咋办?

文章插图
图6 克劳士比零缺陷管理三要素
根据我们的实践和总结,推荐如下动作:
1. 沟通需求的时候,团队一起了解需求,在用户故事卡片里帮助添加检查点,以便于在编码的时候就会提前考虑这些检查点,进而编写代码的同时就保证了质量 。
2. 在讨论需求和设计的时候,团队(一般由架构师或者技术能力强的测试人员来主导)就针对当前的设计和使用的技术提出需要注意的问题和建议,可以让开发人员在编码的时候就规避了潜在质量问题 。
通过以上活动,从产品内在提高了质量,可以从本身上大大减少Bug数量 。
测试上,加强自动化测试做到持续回归从迭代里的第一次提交代码开始,任何一次提交代码,都做一次回归测试,这样可以保证第一时间发现对已有功能的影响,尽早修复,而不是在最后一次回归测试的时候发现问题 。这个回归测试速度要快,也就是不花费太多时间,同时覆盖的面越广越好 。
考虑到开发人员不爱做测试的共性,所以回归测试要做成便于开发人员维护,学习、维护成本低,效果好(如上所述的运行速度快、覆盖面广)的特点,比如说接口自动化测试 。如下图所示,以软件开发平台 DevCloud 的接口测试为例,配置必要的信息,即为一个场景下的接口测试用例 。
Bug改不完,迭代总延期,咋办?

文章插图
图7 DevCloud的接口测试配置
将所有接口都写好测试用例,然后配置到在流水线里 。每次提交新的代码,都让它自动触发流水线,运行自动化测试用例,失败的话,就发邮件通知到该开发人员 。
Bug改不完,迭代总延期,咋办?

文章插图
图8 DevCloud的流水线
这样,就可以高效的做了回归测试,最终使得在编码期间,有任何Bug出现,都可以第一时间发现,不会都堆积到项目的最后时刻爆发 。
总结迭代总是因为修复不完Bug而延期,解决方法并不是团队继续加班去工作,而是要找到根本原因,对症下药,通过诸如避免小瀑布陷阱、通过预防来产生质量、增加接口自动化测试、需求澄清时明确验收标准等措施来改善工作流程,才能避免陷入恶性循环,彻底解决这个问题 。
点击关注,第一时间了解华为云新鲜技术~

经验总结扩展阅读