Technical Debt Should Be Held to Account
- Cloud , SaaS , IT Innovations
- 18.10.2021 02:10 pm
Cloud-native intelligent automation-first technologies are being brought to bear across the most functionally operative IT stacks in enterprises of all sizes. Now there is a new responsibility to eradicate the technical debt hangovers of yesteryear. Mike Hughes, Product Evangelist from OutSystems analyses the source of the debt and the route onwards to higher wealth.
Software code has value. This is an enduring truth that works on a number of levels. Developers are paid a (hopefully) worthy sum for engineering the code constructs that drive the world’s enterprises, so, ergo, code has a value.
Some code is more directly employed in live production and mission-critical systems, so we might ascribe more importance and worth to it than other lines of code. Other code is perhaps dormant, legacy or redundant in some way… and this code probably has a lower worth. So, again, this code has value, just less.
Yet still other code is clunky, partially or non-functional, and in fact ends up taking up space in systems such that it gets in the way of workable functions and the user functionality they are supposed to deliver. This is code that eliminates or consumes value and goes towards forming what we call technical debt.
What is technical debt?
Simply put, technical debt is the coding you have to do now because of the shortcuts you took yesterday. More specifically, it’s the technologies and time spent maintaining old, bad and broken code, rather than developing new ideas.
Software developers often spend an inordinate amount of their valuable time refactoring and reengineering complete sections or subsections of an application’s functional substrate, possibly as a result of Extreme, Agile or Rapid Application Development RAD methodologies.
There isn’t a sole cause of technical debt, though. IT leaders cite too many development languages/frameworks (52%), turnover within the development team (49%), plus the reality of having to accept known defects to meet release deadlines (43%), according to our own “Growing Threat of Technical Debt” study carried out with research sampling and measurement company Lucid.
Like financial debt, the longer you leave technical debt in place, the more costly it is to repay (fix) it and get things sharper, cleaner and clearer for the future. And unfortunately, businesses continue to delay addressing technical debt. Only 20% say technical debt is something they’re currently managing well, though 36% report they’ll be able to manage tech debt in the future.
Technical debt can come from poorly executed programming, but is more likely to be the result of bad management and/or poor requirements management carried out in the business-technical function. This results in a situation where the development function is tasked with overly complex demands, or simply gets asked to do too many things at once.
The last couple of years has seen an exacerbation of these issues as companies have rushed to digitise products and services in the wake of the Covid-19 pandemic.
So what should we do about technical debt in the age of cloud, automation and platform-level control? Our first steps are to identify it, understand why it exists and then look for tools to build functionally effective modern applications for the future.
Legacy code, stack apps & SaaS sprawl
The combination of legacy code and the new generation of mobile apps, stack applications and SaaS sprawl are major contributors to technical debt that are robbing organisations of resources, time and the ability to innovate.
Just remembering the wider global effects of the pandemic, it is clear that a large number of digital transformation initiatives have been catapulted forwards, for what in many cases are short-term fixes and short-term gains.
Left unchecked, technical debt will continue to compound. Enterprises need a new approach to move past it and innovate at a pace and scale for true competitive advantage.
The loss in opportunity cost
After all, our analysis found that a majority (69%) of IT leaders say technical debt poses a fundamental limit on their ability to innovate, along with 61% saying it drags on their company’s performance and 64% agreeing it will continue to have a major impact in the future.
There is also a massive opportunity cost for businesses of all sizes across industries as they dedicate time, money and other resources to technical debt instead of innovation. On average, businesses spend approximately one-third of their IT budget addressing technical debt - and this jumps to 41% for enterprises.
While many business leaders are aware there’s a price to building software quickly but not necessarily right, few fully grasp the causes of technical debt or the true financial and strategic burden of its causes and how quickly it grows.
Good news from the next world
Luckily, it is possible to ‘pay off’ technical debt and reach a higher tier of onward IT software and systems development. In that higher tier, enterprises are able to more carefully align, map and track the use of their modern application development platforms to their organisational structures and team priorities.
Eradicating technical debt is no smash-and-grab bank heist; it needs to be approached honestly, systematically and strategically. One way to achieve this is by adopting a modern application platform. It can help organisations of all sizes adapt, evolve and improve their applications when their business needs them, helping them tackle technical debt while maximising their ability to innovate. In our case, we can help businesses to not only build apps fast with a visual, model-driven development environment and infinitely reusable components, but also to build apps right with an integrated development platform that ensures the security, resilience and scalability of cloud-native, enterprise-grade applications.
Once an enterprise sees the value of adopting a model-driven development environment and reusable components, it can elevate its IT function to benefit in full from an integrated development platform that ensures the security, resilience and scalability of cloud-native, enterprise-grade applications.
We can hold technical debt to account and build more wisely for the future if we invest today; it’s time to balance the books and reboot for good.