If you’ve been paying attention in the IT world at all in the last few years, you’ve heard of this thing called DevOps. You’ve probably also heard of The Phoenix Project, an excellent DevOps novel by Gene Kim and others. Phoenix builds upon the foundation of an earlier novel, The Goal: A Process of Ongoing Improvement, by Eli Goldratt in 1984. The Goal is a revolutionary novel that changed the manufacturing world but hasn’t quite had the same effect on the rest of the world. It’s important to understand history and those that came before us. I decided to really dive in and explore our history.
If you’re curious about what I thought of this book, I’ll save you some time – buy a copy right now and start reading. By teaching in the Socratic Method, it makes high-level concepts easily relate-able by giving us real life examples of how those concepts work. Specifically, I read the 30th anniversary edition that included Standing on the Shoulders of Giants, some extra material that I think really matters. If you already have an older edition, it’s worth the $16 for this extra piece.
So what does a book about manufacturing have to do with DevOps? Nothing – and everything. Phoenix continually shows how lessons learned from the manufacturing world can help us in IT. On the other hand, IT is very different and blindly applying these lessons could actually be harmful. Thankfully, The Goal focuses on two primary components that guide us in applying our new knowledge. The novel is also the foundation of the Theory of Constraints. Let’s take a look at the two components first.
The first component of The Goal is… The Goal. Yep, it is that simple. So, what is the goal? It’s universal – the goal of any company is to make money. It doesn’t matter what industry you’re in, that’s just common sense, right? Take a look at your current job and see if you agree. The Goal attacks this assumption and challenges us to view things differently. Eli, through the character of Jonah, defines the goal in the context of a manufacturing plant.
- Increase throughput, defined as turning raw materials into cash
- Decrease inventory, defined as all raw and processed materials that are not sold
- Decrease operational expenses, defined as all costs of running the plant that aren’t inventory costs
These three fundamentals describe the goal in simple to understand terms that can be easily measured. Throughput is taking what you consume and selling it – whether it’s metal into faucets and fixtures that are sold or words and ideas into a blog post that is published. If the consumables lie around far too long, like faucets in a warehouse or a blog post that’s perpetually in draft status, your inventory costs go up instead of down. Operational expenses vary, but your personnel and other operational costs need to trend downward. These concepts are investigated in far more detail. These three concepts turn all of our assumptions on our head.
A Process of Ongoing Improvements
The second part of the story is about the process. Once you’ve come around to a new way of thinking, you don’t just suddenly fix everything. You have to implement change in how you’re doing things to meet the goal. Once you do, you get closer to the goal. You start to decrease the inventory that’s waiting around and throughput goes up. Those initial changes have visible immediate effects, but they may also have hidden long-term effects. Inventory may be decreased enough to deal with the current backlog, but once the backlog is out of the way, do you maintain your throughput? If the inventory is too high or low, new issues may arise. Hence, ongoing improvements.
This is addressed by measuring your throughput, inventory, and operational expenses. However, you need to measure with the goal in mind. Adhering to the previous metrics won’t suffice, as they aren’t aligned with the goal. By getting a better approximation of what is happening in a manufacturing plant, more information is available to drive the ongoing improvements.
Theory of Constraints
Together, these two sections combine to give us the Theory of Constraints. The theory stipulates that there are constraints in your plant and that your effort is best focused on the constraints. Finding these bottlenecks and addressing their limitations (exploiting the constraint) will go the furthest toward increasing your throughput and decreasing inventory and operational expenses. Everything else is subordinated to elevating these constraints. Then, you repeat the process – find a constraint, exploit it, subordinate everything else, elevate it. One additional key is to prevent inertia from becoming a constraint. Don’t do things because that’s how you do them – continue to challenge your assumptions and make whatever changes are required to increase throughput, decrease inventory, and decrease operational expenses.
Standing on the Shoulders of Giants
This bonus story in the 30th anniversary edition describes Toyota’s Lean production system (you may know it as Just-In-Time Production) and its strengths and weaknesses. It’s very short, but mostly importantly it documents that three stability requirements to implement Lean fully, and how unstable businesses can leverage certain parts of Lean to still benefit. A great example is Hitachi Tool Engineering. HTE attempted for years to implement Lean without success, because they did not enjoy the stability required to implement it. Finally, after only attempting to leverage the appropriate processes of Lean, HTE grew their profit ratio before taxes from 7.2% in 2002 to 21.9% in 2007. What company wouldn’t want to do that? Knowing when to not do something is just as important as knowing when to do something.
Obviously, The Goal struck a chord with me. I think it presents a fabulous theory on how to treat business, whether you’re in manufacturing or not. You’ll see some more posts from me in the future related to The Goal and how we can use the Theory of Constraints and the throughput/inventory/operational expenses in many ways, not just directly in our IT industry. I’ll present some of my own theories and attempt to prove them out by implementing them myself. I hope you take the time to read this book and that you will join me on this journey.