We have a macro problem with IT and how organisations develop, maintain, and modernise software systems.
Software is getting more complex and costly to build, support, and upgrade. As a result, IT backlogs are getting longer and projects fail with alarming regularity (CIO.com
This prediction makes sense when we consider how many software solutions there are. Everything from financials, CRM, scheduling, brainstorming and more, has an app. The average organisation uses nearly 100 cloud services.
Digitisation is increasing rapidly, especially in startups and global conglomerates.
Digitisation is less likely to yield a competitive advantage these days. Participating in the digital economy is no longer optional, it's essential. And turning up is no longer enough. Modernisation needs to be a continuous process and high priority.
Digital transformation starts with digitisation. This is the process of taking physical information and turning it into digital information. Pen and paper versus word processor software.
Digitalisation is the name given when an organisation successfully leverages digitisation to improve business processes, which is pretty easy if you're comparing something like Google Docs with pen and paper.
With enough digitalisation (better business processes), an organisation becomes digitally transformed
and never has the worry about their technology again!
There's no such thing as digital transformation!
The problem with buzzwords like digital transformation is simple: modernisation is a continuous process.
Digital transformation is never complete, it's an ongoing process of improving technologies and cultures.
Organisations need to stop thinking in terms of projects and start thinking in terms of products.
Project life-cycles are typically finite. This project is assigned this many resources and should be completed for this date.
Conversely, product life-cycles are typically infinite. They are continually assessed and potential opportunities are weighed against potential risks. This results in a continuous cycle of prioritisation, action, results and back to prioritisation.
Ultimately, â€˜projects' are ethereal. The very word itself distracts us from the tangible products actually driving change and modernisation.
Seventy percent of IT budgets are consumed maintaining existing software (products). The remaining 30% is often depleted by upgrades and migrations (again, products).
Software products can make or break all digital modernisation attempts, so let's focus on what really matters:
How can organisations effectively and efficiently modernise their software?
There are several ways an organisation can approach software modernisation. The main pathways are a rewrite, a migration, or an update.
Because of the importance of getting modernisation right, organisations should explore all options.
To begin with, organisations should check existing software stacks, discover dependencies, and identify opportunities. Then consider each pathway.
The first and most obvious option for organisations is to rewrite their existing software. Regular rewrites are continuous modernisation
. And starting afresh is a fantastic way to launch your continuous modernisation journey. The issue here is one of resources and culture.
Some organisations underestimate how long and expensive developing software can be or overestimate the longevity of a new application.
One way costs can be reduced and longevity extended is migration, such as moving local, legacy systems to the cloud.
Migration is highly favoured by many organisations because it means they can keep most of their existing code and functionality. This conserves resources, which is a good thing considering the length of IT backlogs and fail rate of IT projects.
The problem with migration, however, is it can have diminishing returns. Migrating desktop software to the cloud should yield sizable returns. But once you're on the cloud, you're on the cloud. This means migration can a part of a continuous modernisation strategy, but will require complementary methods of modernisation software products.
The final option is augmenting your software with strategic updates. This is a clear winner for continuous modernisation.
This method is at its best when paired with a micro services architecture in cloud environments. In such use cases, sections of a wider ecosystem of interconnected software can be systematically and strategically targeted and augmented with low risk of interference with other operations.
The potential downside of this method of software modernisation is technical debt, which can hamstring augmentation efforts. This is because existing issues with a code-base can slow down efforts to make changes. Remember, 70% of IT budgets are being consumed maintaining existing software (products). The remaining 30% is often depleted by upgrades and migrations (again, products).
The how of digital transformation is opaque. What's clear, however, is the urgency for organisations to peruse digital transformation with a continuous modernisation mindset. The best way to do this is by focusing on the software products underpinning your projects.
Here are some continuous modernisation power tips. Rewrite software that is too outdated to be effectively hosted in cloud environments and migrate the rest. Strategically update specific components of your stack. When the opportunity arises, rewrite your software as a separate stacks connected via APIs.