Monday, July 04, 2011

Reflections on Eliyahu Goldratt


I was saddened to learn about the recent death of Eli Goldratt.

Goldratt was a prolific writer, having written two of my favorite management novels, The Goal and Critical Chain. Both of these novels described Goldratt's Theory of Constraints (TOC) management philosophy.


I was initially introduced to Goldratt's writings back in the mid 1990s. At the time, I was working at Hewlett-Packard's Advanced Systems Lab, a research and development software lab dedicated towards ensuring that HP's support services were always on the cutting edge. Our lab manager, Bruce Richards, an advocate of Total Quality Management principles, recommended that I read The Goal.

The underlying premise of TOC is that organizations can be measured and controlled by variations on three measures: Throughput, Operational Expense, and Inventory.

  • Throughput is the rate at which the system generates money through sales
  • Operational Expense is all the money the system spends in order to turn inventory into throughput
  • Inventory is all the money that the system has invested in purchasing things which it intends to sell

According to the theory of TOC, every system or process has at least one constraint or bottleneck (that prevents an organization from achieving the goal). The identification of this constraint should be the focus for any improvement activity.

TOC advises us to:
  1. Find the bottleneck (the slowest point in the system).
  2. Exploit and protect the bottleneck so that it does not get interrupted. Protecting the bottleneck is usually done with inventory, so if a step upstream of the bottleneck goes down, the bottleneck can continue to function.
  3. Make all other steps in the process subservient to the bottleneck's capacity – in other words, "slow them down" and prioritize any work that affects the bottleneck.
  4. Elevate/improve the capacity of the bottleneck until it is no longer the slowest step in the system.
  5. Go to step 1 and continue.

While TOC seems most appropriate in the world of operations management (i.e. by identifying the role of bottlenecks in the manufacturing process and helping to reduce their impact by measuring and controlling the flow of materials), many of the concepts are also relevant in the world of software development.

As an example, Agile development emphasizes practices (e.g., test driven development, pair programming) that help reduce the inventory of defects that need to be fixed later in the software development process. Not surprisingly, I have been able to use the basic TOC framework to help people understand why managing bottlenecks is so important to software development.

I didn't personally know Eli Goldratt, except through his writing. While I am saddened that he has passed, I find comfort that his legacy will live on in his great works. Rest in Peace, Eliyahu.



Post a Comment

0 comments: