A recent Gartner report shared that 87% of senior business leaders call digital modernization a top priority. In its “IT Roadmap for Digital Business Transformation,” Gartner details the steps for the best way to scope, scale and lead business transformation to positive financial results. And one of the startling findings was that “the transformation journey is taking large enterprises especially at least twice as long and costing twice as much as they originally anticipated.”
For application development on the mainframe, with Agile and DevOps thrown into the mix, the IT chaos from yet another business initiative has once again been amplified. Front and center for the resources leading this digital transformation are the CIO, applications leaders, and data and analytics leaders. For applications leaders to thrive, Gartner suggests adopting new technologies, delivery methods, and organizational models to support and manage modernizing applications. For the mainframe, where some applications are 50+ years old, the modernization will be exponentially more difficult than their distributed systems counterparts. In many environments large enough for a mainframe, merely locating legacy applications and the systems they are connected to will be unattainable without deploying new technologies.
Take, for instance, the recent IBM announcements on end of support for COBOL 4.2 and 5.1/5.2, and the “nudge” to move to COBOL V6. Without an application discovery tool, how would a large organization supporting tens of thousands of users with thousands of mainframe applications even know which applications are COBOL V4x and V5x? And what to do if they could find them all? What if that number was 10,000? And what if you only had the resources to update 50 of these applications this year? Now, factor in COVID-19 and the digitization initiatives that work-from-home caused. These are just two of many things mainframe IT is dealing with on top of existing data security and compliance mandates like GDPR, CCPA, HIPAA, PCI, DSS, and others.
Where the Money Is in Making Applications the Priority
Gartner’s roadmap says everyone under the CIO needs to be involved in modern digitization initiatives: applications, data and analytics, enterprise architecture, infrastructure/operations, sourcing/procurement, and services teams. But what’s the priority? One school of thought is to focus on the customer-facing initiatives — the initiatives that impact your enterprise users helping customers and the services your customers are consuming: in other words, application modernization.
This task won’t be easy. For application modernization to best serve your user customers and external customers, you must work fast because of the Agile and DevOps methods that have been induced into your environments. In the COBOL example above, you need all hands on deck for this initiative if you are to convert the most critical applications to an IBM-supported version of COBOL. Application testing on the mainframe, however, is difficult because of the expansive and modular nature of mainframe applications. It can take months to create an integration testing environment (which is an approach lending itself more to the waterfall development method than Agile/DevOps).
Testing mainframe applications has always been a challenge in today’s world of integrated systems. One application can be critical in multiple jobs, or you may have one module that might be utilized by many online tasks. And, because integration testing containers are so costly (time consuming) to create, it is this part of the DevOps value chain where the mainframe app dev work queue slows. Developers must wait their turn in the queue for testing or they don’t test at all if they are on a hard deadline. This serialized workflow is creating a barrier to fully deploying DevOps on the mainframe.
Furthermore, data isolation is required for such integration testing and it cannot interfere with other applications in the development queue, like in the days of old when only one person could check out a library book at a time. In turn, consideration for other modules and users means repeatedly creating temporary versions of data for private use only at regular intervals every time code changes are made and before each test. The source for today’s data is vast and may be in diverse databases, VSAM, or just sequential files. This means repeatedly building test data multiple times and not just by the person testing — not to mention if you have the resources to build test environments on the mainframe. This binds too many resources, is expensive and further disrupts delivery schedules.
On distributed systems, containerization is a means for providing the data and code for a developer to build then test then repeat on a laptop. This method is conducive to DevOps in that multiple developers can work in parallel on the same enterprise application without affecting one another’s code or database. This type of development eliminates many of the issues previously listed and follows the DevOps philosophy of software delivery pipelines to drive faster feedback on recent changes pushed to the code repository. This enables on-time delivery and allows all users to test independently. And, because of the time and expertise — more cost — needed to build mainframe containers, fewer testing environments are available causing developers to work in series. Change however is coming.
Containerized solutions with Agile and DevOps in mind are now available to mainframe developers and the ROI users are seeing from the acceleration of application delivery is significant.
IBM launched Wazi for Red Had CodeReady Workspaces. Wazi is a browser-based product that can leverage containers on x86 servers for application development for mainframes running z/OS. IBM’s z/OS Container Extension is also an option that allows developers to create their own containers in the cloud. According to the 2021 DORA (DevOps Research and Assessment) State of DevOps report, highly performing DevOps organizations have 973 times more frequent code deployments.
Eccox Software, another DevOps container vendor located in Sao Paolo, Brazil, reports that users with their product who practice DevOps show 25% faster production times with 22% fewer bugs, and within three years of deployment, customers see a 366% ROI.
DevOps on the mainframe has crossed Geoffrey Moore’s proverbial chasm and it is expanding to widescale use. Better code and faster production schedules are leading to better end-user experiences and increased market share for the organizations that can embrace it. And application modernization is a good place to start.
Colin Oakhill (senior consultant, InSoft Infotel Software GmbH) is well known in the global mainframe community, having vast experience in many database systems including IMS, Total, and IDMS. He has deep operating systems experience in z/OS and CICS, and founded InSoft Software in 1986. Over the past 45 years, Oakhill has designed and/or created several successful mainframe software products, and was the principal architect of Insoft’s DB/IQ QA product developed in the mid-1990s.