• SCRUM节外生枝(五)


     

    上接:SCRUM节外生枝(四)

     

    5.       BugBugBug

    理想中的SCRUM世界,不需要验收测试阶段,因为每个Sprint结束,都会交付一个可发布的版本。但是,现实中每个Sprint结束后都会不断涌现新的Bug。所以《硝烟中的ScrumXP》说:“你大概没法取消验收测试阶段”。但正是这Sprints之外的验收测试阶段,把我们拖入了万劫不复的境地。产品原本计划1Release,但1年半时我们仍在修复不断涌现的Bug。我们的目标是修复所有Priority 01Bug,并使Bug修复率达到至少80%,才能宣布到达Beta 这个Milestone。但每轮Full Test发现的Bug总是与修复的Bug不相上下,Bug数始终没有呈现收敛的迹象。最终VP Engineering辞职,大家对于这种状态也是非常沮丧。

    到了这种程度,再想回到一个良性循环的状态,谈和容易。这个教训告诉我们,如果验收测试无法避免,我们也要努力使其缩到最短。而要实现这一点,一要保证在每个Sprint中开发人员交付的代码质量,二要提高每个Sprint中测试工作的效率。只有这样,在每个Sprint结束后,Bug才会尽可能的少。

    按照以前的做法,其实每个Sprint是个微观的顺序开发过程,开发人员先写代码,完成功能,快到Sprint的结束的时候,测试人员才开始测试,必然地,发现的Bug没时间修复。不是影响下一个Sprint,就是累积到最后的验收测试阶段。后来,我们把开发人员和测试人员按Backlog分组,每个Sprint,从第一天起,开发人员和测试人员都开始忙碌的工作,开发人员只要有新代码提交,测试人员就立即测试,有Bug马上反馈;没有新代码提交,测试人员也会准备测试环境、编写测试用例等。另外,增加单元测试覆盖率、建立自动化测试团队以开发自动化测试框架、增加Exhaust Test等手段从另一个方面提高代码质量。而且,将发布新版本的周期从一年左右,减为半年左右,每个版本增加较少的功能,但使交付更频繁。这样的变化,使情况有了较大改观。

    所以要尽可能地让Bug消灭在每个Sprint中,不要等到最后验收测试阶段,那时Bug们会形成合力,你只有招架之功,无还手之力了。

    结束语

    本文只记述了几个我们在实践SCRUM中遇到的问题,像这样的问题还有很多,有些得以解决,有些则还没有。但是无论怎样,SCRUM所描绘的完美世界有着巨大的吸引力,激励着越来越多的实践者不断前行。

  • 相关阅读:
    RPC
    动词 or 名词 :这是一个问题 【转载】
    js 如何清除setinterval
    封装动画特效
    飞入特效
    建字段_添加数据_生成json.php
    mybatis由浅入深day02_9.3.5使用生成的代码_9.4逆向工程注意事项
    mybatis由浅入深day02_9逆向工程
    mybatis由浅入深day02_8spring和mybatis整合
    mybatis由浅入深day02_7.4mybatis整合ehcache_7.5二级缓存应用场景_7.6二级缓存局限性
  • 原文地址:https://www.cnblogs.com/wanghui9072229/p/1977654.html
Copyright © 2020-2023  润新知