One question I hear from managers just starting an Agile process is how does the process ensure developers are hard at work and that there is not a lot of lull time.
This is the wrong way to think about the project. What I would have the managers look at, in prioritized order:
- The product backlog – ensuring there is a high level backlog. This usually starts at the project initiation phases and continues throughout the lifecycle.
- The sprint backlog – ensuring there is a detailed backlog for the immediate and perhaps upcoming sprints
- High completion percentage – having the team be able to give their commitments and establish a pattern of high completion rate. The completion rate is (the amount of work of work completed) / (the amount of work to which the team committed) for the sprint.
- Stable velocity – once you have a high completion rate, then look towards stabilizing the velocity.
- Evolve/Optimize – once the team understands its capabilities and capacity, it is ready to expand its abilities.
Steps 3 and 4 go hand in hand. When a team understands its ability (Step 3) and capacity (Step 4), the project has great advantages to success. Project estimates can now be made with responsible levels of confidence and historical backing, which leads to enhanced capabilities on making strategic decisions. This is where the bulk of the work is going to take place in maturing the process and team.
Step 5 is where we get back to the original question. Without Steps 3 and 4 in place, this is pointless. Once we understand ability and capacity, then we can look to improve. I would change the statement "hard at work without lull time", which measures no value. What we can do is measure the value the team is delivering (usually in the way of business value points combined with story points) and identify how we can further improve those metrics. Focus not on individuals being fully utilized, but rather on team delivery of value and increasing it.
|Mouse hard at work|