
在较早的博客文章中,我介绍了我们的“ Review Roulette”(审查轮盘)的概念,这是一种随机代码审查的过程,旨在促进学习并增加集体代码所有权。 我解释说,我们将通过两个月的尝试来尝试这个想法,然后进行评估。 我还承诺分享该评估的结果。 在这篇文章中,我将这样做,并描述为使我们更好地使用“ Reut Roulette”而采取的步骤。
评估…
为了进行评估,我们要求所有参与者填写一份简短的问卷调查表,其中提出了三种不同观点的问题:
- 审稿经验
- 作为受审者的经验
- 总体印象
这些问题集中在“复核轮盘赌”作为发现缺陷,提高内部质量和共享知识的手段的(公认的)有用性上。 此外,我们询问了一些我们认为是运作良好过程的潜在障碍的方面,例如时间消耗和沟通方面。
- 学习MacOS:屏幕截图
- 我们的小镇:记录和介绍当地历史和民俗生活
- Cynefin Framework及其在当今软件行业中的影响
- 华盛顿州西雅图—婴儿怪兽集团(Baby Monster Group)是2017年西雅图创客博览会的入选参展商,在这里,我们…
- 微学习有什么用?
从结果中我们可以得出结论,总体而言,Review Roulette获得了非常积极的反馈。 100%的参与者同意我们应继续进行结构性实验,并且“我认为进行轮盘复核是有用的”这一陈述获得了平均4.75的总分(满分5分)。 对于我们来说,这足以决定继续执行“复核轮盘”,直到今天仍在进行。 不过,根据反馈,我们进行了一些小的修改。
…然后调整
在问卷调查结果中,我们注意到“我分配的提交对复习有用”这一陈述在5分中平均得分仅为3.38分,其中63%的参与者得分在3分以下。 这主要是由于随机选择了单行文本更改进行审查而导致的。 为了对此进行改进,我们添加了一个过滤器,该过滤器仅选择在相关源文件(php,js,css,json等)中具有至少3条更改的行的提交才能进行审核。 使用diffstat分析提交,这种过滤器的实现非常简单。 这应该清除掉大部分琐碎的更改,仅保留更有趣的提交供审核。 副作用是,这还解决了导入二进制文件以供审查的问题。
我们确定的另一个障碍是进行复核轮盘赌所需的时间。 尽管我们同意在实验开始时将时间限制为每周一小时,但“我能够找到足够的时间来查看分配给我的提交”这一陈述平均得分仅为5分中的3分,其中63%的参与者得分为3或更低。 这主要受到我们相对大量的学生员工的影响,他们除了学习外,还每周工作1或2天。 尽管在一个全职工作周中,每周一小时几乎可以忽略不计,但当您的工作周仅为8–16个小时时,这是一项重要的时间投入。 根据此反馈,我们为兼职人员引入了每两周一次的时间表(仅每两周为他们分配一次审核),同时使全职员工保持原始的每周时间表。 这确保了我们仍然可以从与学生员工的双向知识共享中受益,同时限制了他们需要花费的时间。
最后观察
从问卷调查结果中得出的有趣发现是,就发现的错误(5分中的3.38分2.63分)和改进的设计( 4.50比3.13(满分5分)。 从中可以得出的教训是,我们决不能低估我们给予他人的反馈的价值。 对我们自己而言,看似微不足道的事情或对他们而言是一成不变的事情,对同事来说可能是全新的。 这正是我们旨在通过Review Roulette扩大的知识共享类型。
结论
该实验和评估与敏捷软件开发有很多相似之处:从一个小而简单的实验开始,然后进行评估和调整通常很有用。 大约4个月以来,我们一直在使用带有上述改进功能的Review Roulette,并且对其带来的附加价值感到非常满意。