Mainframe Application Modernization Using HCLTech’s ADvantage Modernize Framework
By Shyam Kumar Sundarakumar, Enterprise Architect, Digital & Analytics Services – HCLTech
By Rajesh Tailor, Sr. Partner Solutions Architect – AWS
By Ling Tse, Sr. Manager Partner Solutions Architect – AWS
Many enterprises have significant portions of their workloads running either as batch or online but still operating on mainframe technologies.
Known for their high performance in computing and input/output (I/O), mainframes have efficiently served these complex applications. However, some enterprises are seeking to improve their business agility by adopting modern application development and maintenance practices. In the process, they aim to reduce overall operational costs, including hardware and software expenses.
Over the years, original developers of these mainframe applications are no longer with their organizations or are no longer coding, and the technical expertise required to maintain these applications is becoming scarce.
The absence of knowledge and skills needed to support mainframe applications also makes it challenging and time-consuming for enterprises to enhance them. Whether driven by market demands or regulatory bodies, these enhancements can be implemented swiftly in new technologies and platforms driven by cloud, open-source frameworks, and modern software engineering processes like DevOps.
A recently published Gartner report estimates that approximately 90% of aging applications will continue to fulfill critical business needs for many enterprises, while less than 10% will transition to modern platforms. The primary reasons for most applications not being modernized are the high effort/cost of modernization, disruption of business as usual due to involvement of subject matter experts (SMEs), functional knowledge debt, and fear of moving away from platforms such as mainframe known for their high performance.
In this post, we will delve into the complex landscape of modernizing mainframe applications and migrating them to Amazon Web Services (AWS), exploring the significant challenges that organizations face. Furthermore, we’ll show how HCLTech’s Advantage Modernize Framework overcomes these challenges and paves the way for a successful and efficient transition to AWS.
HCLTech is an AWS Premier Tier Services Partner with Competencies in Mainframe Modernization, Migration, DevOps, and more. Serving hundreds of global enterprises to solve challenges with a dedicated full-stack business unit, HCLTech is also a member of the AWS Managed Service Provider (MSP) and Well-Architected Partner Programs.
Navigating the Transformation
The HCLTech ADvantage Modernize framework and methodology consists of tools which use the right mix of strategies decided during the critical application portfolio rationalization step of a project’s assessment phase. These strategies are:
- Rehost: Applications continue to remain on mainframe. However, the logical partitions would be shifted from an on-premises data center to a managed mainframe service provider such as HCLTech, enabling reduction of overheads and license costs due to a shared service model.
- Replatform: Existing code, programs, and applications are migrated from the mainframe and recompiled on a non-mainframe platform hosted in a cloud instance. This results in quicker cost savings for both hardware and software. With AWS-hosted mainframe-equivalent platforms, the applications can continue to be on the same languages such as COBOL, PL/I, and Natural.
- Repurchase: The mainframe applications functionality is replaced with a software-as-a-service (SaaS) application. There are typically purpose-built solutions for finance, human resources, manufacturing, and enterprise resource planning.
- Rewrite: When it comes to modernizing mainframe applications, the temptation to create new programs from the ground up can be strong. However, this approach is exceedingly risky and often unsuccessful, primarily due to a lack of understanding of the applications being modernized. Moreover, it’s a highly complex, expensive, and time-consuming endeavor. In most instances, the necessary resources and investments tend to surpass initial forecasts.
- Automated refactoring: In this approach, HCLTech employs tools designed to automate/accelerate technology conversion. While this may appear like the previous approach, the use of established tools eliminates the risk of losing or compromising any application functionality in the target environment. Additionally, with automation the cost and time required for modernization are reduced, often by 40-60% depending on the complexity of the overall modernization program.
The scope of this post is the automated refactoring treatment, and the key phases and corresponding HCLTech accelerators leveraged in the process are:
- Application inventory analysis – iLit-DC
- Data migration – ADvantage Migrate
- Application modernization (COBOL, PL/I, Natural, JCL to Java/.NET) – ATMA
We’ll be looking at how HCLTech uses Automated Technology Modernization Accelerator (ATMA) to accelerate modernization of mainframe applications and helps migrating over to a completely modern architecture deployed on AWS cloud.
HCLTech Solution Overview
Automated Technology Modernization Accelerator is HCLTech’s homegrown automation platform used for converting applications written in legacy languages to a modern technology stack with modern architecture and browser-based access.
Figure 1 – ATMA solution architecture.
ATMA scans through the application sources and configuration artifacts of the legacy applications, understands the various components, decouples and distributes them among appropriate layers where they should belong in the target technology stack, and transpiles the code into the selected language using the most appropriate equivalent syntaxes and frameworks.
The code generated is typically 70-80% ready, so that during the manual intervention stage—with additional treatments for using cloud native services, testing, and deployment—the application is made fully functional.
The various phases of the modernization process are:
- Preparation: During this phase, HCLTech customizes ATMA to understand any new patterns encountered in the legacy application and generate the target code in compliance to the technology blueprint on the modern platform the customer follows. During this phase, if there are programs written in languages not supported by ATMA, a feasibility and cost-benefit analysis is done if it’s worthwhile to add support in ATMA.
- Transpilation: ATMA is used to generate the target source code along with the necessary scaffold such as the Maven/Gradle dependencies and projects/solutions.
- Manual intervention: The code generated by ATMA is modified by the development team under the guidance of modernization SMEs. This ensures the validation of complete functionality, including integrations with other systems, addressing any identified gaps. The following activities are undertaken in this phase:
- UI redesign: Online screens are revamped to provide a more contemporary user interface (UI) using Angular/React. This process often involves substantial UI redesign, depending on customer requirements.
- Code improvements: Although the code patterns generated by ATMA are tried and tested for quality and standards, there may be legacy technology-based business logic that’s not efficient in the target technology. For example, verbose date manipulations may be replaced with simple utility method calls from a date class. In some cases, HCLTech has identified complete business rules engines implemented in legacy code, and although ATMA-generated code is efficient, it may be replaced with an industry-standard rules engine.
- Performance improvements: There’s a common misconception that components transpiled from a mainframe system to an open systems-based technology may not meet performance standards. However, leveraging multi-threading, parallel processing capabilities available on modern hardware and platforms, and optimizing system sizing and an appropriate cloud topology, can achieve similar or superior performance on the target platform. For instance, during the modernization of a claims adjudication system for a large nonprofit insurance provider, a batch process that previously took about 20 minutes on mainframe completed within a couple of minutes in the target cloud environment. This was achieved by increasing batch sizes of SQL statements, processing data chunks using multi-threading, and eliminating intermediate files used for passing data between steps in the batch.
- Access/roles management: In typical mainframe applications, remote access control facility is used for access management. The modernized application is configured to provide similar functionality using an identity management platform.
- Automated cloudification: HCLTech utilizes another accelerator, ADvantage Cloud from the ADvantage Modernize suite, to assess and remediate the modernized code to make it cloud-native and deploy on AWS.
- Testing: Testing and CI/CD enablement are carried out during this stage.
- Retrofit: If the legacy application had undergone changes after the source code was baselined for modernization, such changes are integrated into the modernized applications during this phase.
- Deploy: The modernized applications are deployed into user acceptance testing and production environments.
Figure 2 shows the typical source-to-target mapping of mainframe application elements and their equivalents in the modern technology stacks and cloud platform.
Figure 2 – Modernization solution mapping for mainframe applications.
Following is the typical architecture of the modernized applications deployed on AWS, if Java is chosen as the target technology platform.
Figure 3 – Modern application architecture on AWS.
As seen in Figure 3, the generated Spring Boot application has a completely modern architecture with various components, such as:
- (Macro) services are exposed using REST API for UI applications and batch jobs launched using the Job Launcher.
- Data access objects are utilized by services to make database calls, typically on Amazon Relational Database Service (Amazon RDS), if any.
- Amazon API Gateway is used for enabling unified access to the REST API from UI applications.
- Amazon EventBridge scheduler triggers batch jobs at regular schedules or by other events.
- Spring Boot Discovery Server is a component that enables service registry and discovery.
- Spring Boot Config Server externalizes application config across environments using a source code repository.
- Blob storage on Amazon Simple Storage Service (Amazon S3) buckets for I/O files of the application.
- Amazon Simple Queue Service (SQS) is used for message queues that are used for inter- and intra-application communication.
HCLTech’s ADvantage Cloud can be used to refactor the transpiled code and integrate with AWS cloud-native services. It expedites identification of on-premises implementations for certain application functions and automatically refactors the code with equivalent cloud-native implementations, additionally facilitating automated containerization of remediated applications.
Figure 4 – ADvantage Cloud to refactor the modernized apps to cloud-native.
Mainframe modernization using HCLTech’s ADvantage Modernize resolves the following customer challenges:
- High costs: When compared to the costs of maintaining mainframe hardware and software, pay-as-you-go pricing offers a quicker return on investment (ROI), possibly within even 12 months. Additionally, the cost of modernization itself is significantly reduced due to automation at every phase.
- Knowledge debt: By adopting ADvantage Modernize framework, there’s a reduction in the need for SME involvement in executing the modernization. Since the source code is converted through automation, the functionality is retained like-to-like.
- Performance: The cloud offers an open systems environment, promoting high productivity and rapid innovation. An effective cloud infrastructure scales easily and quickly, expanding or contracting as per the business demand. Disaster recovery and backup are seamless. Application algorithms may be adopted with modern paradigms such as parallelism through multi-threading/parallel-processing to achieve similar or better performance.
Mainframe applications can be modernized to run safely, securely, and reliably on AWS, boosting performance and fostering innovation. Enterprises on AWS can access HCLTech’s customized mainframe modernization and migration roadmaps. As a result, a successful and low-risk transformation can be achieved.
HCLTech is uniquely positioned to help enterprises and is committed to solving day-to-day or complex challenges with a dedicated full-stack business unit. To learn more, contact AppModCloud-Presales@hcl.com.
HCLTech – AWS Partner Spotlight
HCLTech is an AWS Premier Tier Services Partner and MSP that serves hundreds of global enterprises to solve day-to-day and complex challenges with a dedicated full-stack business unit.