All too often agile teams over commit to the amount of work they can do in a sprint. Often the reason is they forget to account for time off and the other things they have to do like meetings and other project work. Which all reduces the amount of time they have to work on sprints.
Sprint capacity planning is a technique to help teams understand how much work they can accomplish in a forthcoming sprint.
A nice analogy is filling a glass. Your glass has a fixed capacity. You add water until it is full. In sprint capacity planning, replace the capacity of the glass for the capacity of your team over the duration of the sprint. And the liquid you are adding are the things you want to work on. Simply add work to the sprint until it is full.
There are two ways to plan a sprint: velocity driven sprint planning and capacity-driven sprint planning. This article provides a great summary of both approaches and why capacity driven sprint planning may be the best approach.
How to do agile sprint capacity planning
The agile sprint capacity planning process we explain below is something you can build in an Excel spreadsheet. And a little further down this article we show you how you can use Kelloo for sprint capacity planning.
In this example, we have just planned a couple of weeks. But if you want to plan your sprints a few weeks or even months into the future, just add on further columns for the weeks.
Step 1: Calculate the availability of your people
First work out the normal availability of each of your people. This would be how many hours they normally work each week before taking vacations or time off.
In this example we are only doing this for two team members to keep things simple. But you would repeat this until you’ve recorded all team members in your table. And in this example, we are planning in weeks as our sprints run week to week.
Step 2: Reduce availability by time off
Now for each team member find out how much time off they have planned and reduce their availability accordingly.
Step 3: Account for other work, activities and distractions
Now think about all the other things that eats up your team’s time. Some of this may be obvious like support, other projects and meetings. But dig a little deeper and try and uncover as much as you can.
Now reduce their availability further taking into account all the other activities and distractions.
You will end up with something like this. In our example, the capacity in hours we have available over the two week sprint period is 70 hrs.
Step 4: Add work to the sprint
Now take work from your backlog (highest priority first) and assign it to your sprint. Keep going until the sprint is full. As you add work, compare the total sprint capacity to the total estimates for the work.
Any work that does not fit, either move it into the next sprint or back into the backlog.
How many sprints to plan?
There is no hard and fast rule here. To some extent it depends on the volatility of your backlog and how often priorities change.
There is a temptation to plan a series of sprints out into the future, allocating backlog items into each. The problem you have is that all your future sprints have essentially become separate backlogs.
Given a sprint in progress now, we would certainly have the next sprint planned. And maybe the one after that as re-organizing a couple sprints is not going to be a major headache and lets the team get a heads up as to what is coming down the line.
Sprint capacity forecasting
If you do want to plan sprints out into the future, perhaps to get a heads up on resource needs or to estimate when work is likely to happen we suggest a slightly different approach.
Just enter an estimate of how much time the team will spend on each sprint without tying this back to specific backlog items. This helps you get a view on your potential work going forward and how many sprints it may take to clear the backlog.
Kelloo's agile resource planning tools
Resource planning, forecasting and reporting in one place. We help you get the most from your projects and people.
Sprint capacity planning in Kelloo
Step 1: Set up your resources
Start by listing your resources. It can also help to organize them into teams and roles. This is how the resource pool looks in Kelloo.
For each person you can set working patterns, vacation periods and time off. Once Kelloo has this information it can automatically calculate the capacity of your people.
Step 2: Create your sprints
Create your sprints and assign people or teams. Kelloo will then calculate the available capacity of your resources through the sprint period.
You can also schedule when your sprints are happening if you want to provide a roadmap of future work.
Did you know? Kelloo is a resource planning solution that supports agile and non agile resource planning and capacity planning.
Step 3: Add work to your sprints
Move work from your backlog into the required sprint. Kelloo has its own backlog or you can keep your backlog in a spreadsheet or whatever tool you use.
Step 4: Check your sprint capacity
As you add work to the sprint, the total sprint work is compared to the sprint capacity. The sprint capacity indicator shows you how full the sprint it.
Step 5: Check your utilization
You can also monitor utilization, availability and capacity on a heatmap. This is useful if your resources also have to work on other projects or activities alongside their sprint work. The heatmap consolidates all work and checks for any utilization issues across your people or teams.