January 24, 2024 | IBM Z

The Case for Modernizing IBM Z Batch Applications

image

Is it worth it to invest in modernizing your IBM Z batch applications? 

 

The answer is yes!!! In terms of predominant industry trends, expected & desirable outcomes, quality, defect elimination and new technologies, Z batch application modernization should be a critical investment priority for IBM Z-based organizations.  

 

In this blog, we’ll examine the case for modernizing IBM Z batch applications and what items affect your modernization plans. We’ll look at the trends driving Z batch application modernization, the desired outcomes (benefits) of modernization, the fundamental requirements for modernized JCL testing and the potential benefits derived from incorporating Java Batch with your legacy JCL processing.  

Predominant Trends for Z Batch Application Modernization 

  • Market Conditions are Dynamic – Organizations must adapt to constantly changing customer demands. This trend displays itself with new ongoing IT service delivery requirements for accelerated velocity to high-quality application delivery. The push for wide adoption of Agile methods like Continuous Integration and Continuous Delivery or Continuous Deployment (CI/CD) directly supports this trend.              
  • Workforce Transition – The last three decades have been dominated by the mass transition of mainframe workforce skills.  The new generation of build and run personnel are trained on non-mainframe operating systems, database management systems, user interfaces and application programming languages. The best and brightest next generation mainframe programmers demand new technology while mainframe institutional knowledge continues to erode.

    In contrast, the growing challenge is that decades of major investments in mainframe hardware and software assets, including complex Z batch applications, continue to play a mission-critical role in providing essential IT services to the business. Workforce Transition demands that both workforce legacy and modernization skills be employed in Z batch application deployment. Before suggesting a plausible definition for modernizing IBMZ batch applications, let’s first look at the predominant trends driving Z Batch Application Modernization. These trends represent business requirements that only Z Batch Application Modernization can satisfy. 

Defining Z Batch Application Modernization in terms of expected outcomes 

Understanding the current driving modernization trends, how might one define the expected outcomes from investing in Z batch application modernization?  In other words, IBM Z Batch Application Modernization would encompass those behaviors that consistently result in the following desirable outcomes: 

 

1. Current hardware and software assets are evaluated first.  Z systems often represent decades of investment in applications providing high-quality, market-tested value to the business. Their continued evaluation and use satisfy workforce transition requirements to blend & deploy legacy assets alongside modernized assets.  

 

2. Applications are refactored into discrete services that can be accessed and consumed by documented RESTful APIs. Your user base must be able to consume applications using their preferred user interfaces including Web browsers and non-mainframe applications, outside of traditional mainframe-only interfaces such as 3270 screens. Refactoring Z applications for consumption using RESTful APIs helps satisfy this requirement. 

 

3. Testing tools and processes are widely adopted, continually improved, and ensure highly predictive runtime outcomes. Application developers can access and interact with IBM Z services through their preferred user interface, including using Integrated Development Environment (IDE) plug-ins for popular IDEs such as IBM Developer for z/OS (IDz), BMC AMI DevX Workbench for Eclipse, Visual Studio Code, and other Java & Eclipse-based plug-ins.  

 

4. Ongoing investments are made to mainframe ISV Build and Run tools that prioritize user or business preferences, including the selection of the application layer, database layer, and user interface layer…without the need to adhere to restrictive platform dependencies. 

 

5. Desired behavioral changes required to adopt the target state tooling. Processes are achieved through personal motivation rather than a leadership mandate requiring cooperation. 

Modernization & JCL testing 

For IBM Z batch application modernization, it’s critical to further elaborate on the fundamental behavior of continual investment in testing tools, particularly modernizing JCL testing services.  

 

Regardless of how you define Z batch application modernization, the level of quality and the time to quality are determined to a significant degree by:  

  • The level to which testing services are consistently adopted and used   
  • The level to which testing services will accurately predict runtime outcomes 
  • The ability of testing services to detect and eliminate potential defects earlier in the application life cycle.  The term “shift left” is one of the descriptors referenced when discussing the value of early defect elimination.  

Given that testing services are critically important for effective Z batch application modernization, the following requirements should be considered necessary in a modernized testing service for the most widely deployed IBM Z batch scripting language (JCL): 

 

1. The testing service would be highly predictive. Investments are continually made in the testing service to constantly improve its reliability. Regardless of where the testing request is made, run time simulation is constructed in the target system that will host the batch application runtime environment. 

 

2. The testing service has been refactored to the degree necessary to ensure it can be requested by any authorized consumer (REST API, Build Tool, Eclipse IDE, Green Screen).  

 

3. The testing service is designed to allow new developers to quickly find and correct potential run-time defects.

 

4. The testing service is designed with the ability to generate, store, and produce metrics to assist with measuring defect elimination trends, return on investment (ROI) and as an interactive training aid for new developers.   

Considering Java Batch  

IBM Z batch applications can also be modernized by incorporating and adopting a Java Batch processing framework as a complement to traditional mainframe batch processing. Incorporating Java Batch into Z batch applications allows organizations to utilize the skills of existing Java developers into batch testing and processing. Java developers are generally more widely available and cost-effective than mainframe programmers, which will help to alleviate workforce transition issues.  

 

Implementing Java Batch processing can also result in substantial cost savings, particularly by using IBM zIIP processors, reducing the overall cost of running batch jobs and allowing organizations to process more workloads within their existing infrastructure.

  

With Java Batch, opportunities exist for Java developers to consider batch scripting language alternatives that can be both resource-efficient and more naturally assimilated than JCL, providing significant justification to investigate and invest in these options. 

A significant investment area 

The case for modernizing IBM Z batch applications is clear and compelling. Modernization should be considered a significant investment area for IBM Z-based organizations. The expected and desirable outcome benefits of batch application modernization include:  

  • Modernized tools and scripting languages that help satisfy constantly changing IT service delivery demands for accelerated product release velocity, high-quality application delivery and Agile & CI/CD adoption 
  • Modern toolsets for workforce transition, where legacy application development can be blended and enhanced with new technologies for supporting complex Z batch applications 
  • Users can consume IBM Z applications using their preferred delivery interfaces, including RESTful APIs and Web browsers 
  • Application developers can use their preferred user interfaces and modern toolsets for increased productivity 
  • Batch testing services can be significantly improved for increased reliability, predictability, refactoring, defect detection, quality and improved metrics 
  • Cost reductions can be realized by adopting Java Batch scripting, which can help reduce programming costs and increase batch run-time efficiency using zIIP processors. 

As shown, there is a significant case for modernizing IBM Z batch application processing. If you’d like to learn about how to modernize your own Z batch applications, please contact SEA for more information