BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News What is Sprint Zero? Why was it Introduced?

What is Sprint Zero? Why was it Introduced?

This item in japanese

Bookmarks

Some teams use a Sprint 0 to prepare their product backlog, the infrastructure (development environment, CI server), ... .Is this part of Scrum? Is it useful?

Dan Rawsthorne, a Senior Coach with Danube, uses Sprint 0, as a way of getting a team started:

The idea is simple: take an initial sprint (called Sprint Zero, Iteration Zero, Inception Sprint, etc) that has the following three goals:

  1. Get some quality items on the Product Backlog,
  2. Provide a minimal environment that enables the writing of quality code, and
  3. Write a piece of real code, no matter how small.

And, of course, make this Sprint Zero as short as possible. In my experience, this sprint can be as short as one week, which is what I recommend.

Mark Woyna, uses Iteration Zero as a spike:

The planning team is responsible for producing 3 deliverables by the end of the planning iteration:

  1. A list of all prioritized features/stories with estimates
  2. A release plan that assigns each feature/story to an iteration/sprint
  3. A high-level application architecture, i.e. how the features will likely be implemented

With one team, Peter Stevens, an Agile Coach in Switzerland, used a Zero Sprint to estimate the most important features, agree on a definition of done and rebuild confidence with the customer. Like the others he set the iteration length to be shorter than normal for the team.

So Is this Scrum? The iteration is a different length than the teams norm and the result is not to produce working, tested software. Is it useful?

Alistair Cockburn, author of Agile Software Development (The Cooperative Game) chimes in with:

I have a sneaking feeling that someone was pressed about his use of Scrum when he did something that had no obvious business value at the start, and he invented "Oh, that was Sprint Zero!" to get the peasants with the pickaxes away from his doorstep.

Ken Schawber, co-creator of Scrum agrees: "Sprint 0 has become a phrase misused to describe the planning that occurs prior to the first sprint".

