Rosemarie Graham spoke with Jim Rhyne, Legacy Applications Architect at IBM about using legacy data within Web services.
Thank you Jim for taking the time to speak with Developer.com. A lot of our readers are developing or at least considering Web services for their companies so we will focus our attention there.
Q: Give us your perspective on the Web services market today.
A: My focus has been on Web services pre-J2EE applications, especially for IBM mainframes. We are seeing a very high level of interest in larger customers for Web services within the organization (as opposed to B2B or B2C). Most of these customers have struggled with application integration across heterogeneous systems and they hope that Web Services is the technology that will finally allows them to connect all of their applications.
Q: Where do you see it going in the near future?
A: My area of Web services diverges somewhat from the Axis or OGSI mainstreams. Performance is a critical concern with organizations demanding over 1000 requests per second. Security is a concern, but session level security (e.g. HTTPS or SSL) is seen as the solution instead of WS-Security because of performance concerns. There are cases where authentication and non-repudiation are desirable, but there has been little actual use of this technology to date. Because Web services is intended to replace existing homegrown or purchased application integration middleware, there is substantial interest in business logic directed routing and brokering.
Q: What percentages of your customers are employing Web services technology today?
A: I would guess that about 50% of IBM's largest 100 customers are engaged in some sort of Web services prototyping effort. Several customers have created their own Web services implementations in procedural languages like C, COBOL and PL/I. I have not done, nor am I aware of any systematic survey of our enterprise customers.
Q: Are many of these companies using legacy data within those Web services?
A: Without exception; they need to interface with legacy applications and deal with structured EBCDIC data and also screen data that was originally intended for 3270 and 5250 displays.
Q: How is IBM making this happen?
A: IBM supplies a variety of ways for customers to realize Web services. IBM's WebSphere-based Web services technology plays the primary roles of hosting the edge-of-enterprise Web services interceptor and also hosting the brokering and routing functions. Products such as WebSphere MQ Integrator employ XML message brokering and routing functions and predate many of the existing Web services standards such as SOAP 1.1. We released XML support for COBOL and PL/I late in 2002 as a result of seeing customers begin to experiment with building homegrown XML parsers. Recently, CICS announced a technology preview of a proposed Web services facility for CICS applications. DB2 has supported XML for the last couple of releases and is investigating Web services support. IMS and the iSeries are also investigating support for Web services. Across the IBM Software Group, a group of senior software architects is coordinating these efforts to insure that IBM's Web services technology is consistent and complies with the relevant standards.
Q: Can you give us a business scenario of how this is being done?
A: I can give you two points of view on this question. From the IBM business point of view, we are elaborating the Web services technology in partnership with a number of our customers to insure that it meets their needs. It should come as no surprise that we find requirements that are not met by existing open source implementations or existing standards. For example, there seems to be a need for three service levels in the Web services brokering area:
- Simple, non-transactional and non-recoverable brokering (essentially switching activity)
- Transactional brokering and what has come to be called choreography
- Workflow, with support for long running transactions and human interaction
From the customer point of view, most customers are expecting to adopt Web services as the standard application integration middleware. They expect that it will save them money by virtue of being a commodity technology. They expect that it will enhance their ability to respond to changing business conditions and opportunities in two ways:
- Web services networks are dynamically configurable and support ad-hoc interactions that previously would have required expensive and time-consuming application changes
- Moving to a services model for applications makes their existing software more reusable
Most customers are rolling out Web services within an existing business function, and then adding other business functions over time.
Q: What are the primary obstacles companies face when using legacy data within a Web service? And how does IBM help in these cases?
A: Legacy data is characterized by structures and networks of structures (aggregates). In addition, "variant" or "discriminated union" records are commonplace. There is support in SOAP, WDSL, and XML Schema for all of these structures except data aggregates. The standards today do not adequately cover marshalling and de-marshalling of data structures linked by memory addressing. Another series of problems occurs at the interface to Java, where existing standards such as JAX-RPC and JAXB are inadequate because they do not address structured data or data aggregates very well. We are working to get these problems addressed, but at the moment these show up as serious interoperability problems with other vendor tools.
Q: For what platforms is SOAP for CICS available? Are there any plans for SOAP for CICS on other platforms?
A: The CICS Web Services technical preview is available on zSeries. We are looking at the potential need for an implementation for distributed CICS and for Encina, but have no plans at this time.
Q: What language(s) will the developers be using with this tool?
A: The initial tooling for CICS Web Services application developers will be contained in WebSphere Studio Enterprise Developer. This tooling generates payload marshalling and de-marshalling functions for use by application programmers. The initial release supports only COBOL, but there will soon be an update for PL/I programming. We have no present plans to support assembler programming. IBM 4GLs such as Visual Age Generator can make use of the generated COBOL modules.
Q: SOAP for CICS is listed as a Technology Preview. What is meant by Technology Preview?
A: A technology preview is early code, usually showing an architecture and an implementation for critical functions, but typically not yet functionally complete, or tested and hardened for production use. It is intended for learning by customers and for feedback to the development team. Alternatives to the IBM problem reporting and response process are typically used, and development responses are on a best effort basis. We usually try to limit the number of customers using Technology Previews to insure that we are not overwhelmed.
Q: Is there a charge for this tool? Where can developers find it?
A: WebSphere Studio Enterprise Developer is a one-time charge product. It is currently available via standard IBM channels. The CICS Technology Preview is available by contacting the CICS team. Information on other tools and runtimes is available via the IBM Website. For developers who want to learn about and begin working with IBM technologies, the Developer Works and Alpha Works Websites are invaluable.
Q: Is IBM working on anything else you would like to mention here?
A: Web services are an important part of IBM's On Demand computing initiative. The role played by Web services is insuring that the dynamic capability to assemble an application quickly to meet a business need. IBM is making substantial investments in Web services and OGSA, as well as in IBM initiatives in Autonomic computing. All of these efforts are needed to insure that customers can migrate to On Demand computing. Currently, we have defined a collection of On Demand computing scenarios that we are using to drive technology development across the IBM Software Group.
Thank you Jim for taking the time to give us your perspective on Web services and IBM's work in that area.