Modernization Guide

pink Space gradient.jpg
refactor Graphic with AppFactor Glow_edi
refactor Graphic with AppFactor Glow_edi
refactor Graphic with AppFactor Glow.png

Modernization Concepts & Background

Application Modernization is an essential step towards your company’s digital transformation. Bringing legacy apps to the cloud is often a challenging task, rife with complexities and set backs, but there is now technology that can make the process much faster and more reliable. 

Why is this so important, you may ask? The International Data Corporation (IDC) gathered interesting insights related to digital transformation’s accelerated growth in the global IT landscape:

  • Over 50% of all information and communications technology (ICT) spending will go directly to transforming and innovating by 2023, increasing at a CAGR of 17%.

  • 70% of enterprises plan to deploy unified hybrid/multi-cloud management technologies, tools, and processes by 2022. 

  • Over 50% of enterprise IT infrastructure deployed by 2023 will be installed at the edge rather than in corporate data-centers.

  • By 2024, the number of applications at the edge is projected to increase by 800%. 

  • More than two-thirds of enterprise organizations will have deployed code daily by 2025; over 90% of new apps will be cloud-native; 80% of code will be externally sourced, and 1.6 times as many developers will be on staff.

  • Gartner are also predicting that up to 15% of enterprise applications will be running in containerized environments by 2024, with the growth rate increasing each year. 

Is your company ready to leap into digital transformation? Explore the following concepts first.

Digital Transformation

Companies’ digital transformation is measured by the successful changes and adoption they make to products and services, as well as their acquisition of digital skills linked to these changes. A digitally mature company uses information and communication technologies in a significant part of its activities, as well as having the capability and willingness to digitize its processes, functions, and organization. 

It mainly involves adopting three trends and capabilities in order to enhance operational effectiveness or enable disruptions in business models:

  1. A range of advanced digital technologies such as the Internet of Things, artificial intelligence (AI), big data, Robotic Process Automation, Mobility, and blockchain. 

  2. Redesigned business processes and platforms to run in a lean, resilient, and real-time collaborative manner with customers and suppliers. 

  3. Increasing workforce engagement by using virtual, boundaryless teams.

Digital technologies are changing the way the world operates, and that includes businesses. Devices and internet services are now more affordable, and trends are accelerating growth in unprecedented ways. A few examples include mobile, cloud, and AI.

According to the World Economic Forum, “Digital transformation provides industry with unparalleled opportunities for value creation. It used to take Fortune 500 companies an average of 20 years to reach a billion-dollar valuation; today’s digital startups are getting there in four. Digital technologies are creating new profit pools by transforming customer expectations and how companies can address them. 

“At the same time, digitalization could produce benefits for society that equal, or even surpass, the value created for industry – the mass adoption of autonomous vehicles and usage-based car insurance, for instance, could save up to 1 million lives by 2025.”

There is no doubt digital transformation is here to stay, as a process that repeats over with new and emerging technologies and supporting practices. Companies of all sizes are in the race to become more digital as fast as they can. The pandemic only accelerated this process and whilst digital transformation initiatives we underway prior, they have seen significant drive to move them forward.  Organizations that implement the right blend of modern solutions, techniques, and strategies will remain competitive for decades to come, future-proofing their business as they become more agile and responsive to change.

What is Application Modernization

Application Modernization is the process of aligning existing software and applications with modern requirements, using the latest technology. 

Existing software and legacy applications are defined as any software package or system that blocks or slows down business processes or the adoption of new technology initiatives. 

Legacy App DIal.png

Gartner explains application modernization services “address the migration of legacy to new applications or platforms, including integrating new functionality to provide the latest functions to the business. Modernization options include re-platforming, re-hosting, recoding, rearchitecting, re-engineering (refactoring), interoperability, replacement and retirement, as well as changes to the application architecture to clarify which option should be selected.”

The modernization process starts with a comprehensive company assessment which often involves, among other actions, deciding to shift some monolithic applications to the cloud. According to Microsoft, a monolithic application is “an app that has all or most of its functionality within a single process or installation package, and it’s componentized in internal layers or libraries.”

