Wednesday, October 25, 2017

Sprint Zero - some just can't let go of the Waterfall Mindset

Sprint Zero is NOT a part of Scrum. You will not find it in the Scrum Guide or any Scrum Certification Course. Sprint Zero is an anti-pattern.

So where did it come from? People that have little understanding of Scrum but LOTS of Waterfall experience must have come up with this term.

A “Sprint 0” clearly does not deliver a potentially releasable product. In fact it perpetuates the Waterfall mindset of Big Up Front Analysis and Planning. It is almost identical to what most of us remember as “gathering requirements” before a project.  I cannot emphasize enough how “anti-agile” this concept is.  Does that mean we don’t put together a Product Vision and a backlog before we start Sprinting? No. Of course not. But we do it BEFORE we start Sprinting. If we want to eliminate the waterfall mindset, we need to start by eliminating the concept of a “planning Sprint” or a Sprint 0. Plan all you want. Just don’t call it a “Sprint”. Clearly, it is not. Don’t just take my word for it, you can consult Mike Cohn, the Scrum Alliance,  Alex Ballarin Latre, and the Scrum Guide.


The heart of Scrum is a Sprint, a time-box of one month or less during which a 'Done', usable, and potentially releasable product Increment is created.” - Scrum Guide 

A Sprint 0 is the name often given to a short effort to create a vision and a rough product backlog which allows creating an estimation of a product release… that activity does not meet the definition of a Sprint in Scrum, so it is better not to call it so.” - Alex Ballarin Latre

“Sprint zero is usually claimed as necessary because there are things that need to be done before a Scrum project can start. For example, a team needs to be assembled. That may involve hiring or moving people onto the project. Sometimes there is hardware to acquire or at least set up. Many projects argue for the need to write an initial product backlog (even if just at a high level) during a sprint zero.
One of the biggest problems with having a sprint zero is that it establishes a precedent that there are certain sprints or sprint types that have unique rules. Teams doing a sprint zero, for example, will dispense with the idea of having something potentially shippable at the end of that sprint. How can they have something potentially shippable after all if the goal of the sprint is to assemble the team that will develop the product?” – Mike Cohn, https://www.mountaingoatsoftware.com/blog/sprint-zero-a-good-idea-or-not


Some "Reasons" given to justify a Sprint Zero:

[we need some upfront] "planning, product backlog setup, and design. This is my favorite, as it clearly indicates two things:
  1. Someone is finding it hard to move away from Waterfall.
  2. The organization is finding it difficult to give up control and empower the team.
Introducing a long Sprint Zero at the start and a long validation at the end helps keep the love for Waterfall alive. In addition, it hinders the effectiveness of Scrum.
If Waterfall works for you, then by all means, you should use Waterfall. This article focuses on teams that follow the Scrum rituals but keep the Waterfall soul…

planning, product backlog setup, and design is a proxy for "big design up front" (BDF). In Agile we try to stay away from that. Often, an associated symptom will be a very hierarchical organization, thus preventing the Scrum team from being really empowered.
Personnel who are most active in Sprint Zero may be different from those most active in other sprints.
The Sprint Zero leaders will "guide" the team through sprints but may not feel bound by the time and other constraints that the rest of the team has.
This creates a two-level organization instead of the flat one that Scrum promotes. A two-level organization tends to follow a task-assignment and status-reporting culture, instead of a mind-set of ownership and delivering value.
Scrum believes that every sprint should deliver potentially usable value. None of the above Sprint Zero items produce any value for the customer. They cannot be demoed.


In other words, there is no valid reason for a Scrum Team to have a Sprint 0. It is for people who cannot let go of the Waterfall mentality and/or do not fully understand Scrum. As a coach that has been practicing Scrum since 2004, I can tell you there is no need – and plenty of reasons against – creating a “Sprint 0” and calling it Scrum.

No comments:

Post a Comment