Skip to content

Technical Debt is Rust you can’t see

Source: Agile Project Management

Southwest Airlines’ recent holiday fiasco shed light into a dark corner of Information Technology. Consider the analogy of a car whose owner only added gas—no maintenance. After a time rust would appear and spread, tires would go slick, engine oil would become sludge, the air conditioning would stop working, and the pattern would intensify and continue. Now consider the possible solutions to this problem:

  • Do nothing, and the problem gets worse.
  • Trade in for a new car
  • Repair the car over time.

In software this problem has been called, “Technical Debt,” a term originally used by colleague Ward Cunningham in 1992.

The figure (from Adaptive Leadership) illustrates the nature of the problem. Lack of adequate attention causes debt to increase until the cost of change skyrockets. And that cost comes in two flavors—the monetary cost and even more damaging, the cost of delay in customer responsiveness. Customer complain, pressuring IT to fix the problem, which causes quick fixes that add to the debt—creating a vicious cycle that spirals ever-faster.

Returning to our car analogy, the remedies for tech debt are the same as those for car rust:

  • Do nothing (like an Ostrich)
  • Replace with a new system
  • Systematically repair

Unfortunately, by the time the problem gets recognized, all of the possible solutions are bad ones! Do nothing, and you become the next Southwest. Replacement, particularly of a major operational system, is both very costly and risky. Furthermore, within a few years the new system will rust unless a systematic rust reduction strategy is implemented. I worked briefly with a software company whose product’s final test and integration took up to 18-months of the  release cycle. The expected replacement cost for the system was over $100 million. They were leaning towards the replacement approach, and I cautioned them that without a new tech debt strategy they would be right back to this terrible situation in a few years.

The root cause of technical debt lies in its software’s intangibility.

“From apps on your smartphone to the operation of the James Webb Space Telescope, one million kilometers from earth to rapid gene sequencing in biotechnology, software runs the world. However, you can hold a Smartphone in your hand, you can see the golden wings of the Webb, and you can observe the rows of gene sequences—combinations of AGCT—scroll by on your monitor. But you can’t see software; it is an abstraction (From my forthcoming Wild West to Agile).”

Managers and executives can watch their newest manufacturing facility’s construction progress. They can shovel dirt at the groundbreaking, they can stroll through the halls when only studs are visible, they can hear the machines groan during startup and testing, they can see the maintenance staff at work.

But, software is, well, soft. It is intangible. It is out of sight. It is expensive. Selling the cost of software development to managers and executives is hard enough. Selling the cost of rust reduction is magnitudes more difficult.

Copyright © 2023 by Jim Highsmith