0

We're re-organizing workflow in our team and one of the key decisions was to use Scrum process, provided with help of Jira and Greenhopper.

I've read various Scrum guides, documentation of Greenhopper and started Scrum process implementation in our team. After some corrections and changes it mostly good, but one thing doesn't let me sleep well: bugs.

Different solutions are proposed by developers, but I still can't find my way here.

In our workflow any issue lives in 4 states: Open -> In Testing -> Resolved -> Closed

When developer is satisfied with his code he puts issue to In Testing state, and it becomes automatically assigned to QA lead. QA verifies the issue and, if everything is ok issue becomes Resolved. If not - Open again. In Resolved state code review is performed, and if code is secure, optimal and fits the developed structure, issue becomes Closed. If developer did something wrong - Open again.

The tricky part here is re-opening of an issue (story), because at same time bugs are raised, which land in product backlog - not sprint backlog, and due to Scrum-way developer can't work on issues, that are not in sprint backlog, but at same time story can't be closed, because code is buggy or written bad.

So, the question is: should a story be closed, even if it has some bugs, related to it, and these bugs are planned to be fixed in further sprints?

Or story can't be closed, until all related bugs are fixed, meaning that if a sprint is finished, but not all bugs are fixed for a story, story remains opened, excluded from finished sprint and moved to a next sprint, so it's story points are not burned in finished sprint?

4

1 回答 1

2

在遇到类似情况后,我们发现我们的故事中缺少(或不足)的关键之一是定义明确(并达成一致)的“完成的定义”(DoD)。如果你有明确的“完成”标准,那么当故事完成(符合国防部)时,它就完成了,当然诀窍在于如何定义一个不太模糊的完成的良好定义,确保质量好,每个人都同意并且实际上是可行的。对我来说,这也不是一次练习,我们会在每次回顾中不断地重新审视它,以确保它们仍然相关并根据需要进行更改。对于建立一个好的 DoD 的想法,试试谷歌,团队可以做很多很好的练习来定义它(比如这个)。

至于漏掉的错误什么时候完成,我想说它们应该被反馈到产品待办列表中,并按照正常情况进行优先级排序。冲刺期间出现的与冲刺工作相关的错误应该在冲刺中修复(避免管理/文书工作!)。还要记住很多错误(或越来越多的错误)通常意味着质量存在问题,也许有更大的问题需要处理(可能完成压力太大?)。

总而言之,看看获得一个坚实的 DoD(鼓励质量胜于数量)并不断改进它,放慢速度并做得更少而不是更多“有错误”,当错误确实出现时,将它们反馈到产品积压中并参与PO 尽快对其进行优先排序。

作为旁注,我们发现在处理大量错误时,像看板这样更精益的方法比我们的 Scrum 流程的每周 2 次迭代方法效果更好。

希望这可以帮助?

于 2013-03-14T03:17:54.213 回答