Businesses Can Lose Millions To “Technical Debt”, Says CRASH Report
CAST describes technical debt in the following way:
Technical Debt is calculated as the cost of fixing the structural quality problems in an application that, if left unfixed, put the business at serious risk. Like financial debt, Technical Debt incurs interest in the form of the extra effort it takes to maintain and enhance an application due to the structural quality flaws in the code.In other words, when a business calculates the cost of deploying software, technical debt takes into account the costs caused by errors, glitches, and vulnerabilities in software, which companies apparently aren’t budgeting for at the moment. According to CAST, that’s becoming a big problem.
“The number of software glitches, outages and security breaches reported in the press this year, and the damage they have done to the reputations of organizations like Toyota, Sony and RIM, not to mention the U.S. Government and a multitude of banks and stock exchanges around the world, have made problems with structural quality in application software a boardroom issue,” said Dr. Bill Curtis, CAST’s chief scientist, senior vice president of the CAST Research Labs and director of the Consortium for IT Software Quality in a press release.
The 2011 CAST Report on Applications Software Health study looked at the structural quality of 745 IT applications, which represent 365 million lines of code. The applications surveyed were those used in 10 different industries and 160 companies. There were five categories the study measured, namely security, performance, robustness, and the ease of software transferability and changeability.
The primary result: companies incurred an average technical debt of $3.61 per line of code.
15% of the applications had over a million lines of code; thus, those individual applications produced upwards of $3.6 million of technical debt. To put it in more practical terms, 35% of those violations hurt a business’ application security, performance, and uptime; the remaining 65% affected IT costs, which isn’t as dire but is still problematic for anyone trying to manage the finances for a business.
Additional findings are less striking but no less interesting. For example, the study found that in-house and externally-developed had no relevant difference in quality. Additionally, Java EE applications scored far worse in terms of performance and contributed to more technical debt than other scripting languages, and while COBOL applications boasted the highest levels of security, .NET applications recorded the lowest.
Technical debt is an interesting way of looking at the costs of application software, and kudos to CAST for finding a way to measure it. Hopefully this will help businesses budget better for IT costs and encourage software developers to build better mousetraps.