如何打破敏捷项目在开发和质量保证之间的障碍?

时间:2020-03-06 14:22:14  来源:igfitidea点击:

我已经在项目中应用敏捷了几个月。但是,我们在迭代燃尽方面看到了一个稳定的问题。每次迭代我们都不会达到零。

剩下的任务是质量检查任务。诸如编写测试,测试等之类的事情。

现在,组织对"跨职能团队"的敏捷思想有所抵制。开发人员是为单个项目开发的,但是测试人员可以为多个项目共享。这与开发人员和质量检查人员一起工作的敏捷思想完全相反。

测试人员的时间分散在许多其他项目中,这是导致我们速度下降的原因。开发人员正在测试以获取尽可能多的空闲时间,但是某些任务仍未完成。

从我所看到的,我可以做两件事:

  • 说服组织迈向"每个项目都有专门的质量检查人员"
  • 将我对"完成"的定义更改为不包括质量检查/测试工作。事情仍然会进行单元测试。

我宁愿避免做第二名,因为我重视我们正在做的测试协作。

我们对我的困境有什么建议?

解决方案

我认为除非所有人都参与其中,否则我们不能称呼我们正在做的敏捷。让测试人员坐在开发人员的身体附近(至少在测试人员正在为他们的项目执行任务时,例如创建测试计划的时间),这可以促进沟通并获得质量保证。

这是一个艰难的局面,不幸的是,很多尝试遵循敏捷的公司都没有意识到这一点。
即使可以将敏捷资源分配给不同的任务,也不需要专门的质量检查人员。我们确实需要在进度跟踪中包括质量检查。

是的,进度会变慢。这是有充分的理由的(我们没有足够的质量检查资源),我们应该在手的情况下向组织管理层解释这一点。这将说服他们必须进行一些更改。

另外,我们可以转向更自动化的测试,并使用开发人员来帮助测试人员进行自动化测试。这样可以更均匀地分配负载,并提高项目质量检查的质量

我们可以将质量检查视为开发人员的客户。因此,当Devs在QA迭代结束时发布时,迭代就完成了。

来自客户的反馈(需要修复的错误)可以纳入下一次迭代的工作中。

为此,我们必须获得QA来为项目分配足够的时间。我们可能需要与他们的管理人员合作,以便为他们留出一定的时间来从事项目。这样,我们就可以安排他们的时间,并确切地知道开发人员可以做多少工作,从而使质量检查团队有时间进行测试。这可能需要我们缩减开发规模,以弥补QA减少的支持。

我们不会提及有多少测试是自动化的。我们可能可以提高测试自动化程度,以减少质量检查团队认证项目所需的时间。我们可以使用部分开发时间来准备质量检查测试,以供质量检查小组运行。并非最佳,但可能会有所帮助。

在短期内,请停止使用过程中无法使用的质量检查资源,并根据需要使用专门的任务来执行这些任务。我意识到这不是理想的选择,但是在某些情况下,组织结构与流程不符。我们可能会发现它会很好地工作(并了解过程中的测试)。

从长远来看,选择是

  • 寻找一种方法来与给定的组织结构/流程一起工作
  • 改变组织结构以适应过程
  • 调整适合组织的开发过程

我认为QA在敏捷环境中提供的不仅仅是测试工作。如果质量检查人员对工作流程及其不同分支有足够的了解,则可以坐在驾驶员席上来推动其余的Scrum流程。可以与开发人员一起进行质量检查,以设计最终将驱动测试用例的逻辑工作流。这样一来,在开发人员进入QA环境之前,就可以消除开发过程中与设计和工作流程相关的许多错误。