How to Plan an Iteration

 

The context for planning

Creating customer value iteratively and incrementally is a great foundation for a high-performing team. But how to plan an iteration?

Let’s talk about this in more detail.

First of all, we’re going to talk about planning context. Your iteration plan should not exist in a vacuum. It has to be connected to some higher-level objectives. Maybe you, as a team, maintain a backlog that covers longer-term priorities, and that’s where the work for each iteration is pulled from. Or maybe it’s some higher-level plan, like a release plan, where you get a bigger picture view first, but then execute, iteration after iteration. So, make sure that the planning context is right and there is a video that describes the higher-level planning, so be sure to check that out.

Deciding what can be delivered

So, let’s say we got that overall idea of what could be the scope of our iteration. All of this is just a good intent, but not really a commitment yet. To commit to something, the team needs to acquire some good level of confidence that they can really do this in the iteration. In other words, they need to gauge that intent against their actual ability to deliver. There are different ways to do this. Some teams just do effort estimation of their team backlog items and match it against the capacity that they also estimate for that iteration. But it’s always better when those numbers are not pure speculation, and instead are reflecting some historical data, if possible. And one way to do this is by using the notion of team velocity. We don’t even need any units to express that. To get started, look at your previous iteration. Pick a small backlog item; just call it a one. Estimate the rest of the items delivered in that iteration, relative to that small one. Add them up. That’s your actual, achievable velocity. Use that number for this iteration, given that the team has the same availability as before; otherwise adjust respectively. And then estimate this iteration’s items relative to previous ones and see how much you can fit in.

Simple? It should be!

Planning with the end result in mind

One super-important thing about planning (and also something many teams don’t know about) is that the best plan is created with the end result in mind. See, often teams get so hung up on planning the effort that they completely miss the purpose of that effort. But really productive teams don’t do that! What they do is they try to picture the end result, as tangible as possible, best of all describing it from the customer standpoint. So, first and foremost, as a team, try to articulate (in very specific terms) what is it that is going to be delivered two weeks from now. Just pretend you are in the future, at the demo of this iteration, and just describe what you see. And now, summarize that into an iteration goal, a brief, pithy statement that everybody on the team (and among stakeholders) will clearly know. That’s important. That’s what you’re fighting for, as a team, in this new iteration.

Lastly, you need the entire team for planning and possibly even other subject matter experts or stakeholders, as necessary. And don’t forget about other teams; you may need them; there may be dependencies. It’s a very good practice to do your backlog refinement a few days before your iteration planning. That way you will know if you need someone at your planning. So, be proactive, it’s not so hard, it’s actually fun and it’s very useful.

Taking action

I bet you got an idea of how to improve your iteration planning based on what we’ve just discussed. It’s time for action!

---------------------------------------------------------------------------------------------------------------------------

Learn more

How to plan a release

Sprint Planning. Agile Alliance. https://www.agilealliance.org/glossary/sprint-planning/.

Alex Yakyma

Alex Yakyma is the author of “Pursuing Enterprise Outcomes” and “The Rollout”. As a consultant, Alex is helping enterprises succeed with complex challenges. Throughout his career, he operated in multi-cultural, highly distributed environments. Alex has trained a large number of change agents and leaders whose key role is to help their organizations achieve higher effectiveness at pursuing business outcomes.

Explore more content

How to Plan a Release

Getting a bigger picture
Read more
Contact Us