Michael James, also of Danube, finishes the conversation by asking why isn't this Sprint 1? And then Sprint 2? ... With each sprint producing a potentially releasable product and refining the backlog?

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • What is Sprint Zero? Why was it Introduced?

    by Rody Middelkoop,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    We use Scrum in an educational context to learn bachelor computer science students how to do Java projects in an agile way. We advise our students to do everything that does not directly produces potentially shippable code in the pre-game phase. That includes writing the core requirements, modeling the core use cases, creating a first version of the business object model and preparing tooling like the IDE, continuous integration and wiki. This way, the sprints are used for developing high quality software in equal and repetitive iterations; teamvelocity can be measured and used as input for the next sprint. So, no sprint zero for us, however the pre-game phase is loaded with activities!

  • Sprint Zero & Business Value

    by Will Read,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    This sounds like a workaround for a team that is agile, working for a company that is only partly agile. A sprint produces a shipable product by definition. The trap that Danuabe may be caught in is that not all of the team's time will produce a shipable product - you have to make internal tools, do some R & D, and help plan releases and the underlying architecture.

    Business needs to let the devs do this kind of work, but it also needs to be timeboxed. At a very basic level, a sprint is a timeboxed period where the team does work. So if the team always has to be doing work, aka "in a sprint", then 'Sprint 0' is a great work around.

    To say that a shop isn't agile because the label they use is 'Sprint 0' vs. 'The preparation before the first sprint' is madness. But it probably says that the team is working around something, an impediment, that shouldn't be there in the first place.

  • Re: Sprint Zero & Business Value

    by Ben George,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Its a good idea to do an 'iteration zero', but with the smallest team on the ground as possible. Our current project made a BIG mistake of having the full team on hand for iteration zero. There is no point having 4 devs, BA, QA and project manager all involved in setting up pcs, installing ide's, organising servers, proxies, firewalls, databases, ci, fiddling with build lights etc etc.

  • Hasn't this all been discussed before?

    by Jason Yip,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The concept of "Iteration Zero" has been around as far as I can remember in XP but I don't remember where the first reference would be... I'm guessing it would be one of the early Addison-Wesley books as I can't find it on WikiWiki.

    Iteration zero describes the activities that occur prior to the first iteration. The phrase, "Sprint Zero" is a translation of the phrase "Iteration Zero" to fit within the Scrum branding ecosystem.

  • Re: Hasn't this all been discussed before?

    by Dave Rooney,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I remember talking about Iteration 0 at least back in 2003 at a client.

    ...the Scrum branding ecosystem.


    Nice! :)



    Dave Rooney

    Mayford Technologies

  • Re: Sprint Zero & Business Value

    by Tony Greening,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    We are a fully agile company and use Iteration 0 to get the environment setup, the backlog groomed, and prototypes done. Calling it a part of Agile or not is truly madness. This is work that needs to get done. Getting this work done in Iteration 0 ensures in Iteration 1 that the entire team is dedicated to business stories and delivering value. It's about expectation setting with the business. Iteration 0 should be short and with deliverables outlined. Some are getting too dogmatic as to what is in and out of Agile. Show me where the manifesto says this practice is not Agile. (Stepping off soap box now)

  • Re: Hasn't this all been discussed before?

    by Mark Levison,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Jason - perhaps it has, but I wasn't familiar with the idea and thought the conversation worth people's attention.


    I don't think there's any Scrum branding going on here. Personally I with Micheal James I don't see how this is really different from any other sprint/iteration (I don't care about the language).



    If you have to do pre-game planning, great - but don't pretend its Scrum. The part that seems very strange is to have an 'iteration' that is of different length than your normal iterations. Doesn't seem much like an iteration to me.



    Final note, I not a fanatic - if iteration zero works for you by all means use it.

  • Re: Hasn't this all been discussed before?

    by Mark Levison,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I remember talking about Iteration 0 at least back in 2003 at a client.





    Dave - in internet years that makes you how old?

  • Re: Sprint Zero & Business Value

    by Mark Levison,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Some are getting too dogmatic as to what is in and out of Agile. Show me where the manifesto says this practice is not Agile.



    Although I've called Ken dogmatic in the past - I would this time. He's simply stating that Scrum as he and Jeff conceived it didn't include Iteration 0.



    As I said above personally I have trouble with an iteration that is a different length than all the others, but to each their own.

  • Re: Sprint Zero & Business Value

    by Dave Rooney,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Calling it a part of Agile or not is truly madness. This is work that needs to get done.


    ...and...

    Some are getting too dogmatic as to what is in and out of Agile. Show me where the manifesto says this practice is not Agile.


    Yes, absolutely! Being "Agile" doesn't mean that you give up thinking.



    I guess my only tweak would be that rather than just assuming that there will an Iteration 0 that doesn't deliver visible business value, you should look for a way to incorporate some business-facing work. One way to do this is to schedule Stories for the first iteration (either 0 or 1 based!), but the story estimates will be higher because of the bootstrap tasks to be completed. If the Customer is part of Release Planning, this is clearly explained to them. You can make it their choice at that point.



    Having said that, sometimes you just have to bite the bullet and have an Iteration 0 to do the setup work. In short, use common sense and be pragmatic about it. But if you can ship some value... ;)



    Dave Rooney

    Mayford Technologies

  • Re: Hasn't this all been discussed before?

    by Dave Rooney,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Dave - in internet years that makes you how old?

    Not quite this old and not quite as old as Ron Jeffries, but still "up there"! :)



    Dave Rooney

    Mayford Technologies

  • Re: Sprint Zero & Business Value

    by Marek Suur,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Its a good idea to do an 'iteration zero', but with the smallest team on the ground as possible. Our current project made a BIG mistake of having the full team on hand for iteration zero. There is no point having 4 devs, BA, QA and project manager all involved in setting up pcs, installing ide's, organising servers, proxies, firewalls, databases, ci, fiddling with build lights etc etc.


    I don't want to sound dogmatic, but I really fail to see your point here. So, what are you actually doing in this Sprint Zero? Setting up PCs and IDE's - are you saying some developers don't need them? And exactly for how long can you do this? Firewalls, databases, servers - why, you don't need them for very first stories. Creating good user stories for next iteration - so you need PO more than ever to be included. Keeping the Sprint Zero really small - why, if you can have a normal length sprint with some business value produced at the end.

  • Re: Hasn't this all been discussed before?

    by Rachel Davies,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Iteration Zero evolved from something called a ZFR ("ziffer") - Zero Feature Release. According to Bill Wake in XP Explored it was Mike Hill who came up with the idea in one of the early XP Immersion classes around 2000.

    In Scrum it's a good way of timeboxing the creation of an initial Product Backlog. And it's run as a short sprint with tasks on the board and daily scrum to synchronize activities rather than some vague period for mulling things over.

  • French translation

    by Fabrice AIMETTI,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    This article is still relevant. I have translated it into french :
    Qu'est-ce que le Sprint Zéro ? Pourquoi a t-il été introduit ?
    Regards, Fabrice

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT