by Dwayne Phillips
Technical debt in a system builds as changes are made to the system. At some point, the expense and risk of the next change is prohibitive.
This is the first post I will make about fill-in-the-blank debt. These all go back to the concept of technical debt in a technical system.
Systems that are used by people change with time. Users are pretty darn smart and come to know a system better than anyone – better than the people who designed and built the system. The users suggest changes, someone makes the changes. Often, the person making the changes is not the person who designed or built the system.
Changes degrade a system. Yes, the changes are made to improve the system in a way that the user wants, but changes put a little stress on a system here and there.
Consider a lawn mower. I like the lawn mower, but I wish the throttle control were a little higher on the handle. I improve the mower by moving the throttle. A little drilling, a little duct tape, a few nuts and bolts, and the improvement is made. Then I improve the mower by changing the angle that the mower throws the cut grass. A little sawing, a little bending, a little more duct tape, and the mower is improved. Go through a half-dozen more changes and I have a lot of nuts, bolts, cuts, bends, and duct tape all over the lawn mower.
The lawn mower has accumulated a lot of technical debt. If I want to make one more improvement to the mower, I’ll have to remove some duct tape, remove some nuts and bolts, make a few more cuts…let’s see, have I forgotten anything? Oh yes, that rivet I put in and…oh well. Maybe it is time to buy a new lawn mower.
Technical debt builds to the point where we can’t make any more changes to the technical system. The next change may cost a lot to ensure it doesn’t break any previous changes. The next change may break everything – lots of risk. Hence, we have to scrap the system and build a new one.
Technical debt applies to all technical systems from lawn mowers to supercomputers to word processors.
While technical debt applies to technical systems, there are many other types of systems – management, retail, financial, and social to name a few. Future posts will discuss the type of debt that builds in these systems, how to recognize the debt, and when to replace the system with a new one.
0 responses so far ↓
There are no comments yet...Kick things off by filling out the form below.
Leave a Comment