在您看来,谁应该修复错误?程序员,对吧?好吧,但真的,谁……让我解释一下。
我是多个 Scrum 项目的 Scrum Master。Scrum 说“在可能的情况下保护你的资源”,我完全同意这种观点。
通常,我们整合每个 sprint 的某个百分比来修复前一个 sprint 的错误——一切都很好。
在每个 Sprint 之后,我们向客户演示和回顾,并将我们的开发代码推广到 UAT 环境(我们的客户通常不希望他的项目的一小部分上线,但这取决于他们 - 我们保持我们的通过确保我们部署工作和可测试的代码来讨价还价)。
一旦所有 sprint 完成,我们就有一个 UAT 阶段,客户在该阶段对已完成的软件进行彻底测试,以发现任何最后一分钟的错误。现在理想情况下,这些已经被捕获,但实际上有一些只是在 UAT 期间发现的。
在这个 UAT 阶段,并不是所有的开发人员都需要 100% 的时间参与项目,因此我们希望将他们重新分配给其他项目。然而,Scrum 说“在可能的情况下保护你的资源”。
我的问题是,我将开发人员分配到一个项目的 UAT 阶段,同时在其他地方与他们一起启动一个单独的 Scrum 项目。不理想 - 然而,这是目前的商业现实。
我可以:
1) 接受它并让开发人员修复他们自己的代码 - 并将开发人员的一些时间(例如,20%)分配给前一个项目的 UAT。
2) 确保移交到位,并有 1 或 2 名开发人员致力于 100% 的时间修复代码错误。
我喜欢 1),但它让资源获取真的很痛苦。
2)让我害怕,我觉得开发人员不会对自己代码的质量负责。我觉得在确保开发人员对自己的代码拥有所有权方面有很多话要说——要求他们修复自己的错误是确保质量的好方法。没有人喜欢修复错误,所以我发现开发人员通常会尝试提前做好工作,因为他们知道无论如何他们都必须修复任何提出的问题。然而,2) 更容易规划和资源化。但是 2) 将花费更长的时间,因为修复其他人代码中的错误在时间和资源方面是昂贵的。如果它是一个复杂的修复,它可能无论如何都需要原始开发人员的帮助,并且由不熟悉该部分代码库的人修复肯定需要更长的时间。
人们怎么想?