In Lean Systems, it is important to identify the most important factor that slows down work in a system (a “bottleneck”), adjust it, and continue the same process with the next-most-impactful bottleneck. Eliyahu M. Goldratt describes this concept, the Theory of Constraints, in the book The Goal. The original context for this concept was in Lean Manufacturing. It is also possible to apply the Theory of Constraints to any system where there are multiple steps to deliver value, as is the case in software development.
When applying the Theory of Constraints, the following five-step process is helpful:
- Identify the constraint.
- Exploit the constraint.
- Subordinate everything else to the constraint.
- Elevate the constraint.
- Avoid inertia and repeat the process.
Theory of Constraints Video
Theory of Constraints Podcasts
Theory of Constraints Example
Authored by Steve Moubray
Edited by Philip Rogers
Agile World Resources are provided as free resources to anyone seeking to learn more and are shared under a creative commons attribution license. This means if you use a resource elsewhere you must name Agile World Resources as the source, who the author is, and the photo creator (if used).