By Christine Kiefer, Senior Vice President, Digital & Consulting, NA, Ensono Digital A reimagined approach to app modernization can help you reduce risk, drive savings and unleash the strategic potential locked up in legacy systems
Someone once said that applications are like cars. If you don’t look after and maintain them regularly—changing the oil, servicing the motor and replacing old parts—they could stall out on you at the least-opportune moment.
In the same way, your organization can either invest in maintaining and modernizing its applications so that they remain easy to manage and able to support future growth, or it can leave them in the “garage” for years, allowing them to rust. Left unchecked, legacy systems begin to accumulate, creating a crisis of complexity that increases technical debt and reduces developer productivity. As a result, product launches and updates are delayed, and the organization’s growth and profitability are impacted.
Digital transformation is a top priority for business leaders, with 87% placing it high on their strategic agenda. However, the success rates for these initiatives are dis-hearteningly low, with around 70% failing to meet their objectives.1
Continuous application modernization is critical to the long-term survival of your organization. But to be successful, all initiatives must be tied to business outcomes, completed iteratively and, ideally, supported by an experienced, reliable and transparent modernization partner.
1Kamales Lardi, “The Psychology of Digital Transformation,” Forbes.com, May 2024.
Ongoing competitive advantage
Continuous modernization has been found to significantly enhance an organization’s efficiency and competitiveness.2 Critical applications need to be always-evolving and always-competitive. This gives you the agility to innovate ahead of competitors.
A rebalancing of investment in existing systems vs. new ones
Digital leaders allocate roughly 26% of their IT budgets to innovation3 while base-line organizations allocate just 18%. An effective modernization strategy will enable you to invest less in managing complex legacy systems and more in building new ones.
The ability to scale as needed
A good application modernization strategy must have growth in mind, whether in current markets or internationally. When plans to scale the business are announced, your critical applications must also be ready to scale.
Enhanced business continuity and reduced risk
An effective strategy will naturally mitigate many of the risks related to security, quality assurance,4 compliance and supportability. The growing legacy skills gap5 will also be addressed when applications are kept up to date.
Aligning to these outcomes will help shape the target state for each application. It also ensures that business and technology leaders are in agreement: if every proposal for funding is based on business outcomes and quantified value, then they can be assessed and prioritized objectively.
2,3 Nicole Forsgren, Jez Humble and Gene Kim, “Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations,” IT Revolution Press, March 2018.
4Thomas Moor and Jack Middleton, “Why QA Matters in Light of the CrowdStrike Incident,” Ensono, 2024. 5“Short and long-term strategies for bridging the mainframe skills gap,” Ensono, 2024.
Adopt an iterative approach and revise priorities as you work through your application portfolio
So called “big bang” transformation projects are fraught with risk. Committing to and trying to complete a multi-million-dollar initiative in one go means there’s limited opportunity to adjust course and reprioritize as business needs evolve. As a result, the plug could be pulled mid-project and before value is delivered.
An iterative approach allows you to take small bites, be more agile, and chart a path to deliver incremental value as you proceed. True modernization is not a one-and-done project, but an ongoing journey. By evaluating each application’s current state against what the business needs it to deliver, you will not only identify which applications to prioritize, but also which modernization route is best. Once the initial wave of applications has been modernized, revisit your strategy and reaffirm its alignment to business priorities. If you reach a point where the return on investment is diminishing, you may choose to pause.
Evolve: Transforming existing applications
Evolve is often the first and sometimes the only step required in the process of modernizing applications. This approach focuses on transforming existing systems to meet demands using modern architectures, while maintaining the core functionality of legacy applications. Evolve may take various forms, depending on the needs of the business, and may include things like code transformation to a modern language, containerization of applications, conversion of functionality to cloud native services, and the adoption of modern DevOps practices to accelerate delivery.
For example, imagine you’re a global retailer with a stock management workload running on the mainframe. You continue to run it there because your mainframe suits low latency data access, high volume transactional workloads. However, if you’re running the codebase in COBOL and there are few people left with the skills to maintain it, you’ll need to modernize by evolving the language to make maintenance viable.
Integrate: Enabling transformation through connectivity
The second route to modernization focuses on bridging the gap between legacy systems and new platforms, enabling seamless and more flexible interaction. Integration plays a critical role in ensuring that older applications can coexist and interact with modern architectures, driving greater agility and adaptability. Key initiatives within this phase include introducing an event-driven architecture, adopting an API-first approach to make data more accessible, streaming data between systems, and integrating with SaaS applications. Sticking with our example, you are likely to have your eCommerce website running in the cloud and stock management on the mainframe. You will want to focus efforts on improving integration between the mainframe and cloud through modern middleware that supports evolving business processes and functionality.
Build: Creating a modern application from the ground up
In some cases, the limitations of an existing system require a complete rebuild to achieve the desired target state. This involves rearchitecting the application or building new services from the ground up, often adopting a distributed architecture—such as microservices—to improve scalability, flexibility, and maintainability. These applications will often require both build and integrate elements to enable transactions to traverse the cloud and mainframe in a modernized target state. Key elements of modern application development include continuous delivery and automated testing and release, all built on a foundation of scalable infrastructure. If, as our hypothetical retailer, you’re running eCommerce shopping carts on a main-frame, it’s not ideal. Each time a cart is updated through a cloud-based website, it creates repeated calls and latency, using up costly mainframe resources. Instead of upgrading the mainframe to handle growth, it’s smarter to rebuild the shopping cart functionality as a scalable cloud-based service.
Fear of the unknown often prevents businesses from embarking on the seemingly “long road” to modernization. Rethinking your approach, and adopting continuous application modernization, will enable you to iterate and respond to emerging business needs, accelerate time to market, reduce technical debt and risk, and bring rising IT costs under control. All while retaining the ability to adjust course as needed.