Web services have established themselves as a simple and cost-effective alternative to older, more complex, and more expensive proprietary integration technologies. Many companies and institutions are already successfully using Web services internally to leverage existing IT investments and to provide integration between diverse platforms and systems. Nevertheless, until recently, Web services technology was mostly used to achieve integration inside the corporate firewall. This is now beginning to change.
Businesses are starting to use Web services to enable automated business relationships across enterprise domains in order to reduce cost and improve their ability to work with partners, suppliers, and customers. Presently, many of these automated business relationships are between companies and institutions that are already known to each other and with whom there is already an established relationship. Over the next few years, however, we can expect that there will be larger collaborations of businesses whose scope will extend well beyond established business relationships – potentially spanning entire industry groups.
These larger business collaborations will involve a much larger number of participating businesses and will be driven by new business goals and opportunities such as the need to expand markets, increase the efficiency of supply chains, establish closer relationships with customers, participate in e-government initiatives, and comply with regulatory requirements. The specification and modeling of these large-scale cross-enterprise business collaborations will become a new, established role for architects and business analysts. Their answer to these business drivers will be to design and create a Service-Oriented Architecture — a larger, more dynamic, more flexible, and more complex collection of services. In fact, if one looks at the rapid adoption of Web services and the increasing interest in Service-Oriented Architectures, it is clear that this trend of tremendous growth is just beginning.
The creation of a new generation of much larger and more complex distributed business processes will be facilitated by an equally new generation of Web services standards, improved platforms (such as application and integration servers), and enhanced development and modeling tools. Specifically, these new platforms and tools will support key standards such as OASIS WSBPEL (Web Services Business Process Execution Language) and the somewhat complimentary W3C WS-Choreography standard. These standards are associated with Business Process Management (BPM) in a Web services environment, and deal with the coordination and control of complex business processes expressed as an aggregation of Web services. WS-Choreography concentrates on an even higher-level - a more abstract view and model of complex collaborations - than does WSBPEL. However, it is fairly clear that OASIS WSBPEL will provide the dominant mechanism for concrete portable cross-platform execution of complex distributed business processes across multiple enterprises.
Both WSBPEL and the CDL (Choreography Description Language) being worked on in WS-Choreography are designed to be interoperable with a broad range of other essential Web services standards, including those that will support security, reliable messaging, transactions, state, and management. In short, the standards necessary to bring about a new world of Web services distributed across multiple enterprises, cooperating with each other in exciting new ways as part of a multi-enterprise Service-Oriented Architecture, are already in place today or will be soon. The technology to support these standards is being aggressively developed by many important platform vendors.
However, this new world of highly-visible, mission-critical distributed business processes based on Web services and architected with Service-Orientation in mind also presents a new set of challenges. Presently, many organizations run their business processes entirely on their own IT infrastructure, which is directly under the control of the business and its IT organization. Using enterprise management solutions from leading management software vendors like Computer Associates, enterprises can maintain visibility and control of their entire IT infrastructure - from the hardware (such as servers, routers, and disk drives) to the software (such as operating systems, databases, and application servers.)
As businesses adopt cross-enterprise Service-Oriented Architectures based primarily on Web services, the importance of the IT infrastructure is not diminished. In fact, just the opposite is true. Obviously, a company's own Web services must run on their own IT infrastructure. But, the enterprise will now have additional dependence upon the reliability and performance of essential Web services that may be hosted and controlled by other businesses, as well.
While this is not an entirely new paradigm for IT, the extent and business-critical nature of this dependence upon outside entities will be unprecedented for most businesses. And yet, given the strong business imperatives that are driving business towards this new paradigm, what can IT do to reduce the risk of unreliable or erratic outside Web services that might impact the critical business processes and ultimately the business itself?
Furthermore, their own internal Web services bring an additional concern, as they continue to be completely dependent upon their own underlying IT infrastructure that supports these services. Without deep integration between their traditional enterprise management solution and the new Web services management solution, it will be extraordinarily difficult to correlate management information about the two technology layers (their Web services and their existing IT infrastructure). Yet this is absolutely necessary in order to determine the true root-cause of Web service problems. The underlying cause of service problems may have its origin hidden deep within the company's own IT infrastructure.
Given the lack of specific data interchange standards that address the need for correlation between infrastructure management and Web services management, many IT departments will choose to buy their Web services management solutions from their enterprise management vendors. The alternative, Web services management products with only superficial enterprise management integration, would be unable to offer the required root-cause analysis since they would lack the necessary rich bi-directional information exchange and correlation needed between the two different levels, infrastructure and Web services. This is certainly a problem with simple, unidirectional mechanisms such as SNMP, although this is frequently the only mechanism available to standalone Web services management products.
A simple example can make the need for Web services management and integration with enterprise management easier to visualize. Let's say that you are in charge of a high-quality regional chain of coffee shops. In order to do battle with certain other chains of national scope, you decide to offer your moderately loyal customers, who tend to be upscale professionals with mobile internet-enabled devices, rapid access to the location of your nearest shop in any city. Response time is crucial to your business model as every city block has competitors and your customers' loyalty can be pushed only so far.
Lacking any geographic competency in your IT department, you outsource this functionality to a geographic Web service named XYZ Geographic Service. There are many such Web services already available, with Microsoft's MapPoint being perhaps the best known. You are now in an interesting situation. Your customers need geographic information quickly, and yet your ability to deliver this information is dependent not only on your own Web services (and their underlying infrastructure of hardware and software), but by XYZ's Web services and their underlying infrastructure, as well.
Since you cannot instrument XYZ's IT infrastructure with your own management agents, you must use the only information available to you – the messages that are input to and output from all the Web services involved – to evaluate the performance and reliability of all these services. This is the traditional role of Web services management products, which operate exclusively at the Web services message level. However, in the case of your own Web services, you must also have the ability to correlate your Web services management data with the multitude of management information that pertains to your IT infrastructure, or you will not be able to assure the necessary quality of service.
In this particular hypothetical example, let's say that XYZ's Web service and an internal Web service are both performing poorly. Luckily, your hypothetical coffee shop chain is using CA's very real Unicenter WSDM Web services management solution so that both service disruptions are easily identified. Furthermore, your coffee-shop chain IT people have leveraged the deep integration between Unicenter WSDM and Unicenter enterprise management solutions to uncover a number of related problems in their underlying IT infrastructure, including thread utilization in their J2EE application server and a malfunctioning router in the network itself. So, at least in this hypothetical company, all assets remain manageable, visible, and controllable.
The answers to the many problems that will inevitably result from the acceptance and growth of complex cross-enterprise Service-Oriented Architectures based on Web services lie, at least in part, upon more robust Web services management. But solutions can also be found through the cooperation and close integration of Web services management with existing enterprise management technologies. As we have learned time and time again, new layers of technology do not work in isolation. They can only truly add value when they work in a deeply-synergistic fashion with existing architectures and applications. Web services and Web services management are no exceptions.
Paul Lipton is a technology strategist in CA's Office of the CTO. He has been an architect and developer of enterprise systems for over 20 years and works closely with key CA customers to architect distributed solutions using Web services, J2EE, .NET, and wireless technology. Paul has represented CA in various standards organizations such as the W3C, OASIS, and the Java Community Process.