As we work through the effects of COVID-19, F1 Solutions would like to assure you that our current professional and hosting services are and will continue to operate. As we are assisting many of our clients with rapidly establishing remote working arrangements, we are experiencing higher than usual call volumes on our support phone lines. We would like to thank you for your patience and understanding during this challenging and critical time.
4 Feb 2016

We are in the midst of new technologies and digital transformations.

In every industry there are digital disruptions occurring that are revolutionising how things are done. You only have to consider how the internet revolutionised shopping to get an idea of the impact of digital disruptions. It changes industries. It changes the game. It changes who climbs the stock market and who doesn't open for business tomorrow.

But how do you make sure your organisation thrives in the new Digital Age? Simple: You must digitally transform with it. The consequences of not doing so are far too great.

This means having sufficient IT budget and scope to invest in business analysis, design, new technologies and initiatives.

But this is where problems arise for many organisations.

Many organisations spend such a significant proportion of their annual IT budget on fixing legacy systems that they don't have enough money leftover to invest in new technologies - this is known as architectural debt, which arises from technical debt.

What is technical debt and architectural debt?

Ward Cunningham first coined the term 'Technical Debt' in 1992 to help communicate the impact of making "not quite right" code choices when designing new software releases. These wrong code choices arise from an incomplete understanding of how the system should work. On the other hand, sometimes technical debt is a concise decision developers make to complete a system faster and cheaper.

Either way, technical debt comes back to bite.

A recent study suggests on average there is $3.61 of technical debt per a line of code, or on average $1 million per a system. This is significant debt. Last year, Gartner estimated the current Global IT debt was about $500 billion. They expected that to double by this year thanks to investments in disruptive technologies, which can result in high technical debt due to rapid innovation in unproven domains.  

Like financial debt, technical debt has to be "paid back". This means allocating money each year for system maintenance and repairing issues so the system can continually meet your needs.

Also, much like financial debt, technical debt compounds if you don't prioritise addressing it regularly. This is how organisations often have to invest large sums of money to fix systems that aren't quite right for their needs.

The other dimension of technical debt is architectural debt, which, according to Deloitte University Press, "refers to the opportunity costs associated with system outages or the inability to deliver new capabilities". They go on to say, in some cases; architecturally complex defects can absorb as much as 52 percent of the total effort spent repairing defects.

It is easy to see why technical and architectural debt can derail new initiatives and stop organisations from digitally transforming.

How do I stop technical debt affecting digital transformation?

There are two types of technical debt you need to consider.

Firstly, there is accumulated technical debt through legacy systems. Just as you have a long term plan to manage your mortgage, without spending your entire weekly budget, you need a long-term plan to reduce your existing technical debt. Then it is important to measure, manage and reduce your technical debt each year.

Then there is future technical debt. How will the systems you are building today add to your technical debt?

To develop a system with low technical debt, you must first understand what the business requires from the system. This ensures you build the right system the first time round.

During the development of the system, it is imperative, where possible, to strive for patterns and principles that enable high quality code to be delivered, which don't  impact other factors such as time and money. This means improving development processes, upgrading frameworks and libraries (as soon as practical), implementing unit tests and other automated quality assurance techniques, allocating time to refactor code and address issues that may have arisen from previous changes, and, most importantly, learning from previous challenges and incorporating these lessons into future projects and changes. This all equates to paying off technical debt as soon as possible, relentlessly pushing for simplicity, improving code comprehensibility and maintainability.

You will be amazed with how much quality code can save you in the long run. (That's why we ensure we only hire the best!)

Digital transformations and digital disruptions are two things you cannot afford to ignore. It is important you assess your current IT situation and put plans in place to minimise technical and architectural debt in order to allocate your IT budget where it is needed most - on new technologies and initiatives to ensure you are digitally at the forefront of your industry.  

Subscribe for more articles like this

* indicates required