recent study called ASG Technologies 2021 Survey Report: What’s Slowing Modernization? Barriers Hindering Enterprise IT Systems and Content Management revealed interesting facts about enterprises migrating to the cloud: 

  • Cloud computing has become the IT infrastructure of the future because a large number of enterprises have shifted to it before and after the pandemic. Over 67% of respondents utilize hybrid cloud infrastructure. Another 34% of respondents want a hybrid cloud ecosystem that includes the mainframe, and 52% have a hybrid cloud ecosystem that includes the mainframe.

  • What are enterprises doing with their workloads in a hybrid cloud IT infrastructure? According to the survey, 68% of respondents plan to migrate workloads or applications from the mainframe to the cloud. 

  • Companies are moving a variety of commodity workloads or systems of engagement (HR, finance, office productivity) to the cloud because it’s more cost-effective and efficient.

  • 70% report that they are moving specific workloads to the cloud because it is faster and more efficient. At the same time, 43% implied they did it for better access to remote work. 

Gartner have said 

  • Organizations often try to modernize the entire portfolio in one program, but are unable to execute such large, high-risk programs due to their long duration and half-hearted support.

Application Modernization is often a long, costly and painful exercise in an often justified effort to reuse and repurpose valid business logic and processes that a re-write or replacement wouldn't improve on either through efficiencies of process, cost, time and user training.

Typically these initiatives are manually delivered with an array of unconnected, disperate tools that require manual techniques to identify, analyse candidates and manual code changes. 

Gartner also explains that "Consultative services alone in cloud migration and app modernization in 2020 was $120B" - Gartner- Market Share Analysis: Enterprise Software, Worldwide, 2020 - ID G00746553  - which demonstrates the status quo approach of modernization being a manually led strategy that really struggles to deliver widespread success outside of the few applications that have budget and resources to support any progressive work. 
Automation tooling is required to provide a differentiated and disruptive approach to accelerate and enable greater levels of modernization to take place to reduce risky technical debt and facilitate cloud based innovation. 

What is Cloud Migration & Transformation

Cloud computing isn’t anything new. Centralised computing as a concept dates back decades but few heard of it until 2010, when a big tech company  - Amazon started their own cloud services. It wasn’t long before the likes of Microsoft and then Google joined the market and companies saw the benefits of moving their software and databases from in-house servers to remote cloud datacenters.

Still, by 2019, roughly 90 percent of senior business leaders named cloud migration as a company priority, yet less than a quarter of companies had made significant progress on their cloud transformation journey. On average, those organizations had from 20 to 40 percent of their data on the cloud.

In the same vein, the adoption of microservices architecture has become more popular in the last few years for newly developed applications. In fact, according to a 2018 survey, 63 percent of companies are opting to transition from monolithic to microservices architecture for scalability, agility, and cost-saving.

More recently we have seen how COVID accelerated this transition to microservices and the drive to attempt to move more complex applications to the cloud.

How COVID accelerated transition from legacy to modern timelines

In 2020, COVID-19 impacted everything, including the way we do business. Overnight, online shopping turned from a convenience to a necessity. The deadly virus forced companies to send most of their employees home, where they work remotely. 

At the same time, cyberattacks increased in numbers and the nature of their approach changed and adapted to more people being at home more often. During the pandemic, ransomware, phishing, and other scams rose 400 percent as people were forced to use their own devices on their insecure home networks.

Suddenly, cloud migration went from near the top of enterprise wish lists to an outright priority, surpassing any other agenda. Post-pandemic, around 86 percent of companies, about double the pre-pandemic numbers, plan to move more than three-quarters of their apps and workloads to the cloud.

What is cloud computing

Simply put, cloud computing is the on-demand delivery and availability of computing services – including servers, storage, databases, networking, software, analytics and intelligence – over the Internet (“the cloud”) offers faster innovation, flexible resources and economies of scale. Typically, you only pay for cloud services you use, helping you lower your operating costs, run your infrastructure more efficiently and scale as your business needs change in a more time and cost efficient manner.

Why transition from legacy to modern cloud-native technology is critical and advantages of running apps in the cloud

The vast majority of business are stuck in a rut with their technology, they need it to support their business, but they also need to take advantage of new technologies such as cloud, as and when appropriate. They are constrained by hardware and software because all of them are constantly progressing and moving forward all the time. Business cannot afford to play catchup all the time, but they get to the point where either they accept extremely high costs of maintenance to support their business needs, whilst running the risk of poor performance, instability or security issues or taking the equally risky and greater risk of a rewrite which as an option, doesn’t scale to all of their apps with cost and actually ages again once it’s been deployed .

