Every system, no matter how high-functioning, has a bottleneck. Some point in the process is slow, inefficient or just plain ineffective compared to those around it.
According to Eli Goldratt’s Theory of Constraints, the first step in improving the flow of value through a system is to identify the constraint itself. This may sound silly as a start point — of course we know where the problem is! — but if we apply improvement efforts to the wrong point in the system we’re very likely to make things worse.
In the early days of software development, development itself was the bottleneck. Often running months behind schedule and massively over budget, this new function was an obvious and painful hold-up in getting value to customers.
But, thanks to their disciplined use of Agile ways of working over the past two decades, most software development teams are no longer the bottleneck in their organization.
Of course, that doesn’t mean the bottleneck is gone. It’s just moved somewhere else.
If we can understand and effectively apply the Theory of Constraints, we can create a roadmap for applying the lessons of Agile software development across the enterprise.
What Is the Theory of Constraints?
First unveiled in Goldratt’s business novel "The Goal," the Theory of Constraints (ToC) brilliantly illustrates the pain that comes from sub-optimal systems, and the right approach for relieving that pain.
While its original application was in manufacturing, ToC has since grown into a widely applicable way of thinking. I’ve applied it with coaching clients in marketing many times myself.
The core of the ToC are its five focusing steps:
- Identify: What one part of the process is having the biggest impact on your inability to deliver value? Choose wisely, because improving a non-bottleneck part of the system might actually make things worse.
- Exploit: This doesn’t mean making the bottleneck work overtime! Here we look for quick wins that can streamline the work within the constraint. So if our bottleneck is the copywriting step, can we make small adjustments to their ways of working, maybe letting them work from home two or three days per week, to speed them up?
- Subordinate: Change the areas around the constraint to serve it better. Make sure work is 100% ready before it gets to the bottleneck, and that no issues are introduced later in the process that would send the work back through the bottleneck.
- Elevate: If the first two steps didn’t work, you may need to make a more significant investment of time and money into this constraint. Upskilling, cross training, and/or hiring come into this step. They come last because they can be very disruptive, and if we can fix the problem without going here we should try all those options first.
- Repeat: If you fix one constraint, another part of the system will become the new bottleneck. You must therefore continue your efforts, starting at the first step, with each new constraint.
Related Article: What Agile Teams Bring to the Digital Workplace
Examples of Constraints
In a manufacturing environment constraints or bottlenecks tend to be physical: certain equipment works more slowly, certain parts of the product creation process are more complex, etc. But constraints take many forms:
- Physical constraints: Equipment speed, material shortages, lack of people, lack of space.
- Policy constraints: “The way we do things around here,” including both required and recommended ways of working; may include company procedures, contractual obligations, and/or government regulations.
- Paradigm constraints: Deep-seated beliefs or habits that are often closely tied to — or even created by — policy constraints; e.g. we need to publish a blog post every week to stay competitive in our niche.
- Market constraints: When you can make more than the market demands. Over time, with an effective application of ToC, the constraint should end up here.
The Migration of Constraints in the Enterprise
As noted above, software development was once the supreme bottleneck. Then, after improving the policies and paradigms around that kind of work through applying Agile frameworks, the constraint migrated.
This migration is what’s triggered the application of Agile to other parts of the organization.
For many, the most obvious new constraint became marketing. This was the case in my first encounter with Agile while working in marketing at a software company.
Tied to old-school project management approaches, our marketing team simply couldn’t keep up with the Agile developers who would sometimes release updates to the software on a daily basis. Once we adopted our own version of Agile and smoothed out our ability to deliver value to customers, sales became the new bottleneck. Had the sales team successfully implemented Agile ways of working, the constraint would have made its way around the organization until it settled on the market.
Of course, the market changes so fast these days that a shift would have occurred within a short period of time that would have caused a disruption in the system, likely reinstating the bottleneck and restarting the process.
Related Article: Variety Is the Spice of Agility
Map the Path to Business Agility
To use these lessons to determine your best path to applying Agile across your organization, you’ll need to apply what are known as Thinking Processes from ToC. There are many Thinking Processes you can try, but they all aim to answer the same three core questions:
- What do we need to change?
- What should we change to?
- How can we cause this change?
According to the Theory of Constraints Institute:
“The Thinking Processes are based on the premise that every complex problem stems from a deeply rooted issue — a core conflict. This conflict spawns harmful symptoms, which we confuse for the problem itself. In a desperate attempt to mitigate the symptoms (firefighting), we oscillate between mutually exclusive courses of action and seek unhealthy compromises. Organizations create elaborate policies, measurements, and behaviors in an attempt to mitigate the symptoms. These band-aid solutions must be carefully removed, modified, and/or replaced. And of course, unless we address the core conflict it only grows worse and worse.”
Senior leaders therefore need to invest significant time getting together, applying Thinking Processes, and agreeing on the single most painful constraint facing their organization.
Then, and only then, should they begin to systematically improve the paradigms and policies to improve that part of the system. Agile is almost always the right solution for modern knowledge-based organizations, but the way it’s applied and rolled out will need to be tailored to the specific needs of each constraint.
Through a disciplined, rigorous combination of the Theory of Constraints and systematic Agile transformation, an organization can reach the point where they’re operating at maximum effectiveness. Their only remaining constraint will be market demand, and even then they can use their high performing system to generate new products and services if their original ones have saturated the market.
In other words, combining Agile transformation efforts with the Theory of Constraints can produce a steady march toward a nearly unassailable position for organizations willing to do the work.