Most agile teams work in iterations, especially those teams that follow a cadenced approach, such as scrum. And why not, since an iteration-based approach provides many advantages to teams. But while there’s little argument concerning the value of iterations, finding the right iteration length for a team is no small feat.
But, even after finding the right iteration length, some teams start to wonder if the length they once thought was so perfect is still the right choice for them. Perhaps they’re lured by the promise of the greater efficiency of longer iterations, or the greater responsiveness of shorter iterations call to them like a siren’s song. Whatever the reason, it inevitably begs the question: can a team change the length of their iterations in the middle of a project?
If your team happens to be pondering this same question, then you’ll be happy to know that the answer to this question is a resounding, “Yes!” It’s completely acceptable for teams to change the length of their iteration in the middle of their project and it actually happens more often than you might think. But while changing iteration lengths in the middle of a project can be done, it’s not a decision that should be taken lightly. Luckily there are a few things that can improve your odds of success if your team is considering heading down this path.
Any change to how your team works will require time for them to absorb. This is true whether that change is the adoption of a new piece of the team’s technology stack, a new technical practice, or even a new team member. Even if the change is ultimately a positive one, don’t be surprised if your team’s output dips a bit while they become accustomed to this new way of working. This is especially true when changing your iteration length, since you’re fundamentally altering the timebox in which your team works.
The first thing you’ll need to do to prepare your team for this change is to help them understand how their planning activities will also need to change. For example, your team is probably conducting a planning session at the beginning of each iteration to select and plan their work for the upcoming iteration. And they’re also probably holding a review session at the end of each iteration to review their work and ensure that they’re on track to delivering what their customer needs.
If you are shortening the length of your iteration by half—e.g., from two weeks to one week—then you can expect that the duration of the accompanying planning and review sessions will also be shortened by half. For this to be successful, you must make sure your team understands that this shortened planning duration means that they’ll need to be more efficient during those sessions in order to accomplish everything they need to within the time allowed. A team that shortens its iteration length but continues to spend just as much time in planning sessions gains nothing and actually loses efficiency as now a smaller percentage of their time is spent actually producing value.
On the other hand, if your iterations are becoming longer, then you’ll need to prepare your team for the reality that they’ll now need to spend correspondingly more time in their planning and review sessions. For example, imagine that your team is currently working in two-week iterations but decides that three-week iterations are a better fit. If your team is currently spending four hours on the first day of each iteration planning their work for the next two weeks, then you’ll need to prepare them to spend roughly six hours planning their work on the first day of every iteration moving forward. While most teams will, at least superficially, understand the need for correspondingly longer planning sessions to accommodate the larger undertaking of work, understanding a six-hour planning session and participating in a six-hour planning session are two entirely different things.
But once you’ve prepared your team for this change, how do you understand the effects it will have on your project? A team’s velocity is often treated as one of the major indicators of a project’s success. And while we understand that velocity is not our goal, tracking a team’s trend in velocity over the past few iterations can be a powerful tool for forecasting the capacity that we can expect from that team in the future. But how can we predict the change in our team’s velocity after we’ve altered their iteration length?
Extrapolating a team’s new forecasted velocity based on the change in their iteration length may be a good place to start, but the actual effect of that change is rarely that simple.
It can often be tempting to simply extrapolate a team’s change in velocity based on the corresponding change in the team’s iteration length. For example, if your team has an average velocity of 50 points per iteration using two-week iterations, then it would stand to reason that that same team should produce 100 points per iteration using four-week iterations, right?
Maybe. Or, maybe not. Extrapolating a team’s new forecasted velocity based on the change in their iteration length may be a good place to start, but the actual effect of that change is rarely that simple.
A lot of factors can affect a team’s velocity from iteration to iteration, and the actual result of a change in iteration length may not be reflected in that team’s velocity for several iterations. This means that while your team’s velocity will change as result of a change in iteration length, how it will change will be tough to predict. For this reason, you’ll need to be prepared to expect the unexpected for the first few iterations under the new length as well as be prepared to account for this change in velocity in your longer term project planning.
While you won’t want to alter your team’s iteration length on a regular basis, the occasional change can be not only successful but even a very positive change for your team.
However, this change shouldn’t be taken lightly and your team will need your help to make it successful. By preparing your team for a change in iteration length using the tips above, you can help ensure they make the most of this new new change to their workflow.
Jeremy Jarrell is an agile coach who helps teams get better at doing what they love. When he’s not mentoring Scrum Masters or Product Owners, Jeremy loves to write on all things agile. You can read more of his thoughts at www.jeremyjarrell.com, see his videos at Pluralsight, or follow him on Twitter @jeremyjarrell.