在Scrum中,谁验证“完成”?


13

我是组织中的质量检查/测试经理,直到今天,我仍然验证软件的质量(编写和执行的测试以及已修复的错误)。谁将在Scrum中对此进行验证?我怎么知道团队编写并执行了所有正确的测试?另一方面,我担心如果我继续进行验证,团队将感觉不到足够的权力。但是我需要一些验证过程来确定“完成”确实是“完成”。你有什么建议?


Answers:


21

Scrum中的一个主要想法是团队应该就“完成的定义”达成共识。理想情况下,这类似于一组客观标准,任何人都可以通过检查清单进行验证。

但是,为了减少漏掉某些东西的机会,最好有一条规则:验证“完成”操作的最主要人员是实施项目的人以外的人,或者是像您这样的指定质量检查人员(但这可能会使您瓶颈)。

如有疑问,请与团队和Scrum Master讨论并共同决定。


尽管产品所有者通常不被视为团队成员的+1,但通常会被吸引到团队圈子之外,但在完成的定义中确实(或应该有发言权)。这是产品所有者可以(允许)影响团队工作方式的唯一方法。
Marjan Venema'2

1
@MarjanVenema产品负责人非常多认为是Scrum团队的一部分。实际上,没有产品负责人,Scrum几乎没有成功的机会。
Derek Davidson PST CST 2014年

1
@Derek:我认为您在基于不明确术语的基础上存在误解。这里有一个“ Scrum团队”和一个“开发团队”,后者是前者的一部分,还有产品负责人和Scrum Master。
Michael Borgwardt 2014年

2
@MichaelBorgwardt这就是为什么我在回复中如此清楚地表明产品负责人是Scrum团队的一部分。我同意产品负责人不是开发团队的成员,但是上下文并不清楚。我希望能消除混乱。似乎我可能无意间创建了一些:)
Derek Davidson PST CST 2014年

6

我认为这个问题有一个隐含的假设。当产品负责人宣布积压的项目或任务使产品所有者满意时,“已接受”与“完成”之间有区别,“完成”表示与积压项目相关的所有工作均已完成。

但是,任务的任务通常比产品所有者可见,通常是最好的半技术人员,包括(自动和手动)测试,文档编制和审查。产品负责人很少能够了解技术方面,更不用说它们是否完成了。

因此,最终由团队决定“完成”是什么意思。组织可能有标准,不同的利益相关者将有自己的要求。Scrum主管或相关经理通常负责整理和执行清单。

在您的示例中,作为质量检查/测试经理,您将说出测试是否完成。但是,您可能不是最好的人,无论您是否已审查代码,是否满足安全要求,产品是否已国际化,文档是否完整或是否构成“完成”。


4

“完成”的唯一概念是整个故事是否完整。团队应该已经创建了完成的定义,可以说他们何时觉得故事还没有完成。这通常包括诸如“已审查代码”,“已进行每晚测试”,“已满足所有接受标准”之类的事情。完成这些事情后,团队可以确信他们已完成所有工作期望他们完成一个故事。

在冲刺期间,如果您要确定完成的定义中的那些项目之一是否已完成,请询问。Scrum和敏捷都是关于开放式沟通的。如果您是团队的一员,请询问您的队友是否有人编写了测试,运行了测试或创建了夜间工作等。如果您是涉众,请询问Scrum管理员。

如果您坐在团队之外,但仍必须审查测试,请让团队添加“必须由用户user3251930审查测试”作为完成定义的一部分。如果这是完成一个故事所需要的,请诚实对待它并使其成为过程的一部分。“完成定义”的重点是使团队可以肯定地知道他们已经完成了交付高质量软件所需的工作。如果其中的一部分是外部审查,那就这样吧。

最终,是产品所有者在某个特定故事上签字,因此最终,他或她将最终决定整个故事是否完成。


我需要检查测试,否则我将不知道是否编写了正确的测试。“完成”的定义不包括应编写的确切测试。
尤金

@ user3251930:为什么需要对其进行审查?您不信任您的团队吗?但是,如果确实需要复查它们,则将完成的定义的一部分设为“ user3251930已复查了测试”。
Bryan Oakley

如果客户得到的东西未经完全测试,那就真的很糟糕。希望如此,也许我能够及时信任团队。
尤金(Eugene)

1

您应该问自己的第一个问题

您是Scrum Master吗?如是。

在Scrum中,流程由Scrum Master控制和管理。

你怎么做呢:

在需求阶段,您可以为每个用户故事使用一个需要验证的测试。

在每个Sprint中,工作项均从产品积压中拉出并由产品负责人指导,每个工作项也将具有验证标准。

现在,Scrum中的要求在开始冲刺后就不会改变。在冲刺结束时,您可以根据完成的每个项目的标准来分析验证。

如果完成,则只能由产品负责人的答复来找到。

记住在敏捷开发的后期,您就“拥抱变化”


0

团队决定。我使用一个检查表,用于“完成”。每个故事,每个冲刺,每个版本的“完成”是什么。

正如其他人提到的那样,最终的决定权在于产品所有者。


这只是您的个人意见,还是可以通过某种方式进行备份?
t 2014年

-1

同意这是开发/测试团队需要定义的内容,具体取决于您自己的实践。一些项目运行得如此敏捷,以至于他们愿意冒险将bug释放到其alpha流中。有些人认为任何在开发团队之外的错误都是流程失败。

我正在从事的项目需要对代码更改进行同行审查,并且要求编写代码的人要么提供/更新回归测试,要么解释为什么不能这样做。(他们和他们的审阅者还必须证明他们已经检查了已知的不良做法。如果他们能够证明他们运行了完整的测试套件并获得了明确的结果(或明确的模数,则通常会更高兴)。然后,代码必须幸免于在多个平台上进行的大量自动化单元和功能测试中,以证明它不会导致对它们的任何退步,并且可以通过自动化代码分析系统进一步检查常见的反模式。然后我们是否将其接受到主要开发流中并标记工作项已完成。

显然,这不能保证没有人能找到新的失败方法,但是它可以将风险降低到可接受的水平,而又不会大大影响开发速度。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.