In a three-part series, Infostructure Associates president Wayne Kernochan outlines a modernization path for business-critical...
By submitting your email address, you agree to receive emails regarding relevant topic offers from TechTarget and its partners. You can withdraw your consent at any time. Contact TechTarget at 275 Grove Street, Newton, MA.
applications in an existing mainframe environment.
For over a decade, mainframe applications have been criticized for spiraling maintenance costs, the result of a vicious circle of lack of documentation inability to upgrade, leading to higher costs for maintenance or upgrades right now.
In the past five years, with the advent of service-oriented architectures, most enterprises have recognized that their existing mainframe applications also offer an opportunity: Modernized, Web-servicized business-critical mainframe applications can be used in business process integration to speed creation of new competitive-advantage processes. Today, the advent of cloud computing takes this one step further. Web-servicizing mainframe applications and placing groups of these apps "in the cloud" as services can lead to reduced governance costs and increased flexibility in a fast-changing environment.
Whatever the enterprise's motive, it is clear that mainframe applications need to be modernized. However, users who are prototyping Web services implementations of mainframe apps must pick the right targets, because there is no money to waste on failed or long-running projects.
Modernization means revising existing legacy apps so they can leverage today's new software technologies as part of an enterprise architecture. Once these applications are modernized, they should offer the Web support, flexibility, robustness, programmer productivity and access from across and outside the enterprise that today's new applications typically provide.
Modernizing an existing mainframe enterprise resource planning or order-entry application maximizes the positive impact on the bottom line while minimizing the costs of providing new e-business features. Web-servicizing these applications simplifies the existing e-business architecture, cutting administrative and development costs.
Where possible, these applications should be upgraded in place -- modified on the mainframe rather than migrated to a new platform.
The right approach to mainframe modernization
Today's enterprises typically consider four strategies for integrating new technologies with their existing mainframe application suites.
- Upgrade in place. The program and its data are kept on the mainframe and the developer applies mainframe tools that integrate the new technologies with the mainframe application.
- Migrate. The program's source or binary code is moved to another platform with little or no change and the developer applies tools on the new platform to add the new technologies. Note that the application's data may be moved to the new platform or may remain on the mainframe.
- Regenerate. The program is first reverse-engineered, a process that creates an abstracted design model of the application. The application is then regenerated from the design model on the new platform. The new technologies are either embedded as a result of the regeneration process or added once the application is up and running on the new platform (again, the data may remain on the mainframe or can be moved to the new platform).
- Replace. IT discards the existing application and writes an entirely new one on the mainframe or a new platform. The new technologies are designed in to the new application. The new application supposedly incorporates at least the same functionality as the old.
Increasingly, virtualization is seen as part of an overall strategy. IT breaks the links between a program and its underlying environment, either by changing all calls to operating system and hardware to calls to infrastructure software that runs on all major platforms, or by converting the program to a language such as Java, which runs in a virtual machine on all major platforms. In the case of a mainframe application, this can involve converting to a new programming language, rewriting dependent code or reverse engineering that can generate new versions for all platforms.
In the past, enterprises tended to choose a replacement strategy if a new technology had to be added; otherwise, they simply left the application as-is. The risks of changing a business-critical application in any way were seen as so great, and the difficulties of changing it so daunting, that anything was preferable to touching it at all.
However, over the past five years, four new trends have significantly changed the relative merits of these four choices.
- Migration tools have become applicable to so many mainframe applications that most of these applications are now migrateable.
- There has been an increase in total cost of ownership savings and business benefits of both non-mainframe platforms and Web-servicized mainframe platforms, making the idea of leaving mainframe applications as-is less and less tenable.
- The tools, middleware and services necessary for upgrading in place, and especially for Web-servicizing on the mainframe, are now available and field-proven.
- Business process integration using rapid stitching together of existing business-critical-process applications has re-use of Web-servicized mainframe application code paying off dramatically in speed to value.
Click here for part 2.
About the author:
Wayne Kernochan is president of Infostructure Associates, an affiliate of Valley View Ventures. Infostructure Associates aims to provide thought leadership and sound advice to vendors and users of information technology. This document is the result of Infostructure Associates-sponsored research. Infostructure Associates believes that its findings are objective and represent the best analysis available at the time of publication.
What did you think of this feature? Write to SearchDataCenter.com's Matt Stansberry about your data center concerns at email@example.com.
IBM rolls out z9 Business Class
Web services development needs the mainframe