Scrum迭代中的质量标准
作者:网络转载 发布时间:[ 2012/9/13 11:32:32 ] 推荐标签:
在Scrum迭代过程中,比较看重的一点是后的验收质量,迭代是滚动的,如果迭代的质量不达标,会导致质量债一直存在,这样会像滚雪球一样,逐步积累起来,越来越大,终导致Scrum只有形而已,而不是真正的敏捷。因为不能在任意阶段拿出可以发布的产品。
而产品质量这个词汇,又是一个比较虚的词汇,谁也不能保证产品没有bug了,谁也不能说产品的质量到达一个什么地步了。另外一点是在Scrum迭代过程中存在着三种角色,产品经理,研发,测试。在高质量的敏捷素质要求里面,要求后两者合二为一了,成为一个全能人才。但是很多公司里面,研发和测试还是割裂开的。那么这三个角色之间也会面临着质量诉求,研发要求产品经理的输出是在合理的质量范围,而不能在研发,或者测试的过程中发现问题。测试对于研发的质量输入也是有一定的要求的,不能出现太多的低级bug。这样面临了一个质量标准问题。
早的时候,是由上游说了算的,需求人员把文档交给程序员,告知完成了,程序员研发完成告知测试人员写完了。因为没有约束,所以导致质量不是很好,测试人员总是抱怨质量太差,测试的都是低级错误。后来进行实践,做过checklist(自检列表),然后根据测试的反馈进行了调整自测列表,但是即使这样,测试人员的满意度也不是很高,认为研发的输出质量依然不是很高,导致测试这边的压力很大。另外一点是,公司里面的测试人员的配比很低,只有8:1或者10:1的比例,这样也要求研发的输出质量要高一些,避免上一个迭代的测试还没有完成,下一次的迭代输出已经到了。导致测试永远都是瓶颈,也是压力大的人员,也避免作为后的一道屏障因为前面的输出质量太差,而纠缠在普通的bug上无法自拔,导致质量水平偏低。
针对上面的这些问题,参考了对日软件的经验和标准,制定了一套Scrum迭代内的质量标准。在公司的研发体系内,Scrum迭代内包括以下内容,详细需求,研发,测试。这样根据本次迭代的条目挑选出详细需求,进行研发,成果进行交付测试人员测试。三个过程都进行了约束,制定了质量标准。按照之前的经验,约定Scrum迭代内的质量标准为16Bug/KL(每千行代码16个bug),约定详细需求为4Bug/KL,设计+CD为7Bug/KL,测试为3Bug/KL。
约定了这个标准之后,要求研发人员需要找出详细需求4Bug/KL,研发后研发人员需要测出7Bug/KL的标准才能交付给测试人员,测试人员必须测试出3Bug/KL之后才能认为本次迭代结束。因为需求文档还没有对应的代码行数,于是根据研发时间进行估算,按照50L/D的天数进行计算。(按照生产性来说,应该是20L/D,但是因为现阶段的重复代码的存在,所以制定上翻了一倍左右。)这样按照预言的研发天数进行需求文档的质量约束。
关于质量标准,不同的人给与了不同的看法,在这里根据大家的一些反馈进行一些补充。
1、全能人才的Scrum团队实际上也需要一个质量标准进行把关,只是需要汇总前面的研发bug数和测试人员的bug作为一个质量标准进行验收。
2、不同人员的能力不同,导致的质量目标是不尽相同的,但如果把这个质量标准放在一个团队内进行考量的时候,个体的偏差会变得比较小了,这个时候,可以根据质量标准进行衡量整个迭代的质量,而不是个体的质量。另外是,如果项目属于中型项目的话,也可以使用模块级别来衡量,也是可以消除一定的个体偏差,使用质量标准来进行决定是否达标。
3、前面的质量标准只是一个参考值,并不是一个恒定不变的值,是用来借鉴的。尽信书不如无书是这个道理,每个团队可以根据自己的实际情况进行衡量,适配,初步的时候,可以使用这个标准进行参考,后面根据每次的反馈进行调整这个值。另外是,这个标准也可以在Scrum的大迭代周期内进行调整,根据每次迭代的内容进行一定量的调整还是必要的,比如这次迭代主要是算法,以及框架部分,可能代码量不是很大,这个时候为了更好的保证质量,每千行的bug数可以适当的调高。根据情况,灵活使用,这样才能更加的适配实际情况,更能符合现实。
4、关于自动化测试部分,实际上是后期质量保证的一部分,并不属于质量标准的部分。所以没有涉及到相关内容。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11