You may have heard people say, “A chain is only as strong as its weakest link.” But have you ever thought about how this proverb might apply to project management?
The theory of constraints builds off of the weakest link proverb to help you identify the weakest link in a project or process. By fixing that link, you can strengthen the entire project. This article will walk you through how to apply the theory to your own projects in order to improve bottlenecks or project limitations.
In project management, the theory of constraints (TOC) is a problem-solving methodology to help you identify the most important bottleneck or limiting factor standing in the way of your project objectives and goals. For example, imagine your product launches frequently get delayed. You could use the theory of constraints to identify the biggest blocker to your launches. Then, by using the five focusing steps, you can “break” that constraint so it no longer negatively impacts your product launches.
According to the theory of constraints, every project has one main constraint. This goes back to the idea of the weakest link in the chain. By solving the main constraint, or the weakest link, you can make the project process smoother.
Once you identify the biggest constraint in a project or process, you can iteratively improve on that constraint until it is no longer a limiting factor. After you solve the first constraint, there will be a new biggest constraint. You can then work to iteratively address that constraint, and so on. The goal of the theory of constraints is to address each of the weakest links until there are no more project limitations.
The theory of constraints was first introduced in The Goal, a work of fiction written by Eliyahu M. Goldratt. Though it’s fictional, the book focuses on bottlenecks during manufacturing and operations management processes and suggests the theory of constraints as the biggest limiting factor preventing companies from achieving their goals.
Because The Goal is set in a manufacturing production plant, the theory of constraints was first used in lean manufacturing. Similar to other project management methodologies and lean tools—like Agile and Kanban—it was then applied to project management.
According to the theory of constraints, a constraint is the number one limiting factor that prevents a project from succeeding. Using the theory of constraints isn’t about finding any random constraint to a project—it’s about finding the biggest blocker or bottleneck in the entire system and solving that constraint.
Once you identify the biggest constraint, you can work to remove or resolve it and improve the project process. By doing so, your project teams can hit their goals faster, better, and more effectively.
A constraint can show up in any element of a project or process—from the planning process to the implementation process, or even within the project team itself. Understanding the different types of system constraints can help you better identify them later on.
Policy constraint example: Company procedures are reducing velocity or increasing manual, duplicative work. (Policy constraints are the most common constraints that show up during a project or process.)
Internal constraint example: Team members don’t have the specific skills required for a project, which is preventing the project from succeeding.
Market constraint example: There is less supply for the product than anticipated or is ideal.
Resource constraint example: There are fewer resources, tools, or team members available for your project compared to what’s required by your resource management plan.
Financial constraint example: There is an unexpected lack of capital to invest in a project.
Culture constraint example: A project isn’t efficient or effective due to a bad process (especially a process that’s explained away as “how things are done here”).
Goldratt’s theory of constraints is an effective way to identify and improve upon inefficient processes by resolving any bottlenecks or issues.
That being said, you shouldn’t try to apply the theory of constraints in a project that only needs a small fix or easy tweak. For example, try resolving less complex project issues with a brainstorming session. But if your project or process is complex or mission-critical, you can benefit from using the theory of constraints to reduce bottlenecks.
You might use the theory of constraints to:
Improve ongoing processes with significant business impact
Respond to a disappointing product roll out or missed company goal
Empower a team to improve while only using what they already have (and without additional investment or team members)
Anticipate and solve potential problems for key projects
Supplement the project risk management process
Similarly, you can also use the project management triangle to tackle constraints. This method visualizes the problem of "triple constraints"—the need to balance scope, cost, and time to deliver a quality product.
The first, most basic way to use the theory of constraints is to use the five focusing steps. During the five focusing steps, your team works through a constraint until it’s solved.
Alternatively, if you’re struggling to identify the main constraint, you can use the thinking processes to first find the constraint, then follow up with the five focusing steps to solve it.
The five focusing steps can help you identify and address a constraint. This is the most basic and straightforward way to use the theory of constraints.
To kick off the five focusing steps, start by looking for the bottleneck. This could be the process that takes the longest, the person or process that’s holding your project back, or the biggest risk for your project to succeed.
For example, imagine your engineering team regularly delivers features a few weeks late. In the first step of the five focusing steps, focus on figuring out what might be impacting the project’s lead time. For example, is their product backlog unclear about what each feature entails? Do they need a better system for measuring how much work they’re committing to? After digging through the engineering team’s process, you might discover that they aren’t properly tagging work in their project management tool, so the team isn’t sure how long each piece of work is expected to take.
During step two, you will exploit the constraint while using resources you already have. One of the benefits of using the theory of constraints is it helps you minimize any additional investments or needs. At this stage, ask yourself: how can you maximize your constraint with what you already have available? If you successfully solve the constraint so that it is no longer the top limiting factor, that’s called “breaking” the constraint.
Building on the above example, establish a set of guidelines on how to properly tag work that’s added to the engineering team’s backlog. Hold a training session with the team to walk everyone through the process and ensure any questions are addressed. Encourage the team to embrace continuous improvement and suggest any changes that might make the tagging process even clearer.
During this step, elevate the constraint to make sure everything in the project is supporting your proposed fix to the constraint. Subordinating means making sure everything that’s less important than that constraint is following suit. Keep in mind that the constraint you’re solving for is the biggest bottleneck or blocker, so everything else in the project is, by definition, less important.
Continuing our example from above: Make sure new engineering team members are trained on your backlog system. Do not work on tasks that haven’t been properly tagged, since your team doesn't have clear insight into what that work entails. Audit the backlog frequently to ensure all work is properly tagged.
This step is only required if you have yet to fix the constraint. At this point, if the constraint is a serious blocker, consider bringing in more resources to fix the problem.
To finish our example: If your engineering team isn’t able to use the tagging system you’ve created, or if tags aren’t easily accessible, consider investing in a better tool. As you might expect, at Asana, our engineering team uses Asana—learn why.Better project management for engineering teams
At this point, you’ve solved the biggest limiting factor for your project. Congratulations! Now that you’ve solved the biggest constraint, the second biggest limiting factor is now the biggest constraint. If necessary, go through the process again to solve that constraint, and so on.
Example, continued: Your engineering team loves the new tool. Now the biggest constraint is prioritizing building the right features to address customer needs. You could then run the five focusing steps again to address that issue.
If you’re struggling to identify a project’s constraint—but you know something is holding you back because things are going wrong—you can also use the thinking processes. The thinking processes use decision trees to identify a project or process's main constraint. A decision tree is a tree-like model of project decisions and their potential outcomes, which branch out of each decision. You may have created a decision tree if you’ve ever done a value stream mapping exercise. Then, once you’ve used a decision tree to identify the constraint, you can then use the five focusing steps to resolve it.
The thinking processes pose three questions and use decision trees to get to the answer:
To answer this question, use the current reality tree (CRT). In a CRT, project problems are symptoms, and you’re looking for the cause. If you’re dealing with a variety of project issues, you can use a CRT to draw a cause-and-effect diagram to pinpoint the root cause of many undesirable effects. That root cause is your biggest limiting factor, and therefore your main constraint.
To answer this question, use the future reality tree (FRT). In an FRT, the tree maps out what an ideal project process should look like. You can compare this tree to your current process to identify what isn’t currently working. These changes, called injections, can help you turn project issues into real-world solutions.
To answer this question, use an evaporating cloud tree (EC). Use an EC tree to map out processes that have no clear solution. With an EC tree, you can understand the assumptions behind each project need and identify the conflict with those assumptions. Once you’ve identified that conflict, you can solve the constraint.
The theory of constraints is a great way to mitigate risks and improve bottlenecks on existing projects. If you’re feeling stalled on project improvement efforts, consider using the theory of constraints to identify the biggest limiting factor. Then, use the five focusing steps to solve the constraint. With the theory of constraints, you can continuously evolve your projects and processes in order to get your highest-impact work done.