WIP limits are the key to establishing and optimizing the flow of work in a system.
When WIP limits are applied, work finishes sooner.
Without WIP limits:
- You can’t make accurate estimates for Cycle Time or Throughput – you can’t predict when a newly started user story will be done when the amount of work queued in front of it is constantly changing.
- You can’t have predictability – you cannot predict when an unpredictable amount of work will be done.
The cause of incorrect estimates is that the amount of work in the system is constantly changing. Reliable estimates are only possible when we have a stable system. That is, the amount of work being processed in the system (WIP) is aligned with the capacity of the system. It is not possible to provide an accurate estimate for when work will be completed when we have a system where work is continuously pushed that needs immediate attention.
Work should be kept outside the system for as long as possible until capacity becomes available to process it. This ensures that once a job is started, it can be finished as quickly as possible rather than become stuck idle in the system leading to an increase in cycle time. This minimizes the window where a customer might request changes to a work item, reducing the likelihood of wasted work. The lower the WIP limit of the system is set, the shorter the cycle time.
In a push system, a continuous stable workflow is never achieved because the amount of work in the system is determined by external pressure and constantly changing. Push systems are unpredictable because the amount of work in the system is unpredictable. Regulating the intake of work using pull system with WIP limits makes it possible to achieve a stable and continuous workflow.
Once consequence of imposing WIP limits is that work is unable to enter the system and may instead accumulate in your backlog. This simply means that demand for your work exceeds your capacity to supply it. Kanban shines a light on problems in your delivery system.