速度的第一个答案,而不是我个人对 Scrum 非跨职能团队和每个 sprint 早期测试人员的见解。
我看到那里不一致。如果团队不是跨职能的,那么您可以区分测试人员和开发人员。在这种情况下,您还必须在速度计算中区分它们。如果团队不是跨职能的测试人员并不会真正提高您的速度。您的速度将是开发人员可以实现的最大速度,但不会超过测试人员可以测试的速度(如果必须测试所有内容)。
与您的 scrum master 交谈,否则速度和估计总是会出现问题。
现在至于测试人员和冲刺的早期阶段。我在没有 5 个开发人员的跨职能团队中担任测试员,所以这个答案可能有点个人化。您可以通过两种方式解决这个问题:a) 通过添加单独的测试冲刺来改变工作组织或 b) 改变测试人员的工作方式。
在 a) 中,您创建了单独的测试冲刺。它可以与开发冲刺并行发生(只是改变了那几天),或者您可以每两到三个开发冲刺发生一次。我听说过这种解决方案,但我从来没有这样工作过。
在 b) 中,您必须要求测试人员审查他们的测试活动方法。也许这取决于您使用的实践和工具,或者您遵循的流程,但在早期他们怎么可能无事可做?正如我之前提到的,我在非跨职能团队中与 5 名开发人员一起担任测试员。如果我一直等到开发人员结束他的任务,我就永远不会测试给定 sprint 中的所有功能。除非您的测试人员只执行探索性测试,否则他们应该在将功能发布到测试环境之前做一些事情。在测试人员获得功能/代码之前,可以完成(或必须完成)一些活动。以下是我在将功能发布到测试环境之前所做的事情:
- 检查要实现的功能的要求
- 设计测试脚本(高级设计)
- 准备草稿测试用例
- 浏览可能的测试数据(如果正在实施的更改正在操作系统中的数据,您需要制作此数据的快照,以便稍后将其与给定功能将对该数据执行的操作进行比较)
- 总结测试套件中的所有内容
- 在开发功能时与开发人员进行沟通 - 这样您可以更好地了解已实施的解决方案(而不是询问他何时已经考虑过其他功能)
- 您可以对测试用例进行任何必要的更改作为功能进化
然后,当功能完成时,您: - 用您之前不知道的任何细节充实测试用例(这很简单,但按钮名称可以更改,或者出现向导中的一些额外步骤)
- 执行测试
- 引发问题
。实际上,我发现自己花更多的时间在第一部分(设计测试,并在适当的工具中准备测试脚本)而不是实际执行这些测试。
如果他们尽可能地立即而不是等待代码发布到测试环境,它应该有助于解决这个初始差距,并且它将最大限度地减少测试人员在冲刺结束之前没有完成他们的活动的风险。
当然,测试人员在开始时总是做的更少,最终做的更多,但你可以尽量减少这种差异。即使上面仍然让他们在开始时浪费大量时间,您也可以给他们不涉及编码的任务。一些配置,一些维护,文档更新,其他。