The primary goal of any organization is to deliver value. But most often, there is so much more to do than we have time for. And even worse, sometimes we try to solve this problem by working more. Unfortunately, if too much work is pushed into a system, it will overload and result in lower efficiency and poor quality. The key to managing this problem is to identify the system’s capacity and not to exceed it.
First a few definitions: (to keep it simple, Analysis work can be excluded from these metrics)
Cycle Time – Average time required to finish a work item from start to finish.
Work In Progress – WIP is the average number of items being worked on by the team at a given time.
Throughput – Average number of work items the team completes in a given time frame.
Impact of WIP:
An important focus area for our tribe is to reduce Cycle Time, which means deliver value as fast as possible. One obvious way to try and achieve that is to work longer hours. But that, as mentioned above, lowers efficiency and decreases quality.
This is where Little’s Law comes into play. The law is defined as:
Per Little’s Law (assuming low variability in size of work items), the easiest way to decrease Cycle Time is to decrease Work In Progress. Our focus should shift from starting new work to finishing what is currently open – Stop Starting, Start Finishing. But this is not going to be easy – we will encounter scenarios where breaking WIP limits will look like the easier and faster solution. Adopt a “stop the line” strategy, if possible, to solve the issues in front of you.
When we successfully control WIP, you will see some very encouraging results.
- Lower cycle time – we deliver value faster.
- Faster feedback cycles – higher quality.
- Improved predictability – easier to establish SLAs for future work.
- Less multi-tasking – lesser context switches, higher quality.
- Team is not overloaded – happy team members!
I have slack in my system!
So if the team is enforcing WIP limits, there will be slack in the system. This is a good thing! What can you do with the slack time?
- Help each other – Developers can help groom upcoming stories and also help with automated testing; Testers can help groom upcoming stories; Product Owners can help with testing.
- Improve quality and broaden your knowledge base – Pair programming, Swarming and Mobbing are practices that the team can look into.
- Find and act on areas of improvement for the team – Review your program transformation roadmap.
- Work on removing blocks in the system.
For more information: