Also visit my Company Blog at ansustechnologies.com
Follow productzen on Twitter

Thursday, December 23, 2010

Agile Project Management - Capacity Planning

Capacity planning helps teams to commit to the right amount of work for the upcoming iteration.  The goal is to forecast future iteration/release capacities, a reasonable goal, but not really accurate because we do not know what the future holds so at the outset the forecast value is not the one that the capacity planning is focused on meeting. We should use capacity planning to find the following, on a given amount of capacity value what can I predict to accomplish with it.

Most of the time in Sprint planning we are more focused on velocity, a value that gives the value of amount of work done in a sprint which allows us to do target estimates with static team setup which is a must for agile teams as per agile manifesto.

Now let’s focus on the goal of planning future iterations.  For example our team wants to be prepared for 2 iterations into the future.  This would mean the team members would enter their capacity planning information into the future.

I am going to assume that you have given me the following for your team past sprint performance:


 Iteration N-2    Iteration N-1   Iteration N     Iteration N+1    Iteration N+2
Capacity (hrs)   100                  110                   100              120                   100
Estimate (pts)    13                    11                     10                 ?                        ?
N is the current iteration.
 From your past ratio of Estimate/Capacity I can determine a ratio that can then be used to calculate my target estimate.
 Ratio = (13+11+10)/(100 + 110 + 100) = .1096


Expected/Target Estimate
Iteration N+1 = (120)(.1096) =  13.5
Iteration N+2 = (100)(.1096) = 10.9


To summarize the key number for calculating target estimate is now Estimate/Capacity instead of Estimate/Person.