Over time, applications and their supporting infrastructure reach limitations that could be performance, scale, connectivity and compatibility. Versions and specific builds of software age and fall out of support and compliance but the challenge manifests itself as organizations constantly fail to maintain and prevent this aging over time which inevitably leads to legacy. As net new business services have emerged and new technology that supports them, it's created a significant difference for IT to handle and operate, where older, existing apps that still reflect business process have to be managed, deployed, updated and operated completely differently, using different processes and tools than those that are new.  The need to retain valid business process within an application, but realign the software to adopt newer technology and methodologies of app delivery and development such as micro-services creates a drive to address existing applications and move the IT estate forwards, ideally standardising on the latest approaches and technologies.

Monolithic architectures worked a decade or two ago, but the exponential growth of data, supportability and security implications of allowing them to age has rendered monoliths expensive, insecure and obsolete. Experts predict that we’ll generate more data over the next three years than we had in the three decades before. In short, monolithic architecture wasn’t designed to keep up with the exponential data explosion, but that isn’t the only benefit to a migration.

Reduction in cost

Because cloud platforms aren’t tied to hardware, there’s no need to buy additional equipment as an enterprise grows, you can use the elasticity of the cloud to scale for you. The cloud frees up time for DevOps specialists and system administrators to focus on their daily demands instead of maintenance and updates. There’s no need to pay for the power that companies have no use for since clients pay as they go with cloud vendors. Organizations even save on significant electricity bills.

Container and micro-service adopters save upwards a minimum of $300,000 – $500,000 for even the most basic  application and much more for complex monoliths. For a typical project, that’s a savings of over $10M. This level up in terms of cloud maturity and optimisation provides significant return on investment and is a common driving force for change.

Scalability and agility

A cloud-based microservices architecture enables instant response time if there are fluctuations in demand. Unlike with monolithic platforms, there’s no need for additional hardware or increased IT staffing during busy times and no need to cut back during slower times. It’s all automatic.

Cloud microservices provide accelerated adaptation. Companies can adopt new and expanding technology as needed with little to no disruption. Quite the polar opposite of legacy monolithic and even a considerable amount of Service-Oritented-Applications (SOA). These applications take considerable amount of time and effort for every release, patch and update.

Redundancy

According to Gartner, the average cost of network downtime is $5,600 per minute. A single hour of downtime, especially during a busy period, can easily cost a company more than $330,000. Instead of relying on monolithic architecture, cloud-based cloud-native architecture offers built-in redundancy. That means if there’s a weather occurrence or other natural disaster, an unexpected surge in traffic, human error, or a security breach, a network with built-in redundancy will automatically switch to other devices within the same network. Modern application infrastructure and architecture is simply smarter by design and features capabilities that support more available and resilient systems. 

Security

With a smart cloud migration strategy, the cloud can be much safer than legacy network systems. Cloud systems have a “shared responsibility” model, which means that both the client and the cloud provider are responsible for their respective areas of security. Most cloud providers, such as Amazon, Google, and Microsoft, have built their systems from the ground up, with security at the top of their priorities. Software defined and malleable controls and industry topping standards often surpass enterprise data-centers and 3rd party hosted sites.

Better customer experience

Perhaps one of the least mentioned benefits to cloud computing is an improved customer experience. Customers can retrieve their records online, and even remote call center employees can access customer data. Because downtime is rare with cloud-based architecture, companies experience better customer satisfaction and retention.

Compliance

With cloud networks, companies and systems can adapt almost immediately to the changing regulatory landscape. 

A significant blocker of cloud adoption across an application portfolio is incompatibility. This can reside at a server level with the Operating System being old and unsupported in the cloud, the application components being unsupported and old and the way the application works itself, with dependencies that are fixed and hard-coded that tie it to it's original environment and eco-system. When applications age and fall out of support, the level of risk from a cyber security prospective elevates to incomprehensible levels, as does the risk to the operation and viability of the business processes it supports. 

Access

Regardless of geographical location or even timezone, cloud architecture lets both employees and customers log on at any time. Often with the same experience and fast loading times for resources and data service. 

Disaster recovery

Applications and data are stored in offsite cloud servers, usually in areas not prone to disaster. Even if something were to happen to a company’s physical equipment, data and applications would be safe. By design, cloud environments offer 99.999% availability and so applications moved to these environments are able inherit advantages that are often unattainable through their own IT infrastructure.

 

