Mainframes are at the core of many enterprise infrastructures, especially for companies that store enormous amounts of data, and which need that to be accessible to other services and applications. Information such as bank account data, telephone information, airline flight information, hospital patient information and government data are often still locked up in mainframes.
As we saw in the first part of this two-part article, companies are increasingly turning to Web services and service-oriented architecture (SOA) as a way to get mainframes to talk to the entire enterprise, which is built on newer technology and applications which mainframes typically can't run. So Web services are used to merge the intelligence and data from the mainframe with other enterprise applications, in a process called legacy-enablement. All that sounds clean, neat and simple, but of course it's not. There are plenty of problems with the process, as we'll see in this column.
Problems with Legacy Enablement
The first potential problem with using Web services and SOAs for legacy enablement is a surprising one, according to Mike Oara, co-founder and Chief Technology Officer for Relativity Technologies -- it's finding exactly where a piece of functionality is even located on the mainframe.
"Someone from the business side of the company may want to include a particular piece of functionality, or data from the mainframe, and so they ask that it be included in an application," he explains, setting up a typical scenario. "But often, it's not at all obvious where that functionality is; it's often buried. So the first problem someone will come across is finding where the functionality is, and then finding the connection point to it."
Another common problem, he says, is that when a program is written to integrate with a mainframe, it executes, and essentially takes a path to nowhere -- it gets stuck sending a query and receiving the response.
A potentially larger problem than both of those looms, though, he warns. The world of the mainframe and the world of Web services are separate ones, and in a way they have their own culture and languages -- and they certainly have very different expertise. So someone familiar with a mainframe may know all about COBOL, but he will have no idea how to use WSDL to expose information to a Web service, for example. And those who are familiar with Web services generally have no idea how to work with mainframes. Bridging the technology gap between the two can be exceedingly difficult.
Ron Schmelzer, senior analyst with ZapThink, notes that there is another problem as well: What he calls the "granularity issue."
"The people who built mainframes didn't intend to have the data accessed by non-mainframe apps," he says, "and sometimes the data on mainframes is only accessible in very big chunks. The problem is that with Web services you often need a very small piece of data, and there's no API for the mainframe to help you get it. That means you need some way to remediate between the two."
In addition, he says, there are a variety of security issues, including different rules and procedures for logons on mainframes versus Web services.
Tools for Solving the Problem
There are a variety of tools that can solve these and other problems. Oara points to tools provided by his company, Raleigh, North Carolina-based Relativity Technologies Inc. The tools are often used by system integrators such as Capgemini and IBM Global Services, he notes. The product consists of a workbench with licensable components for integration and it supports a wide variety of mainframes. As one small example of what the tool does, he says that it offers an easy way to expose a specific mainframe function as a service, and that the output describing that service can then be distributed within a corporation so that it can be used in multiple Web services. It will also do automated discovery to find connection points to mainframe programs.
A variety of other tools are helpful as well. Schmelzer points to Atlanta, Georgia-based Seagull Software Inc. as one example of a good tool for integrating mainframe applications with Web services and SOAs, and which can transform legacy applications into callable Web services. In addition, Sugar Land, Texas-based Neon Systems Inc. also sells tools for mainframe integration with Web services and SOAs.
The Mainframe Lives On
Don't expect the problem of integrating mainframe apps with Web services and SOAs to go away anytime soon. Oara estimates that 200 billion lines of mainframe code are actively running today, and new code is being written all the time. Mainframes are so reliable that they'll keep running for years and years. Companies only retire them when they have a compelling reason to, and large companies with lots of data keep them for as long as possible because of their power and reliability. So if you need to get data from them, prepare for the problems -- and the tools cited in this column should get you a good deal of help.