A recurring theme today is mainframe modernization, encompassing all the things you have to do to keep the z/OS platform relevant and effective. So as the platform is now in its sixth decade, what are the key challenges and considerations that today’s big iron shops face in this area? Here are some of the important ones:
1. The old application is a behemoth that no single person understands
Most mainframe applications have been modified and added to over the years to support new business needs and technologies. Many of the people responsible for those earlier modifications have retired or moved on and it’s possible individual changes were not comprehensively documented.
This gives rise to the worry that making further changes will be risky, with nobody totally sure of the effect they will have. The consensus in this situation is “it’s better to leave well alone” when it comes to the mainframe.
However, this won't cut it in our demanding 24-7 world, where applications need to really earn their keep. While they may have been fit for the original purpose, the many changes in code coupled with modern day demands could mean applications no longer perform efficiently. The consequence is often poor response times or wasteful use of processing power making the applications increasingly expensive to run.
This is where application performance tuning can help. Tools are available that can highlight the specific areas of code that give rise to inefficiencies. Once they are identified, it is possible to generate fixes that can improve performance to both speed up responses and use CPU more efficiently.
2. None of the new guys are interested in the old stuff
While they probably know that mainframes are the processing heart for many organizations’ core systems, most 20-somethings trying to build an IT career today won’t want to go anywhere near that black and green 3270 screen. For developers brought up on point-and-click and modern productivity features, it must seem that the command line interface belongs in a museum.
Enter Eclipse, the development environment that the new generation of developers will have gone through college using. By incorporating Eclipse’s intuitive, easy to use GUIs on the front end of your mainframe applications, you reduce the learning curve for your new development and support staff and help to power your applications into the 21st century.
Today many applications are a hybrid of mainframe and other systems tied in with Web and mobile technology. So a single integrated development environment such as Eclipse makes it easier for one team to handle the end-to-end development across all these technologies. For some this makes more sense than having separate development teams for the mainframe and other parts of the IT stack.
3. You can put lipstick on a pig ...
The phrase, "You can put lipstick on a pig, but it's still a pig" has been used by some to argue against the idea of putting new Web interfaces onto what they might consider “tired old mainframe applications” that are not right for today’s new demands. While this could be true in some cases, there are still many very robust applications where the only drawback is the interface. If you can find a way to give the user interface a facelift, then what's underneath can do a very good job of supporting Web and mobile applications.
You can build a customized Web front end to your applications as many organizations have already done, but this can be costly and time consuming. Happily there are now faster, more affordable options available. One such option involves using mainframe session management software with a Web interface as an instant way of Web-enabling mainframe applications. It presents users with a mainframe session that responds to mouse clicks and touch screens so it can be used by any modern PC or mobile device.
There are also software products that not only automatically render your existing 3270 interfaces as HTML, but also allow you to add customization to improve usability, such as merging several mainframe screens into one so it is less cumbersome moving through the application. You can create drop down menus, turn commands into icons for easy navigation and add features common in modern Web interfaces, such as pop-up calendars and calculators.
4. How did our IT landscape get so complicated?
I remember one of our enterprise customers saying some years ago that they have “one of everything”—a range of different mainframe flavors; AIX, UNIX and Windows; a variety of databases; a number of different in-house developed applications and proprietary software; plus Web and mobile applications and servers.
Many of these technologies are interconnected and the overall complexity makes it difficult to change anything. What will happen if you do? Even upgrades can be scary.
You're never going to make it simple, so the lesson is to expect the unexpected. Make sure you have a fully tested disaster recovery and backup plan and make it somebody's job to check that plan—really check it—and carry the responsibility for it.
5. Change is too risky but so is doing nothing
Change in business always comes with a certain level of risk, but skills shortages, changing customer (and employee) expectations about the technology they interact with, and increasing business competition force us all to modernize and keep moving forward when it comes to technology, and that includes the mainframe. Doing nothing is not an option.
So be pragmatic: Combine the old with the new and “upcycle” your old mainframe applications. Keep them, but make them work and look better. And when you do change, make sure you cross all the t's and dot all the i's. We're talking business-critical applications here so failure is not an option.
The mainframe has already shown its resilience and staying power. The trend for mainframe modernization is just another way to ensure it continues to remain current.
Keith Banham has worked in IT for more than 30 years and is the R&D manager at Macro 4, responsible for the company's mainframe suite of products. Keith started as an Assembler programmer at a major bank and during his 29 years at Macro 4 has worked on many of the company’s solutions for application lifecycle management, application performance management, document management and session management. One of his recent roles was the modernization of these solutions by building Web, Eclipse and mobile interfaces, as well as the modernization of Macro 4’s internal mainframe development environments.