Cloud migration strategies

Depending on budget and needs, cloud-ready organisations have several transformation strategies to choose from. In 2010, Gartner coined the “5 Rs” or the five ways to migrate to the cloud: rehost, refactor, revise, rebuild and retire. Today’s experts, depending upon whom you ask, add either one or two to that list.

AppFactor provides recommendations immediately from a scan and discovery of an organizations estate.

● Rehost – Rehost, otherwise known as “lift and shift,” refers to the process of “lifting” applications and servers from their current hosting environments and “shifting” them to the cloud or a rehosting infrastructure.

Current cloud migration tools and discovery products are bound to this approach as they are server centric and lack the modernization capabilities to offer more. This migration approach has often led to a number of simpler apps move, that didn't need modernization work for cloud compatibility to take place.

●  Replatform – A modified lift and shift is called a replatform. A replatform requires some modifications to the platform but not an entire transfer shift.

●  Repurchase – Repurchasing is also called “drop and shop.” A repurchase cloud migration strategy refers to dropping part or all of the existing architecture and moving to new systems.

●  Refactor – Refactoring refers to re-architecting one or more services or applications. Refactoring manually has been resource-intensive; using automated tools solves that problem.

●  Retain – With a typical hybrid approach, the organisation retains the parts of the architecture that works for them.

●  Rewrite – A monolithic application can become cloud-ready with rewriting, rebuilding, or re-architecting the current system. While these options save hardware costs, they require coding and are labor-intensive.

●  Retire – Some companies choose to shut down the services and assets that no longer work for the organization. Shutting down applications requires constant supervision to ensure that the system doesn’t lose functionality.

AppFactor Enabling More Mature Cloud MIgration

AppFactor 3 R's.png
cloud migration 2 main use cases.png

1: Lifted and shifted apps already in the cloud are a target

Lifted and shifted apps already in the cloud are on VM’s, in architectures that are close if not the same as they were before on-prem need updating, maturing and modernizing to better take advantage of the cloud and it’s latest technologies.

The next iterative step is to look at containerizing them, running them in Kubernetes and exploring new architectural advances such as cloud-native services. e.g. replacing installed database applications with managed service cloud databases such as AWS RDS, or re-architecting in messaging components such as Redis, Kafka, RabbitMQ, ElasticSearch etc.

2: Complex apps that remain legacy and in their original environment (On-prem or Co-Lo)

Once lifted and shifted apps have moved,  the remaining apps are often parked and left behind as the “nasty’ ones that organizations are scared to touch, don’t know enough about, lack the skills or insight that would quash the risk factors.

These apps are typically the most business critical LOB (line of business) apps.

They often need substantial manual work to break them down, assess them, containerise, refactor in general and modernize to be cloud ready.

Application Modernization Process

Similar to digital transformation, there are as many application modernization approaches as company types and specific situations, with it being commonplace for each service provider and consulting specialist having their own rendition of the overall process.  The consulting firm Deloitte divides the process into stages in their report Application Modernization and its impact on digital transformation.

Stage 1: Assess 

Assessment can help chart the capabilities of an enterprise application portfolio to create a modernization and migration road map. During this stage, discovery is performed to identify vital application code, dependencies and data information, online batch programs, vital system characteristics, and third-party utilities and interfaces. The idea being a resulting holistic view of the technical and business requirements for a low-risk, cost-effective modernization and migration journey.

 

The AppFactor Assess solution

 

  • Application and infrastructure blueprints – Understand any legacy environment quickly

  • Business rules extraction – Unlock the current capabilities of your applications

  • Application rationalization – Uncover valuable business transformation opportunities

  • Cloud suitability and business case generation – Determine the optimal path for each application with AI-powered, data-driven modernization analysis

  • Modernization road map – Design a journey for each organizations unique needs with predictability and standardization

Stage 2: Execution

It is possible to divide this phase into more manageable parts, keeping in mind the work both the technical and non-technical teams must do. It also encompasses the change management requirements that should be made when such a change takes place.

  • Microservices and cloud-native modernization – Cut monolithic legacy technology into services and take advantage of cloud-native capabilities

Traditionally, this area more specifically has been devoid of productised solutions that look to accelerate and de risk  the process and outcome through automation. 

AppFactor is the first dedicated end-to-end application modernization platform designed to support and accelerate each step in the process, from discovery, analysis to the modernization of applications and their deployment and improvements.