If your business is at all successful, you’ll eventually have some legacy technology. This is a natural side effect of running any enterprise and it’s relatively unavoidable. As business expands new technologies and platforms are introduced. Over time, they become “legacy” by the nature of the fact that the environment around them (people, processes, and technology) progresses while the system itself remains relatively static.
Technical debt can similarly be considered a given. Those custom applications that your enterprise maintains will accrete the cumulative effects of short-term trade-offs made in the interest of efficiency and time-to-market. The decisions that resulted in technical debt were likely not wrong at the time as they were made to enable the business. But, if not properly paid down the debt continues to grow at an alarming compound rate.
Neither legacy systems nor technical debt are bad in the narrow view, but taking the long-view they will eventually impact the business in several key ways:
- Lagging Behind the Competition – Operational efficiency and new ways of doing business are under continual evolution. If your systems and technology are preventing you from keeping up, your competition will leap ahead.
- Increasing Fixed Costs – The cost of maintaining legacy systems is constantly increasing with platform licensing fees, maintenance costs, and the resource availability of aging skill sets; this all amounts to long-tail increase in cost of ownership.
- Diversion of Key Resources – Your most valuable asset is almost certainly your people and as systems age they require more and more time and input rather than less. This diversion of resources away from innovation and towards “keeping the lights on” can cripple a company’s ability to evolve.
- Inability To Integrate the New – Most likely you will make investments in new systems which will inevitably rely on legacy data or capabilities. Your cost to integrate the new and the legacy may be high and will only add to the layers of architectural complexity.
What to do about this issue is generally confounding to the C-Suite. According to an Accenture survey 72% of C-suite executives stated that their legacy systems hamper their ability to migrate to new technologies and make their IT functions less responsive to market change. And, according to a study by the MIT Sloan School of Management, 67% of executives would like to replace all of their core legacy systems, 70% indicated that they would like to get as much long-term value out of these systems as possible, and 50% reported that they wish they could have the best of both worlds. The overlap in statistics here indicates a high-degree of indecision among leaders – you are likely not alone.
Assessing Your Legacy and Technical Debt Position
Performing a thorough analysis of your overall technology landscape can be a very detailed and lengthy effort – well beyond the scope of this article. But, here are a few general questions you can use to get a sense of whether or not your legacy systems and technical debt are holding your organization back.
- Are your costs for maintaining systems going up rather than down over time?
- Do you find it increasingly difficult to hire people to work on your systems?
- Have your platform vendors begun to increase licensing fees for core technologies?
- Does it take longer now to add new capabilities/features than it did a year ago?
- Is your technology team pushing back more on enhancements than before?
- Are your customers complaining more frequently about your digital touch points?
- Have your teams separated into the “new platform” and “old platform” teams?
Answering ‘yes’ to any of these, and especially more than 3 of these, will indicate that your legacy systems and technical debt are beginning to hamper enterprise agility.
Strategies for Coping With Technical Debt and Legacy Systems
There is no shortage of articles and books written about dealing with legacy systems. But for CEOs and CIOs there are a few key investments you can make to reduce debt and push your IT forward.
Decoupling Your Systems and Your Data
Decoupling is perhaps the first step to modernization from an architectural perspective. This involves decomposing systems into smaller units including: legacy data sources, business processes, and core functions.
For example, let’s imagine you run a logistics firm that heavily invested in a centralized system during the 80’s. The software runs on a legacy operating system and handles almost every operational function of the business. You would like to rebuild the carrier pricing components but they are tightly integrated with the invoicing and scheduling components. Using these as natural “seams” in the software you can duplicate running instances and isolate the messages between them. Then, temporary bridges can be written to make sure dependent components continue to function while the carrier pricing module is rebuilt as a modern, scalable, web service.
This approach requires a high-degree of planning and discipline. But, it can be a powerful strategy for evolving your platforms while keeping your core operations online. This is also a key opportunity to consider moving to a cloud infrastructure. The flexibility of a public or private cloud will allow re-architecture with much less expense as compared to a traditional data center.
Invest In Becoming an Agile Organization
The concept of agility is often confused with the software methodologies that are commonly used to “implement” agile. But being an agile organization is much more than just doing iterative development or using Scrum. Enterprise agility requires a whole set of cultural and philosophical changes that will inherently allow your organization to more easily cope with its legacy debt.
Becoming a more agile organization has far reaching implications which I will likely go into detail on in a future post. But here are a few areas to consider:
- Agility requires constant prioritization at all levels of the business: what to invest in, where to allocate resources, what is important for customers
- Being an agile enterprise means committing to strategy only as long as it’s working and requires tough milestone targets and metrics to evaluate outcomes
- Truly agile companies create a stable core for employees while the particular initiatives they are pursuing may be in constant flux
Agile organizations tend to more actively combat legacy systems and technical debt because they realize that to be responsive to the market they must also keep free of such encumbrance. Agility will naturally lead companies to become more resilient to change and increase their ability to challenge established technologies and processes.
Constantly Invest In Your Biggest Asset: Your People
Often we forget that companies are made of people: layers, hierarchies, and matrices of people. And as executives, our people determine the execution speed of our decisions. While most large firms have professional development strategies, we find that most are substantially lacking when it comes to IT and software development.
Helping your software engineers, IT operations (DevOps), and technical product management teams modernize their skills is a never ending treadmill. But, every dollar invested here will pay bigger dividends when it comes to modernizing your business systems.
Creating training and growth opportunities for these teams will mean that you have ready-and-willing advocates for modernization when the time comes. Rather than complaining about the next generation of technology, these teams will be leading the charge – not just with skills but with ideas. Investing in helping people keep their skills sharp and current is perhaps the single best investment any organization can make to help improve their chances at successful digital transformation.