Taking a step back and looking at the big picture: Why did Discover want to modernize, and how could they show clear benefits to the business while minimising any disruptions?
This is Part 3 in a series of blog posts on application modernization at Discover. Make sure you check out Part 1 and Part 2.
If it ain’t broke, fix it
Obviously, that’s not how this saying usually goes. Ever wonder why checking in at the airport takes so long when they already have all your details? What exactly the person at the desk is endlessly typing when you rent a car? Why a travel agent seems to have to press tab-return-tab-q 20 times to find your flight details? It’s because they have a system that ain’t broke — but it’s a system that can benefit from modernization to deliver a better experience to the customers.
Discover has systems that are working and bringing great value to the business but can benefit from optimization to let the company innovate and drive their business forward at a faster pace. Like all large organizations, it has grown organically over time to accommodate many different use cases, and modernization is an opportunity to consolidate these capabilities in a new agile architecture.
Discover had a number of specific areas that they wanted to examine:
- The deployment process for hundreds of mission-critical traditional WAS (tWAS) applications deployed on-prem across multiple data centres is time-consuming and dependent on legacy deployment architectures.
- The scaling WebSphere Network Deployment (ND) solutions often require the acquisition of equipment, the provisioning of infrastructure and a primarily manual configuration, which makes it difficult to rapidly respond to changing business needs.
- The WebSphere ND footprint is overprovisioned to accommodate spikes in load and, typically, only a small amount of available and licensed server capacity is in regular use.
- The operational model with WebSphere ND lacks the agility necessary to fully embrace modern development techniques.
Choosing a modern new home
Modern cloud orchestration platforms are all about automation, rapid deployment, dynamic scaling, agility, flexibility and paying for only what you use. In short, a perfect match for all of Discover’s needs.
To get access to all these benefits Discover needed to make tWAS applications cloud-ready and get them into the cloud orchestration platform. With hundreds of applications, this is no mean feat.
Here is a summary of the proved-out benefits of a modern cloud orchestration platform at Discover, doing ‘lift and remediate’ to Liberty on OpenShift in the cloud:
Enabled continuous delivery: Enabled continuous delivery by using Helm for the deployment, OCP builds to create a pipeline for when changes are made and Webhook to detect changes in GitHub and automatically build.
Enabled build-in scalability: Enabled build-in scalability by creating and deleting pod instances based on resource consumption.
Enabled open-source usage: Switched from using IBMJDK to OpenJDK and using Open Liberty as a runtime.
Improved the DevOps experience: Reduced testing cycles and helped minimize the need to reload the application with each code change by leveraging hot deploy code using ‘developer mode,’ which only updates the classes that were updated.
Opportunity to reduce cost of operation: Can reduce costs by leveraging a cheaper Liberty license, where one tWAS license can be traded for eight (Core) or four (Base) Liberty licenses. Migrating to Liberty also helps reduce infrastructure operational costs and as VM costs.
Modernization is not enough — your business needs mass modernization
Modernizing the first application is very exciting. The application has changed runtimes and is deployed in a new way. Configuration, connectivity and security issues have all been addressed. There is a well-deserved round of backslapping for a job well done. The second application to be modernized feels less significant, but it isn’t; arguably, it’s even more significant. Modernizing an application a quarter (or even two) puts you on a timeline measured in decades when you have hundreds of applications. That’s just too slow — you need to be moving tens of applications every month. You need mass modernization.
Save time and money — modernize it only once
An absolutely critical component of mass modernization is that you modernize each piece of code only once and that you don’t fix the same problem every time you see it. You just fix it once and be done with it.
Every enterprise organization reuses the same code over and over again across their applications. As we talked about in previous blog posts, IBM Transformation Advisor will automatically detect this and flag it up to you. When you modernize a piece of code used by many applications, you have to let everyone know so they can see it and use it. That stops 10 different development teams from modernizing the same package 10 different times and keeping their own version — and that saves both time and money.
Save more time and money — don’t be different
Every large organization has an equally large code base, developed at different times by different teams to meet different use cases. This inevitably leads to lots of slightly different versions of code that do the same thing. This uniqueness makes it hard to change and maintain the code. Whenever you can, you want all your code to be the same. That lets you modernize only once to save time and money.
In the same way that enterprise organizations share code across their applications, they also almost share lots more code. For example, if you have code to manage your security, you will see that every application is using a slightly different version of it, at times resulting in 1-2 dozen different versions of the same code.
Transformation Advisor produces reports that let you see each and every version of the same files that you are using. So instead of modernizing each one, move all your applications to the latest version. That way, you save time, money and get the most secure version of the code available. It’s win-win.
Look at the impressive results and benefits proved for Discover’s WebSphere modernization path to Liberty on OpenShift.
Demonstrated the viability of a “lift and remediate” approach for moving existing applications to Liberty on OpenShift Container Platform (OCP) in a cloud:
- Performed two successful POCs, proving that migration to Liberty on OCP in a cloud can be done just in days.
- Successfully tested every Discover tWAS pattern in use, identified all common issues and all common modules.
- Enabled and tested secured TLS communication between OCP and backends on-prem.
Created shared library with all required files for integration with DB2, Oracle, CTG and updated common modules and libraries needed to address compatibility issues migrating to Liberty:
- Increased efficiency by using shared library that will reduce overall migration effort by around 70%.
- Leveraged IBM Transformation Advisor to optimize migration process, get an accurate assessment of migration issue for each application and identify all common issues and modules.
- Common issues need to be addressed only once, and solution will be reused by other applications.
Proved that migration effort requires minimal code changes:
- With usage of shared library, average WebSphere-to-Liberty application migration effort took 3-10 days + testing time vs. taking months/years doing complete rewrite with Spring Boot.
Accelerated development and deployment process:
- Build/deployment of changes went down from a few days to less than 10 minutes when switching to Liberty on OCP.
- Increased application install frequency and enabled blue/green deployments
- Increased time-to-market cycles, allowing business to enhance the features and functionality,
Subplot: Learn from others
When Transformation Advisor started out, it was very application-centric. It did a great job of helping modernize a single application. As we worked with customers, we saw that wasn’t enough. We added the capability to detect common code and provided views on the development effort for the whole estate.
It was the work with Discover that led to detailed enhanced reporting and, specifically, the publication of the transparent calculation so that customers could see exactly how modernizing only once was going to save them time and money.
Save even more money — license only what you use
IBM WebSphere Hybrid Edition offers flexible licensing while you are modernizing and after you have completed your modernization journey. As applications move from on-prem to the cloud, you can bring their licenses with them and save money in the process.
In particular, Liberty Core has the potential to offer significant efficiencies. Applications that do not need base capabilities are deployed to a Liberty Core instance instead. This means you only pay for the capabilities your application is actually using, and that saves you even more money:
Discover’s modernization journey
This blog series has tried to take you through Discover’s modernization journey so far. We have talked about the need to modernize, the tools that were used, the areas that needed to be addressed and the work that proved all this was not just a theoretic possibility but a desirable and achievable outcome.
If you take anything away from these articles, we hope it’s this:
- Modernization is not a fad — it’s a genuine business opportunity and an opportunity to consolidate existing capabilities in a new agile architecture.
- Modernize each piece of code only once.
- Enable automation, rapid deployment, dynamic scaling, agility, flexibility and pay for only what you use.
- Add agility necessary for modern development, while reducing cost of operation.
- Don’t modernize, mass modernize!