Will Web Services Kill EAI?
Web services are a Pandora’s box. The basic notion is compelling. Software components offer themselves up as a service to other components or directly to a user via well-defined interfaces and message protocols. It all sounds simple and one wonders why it wasn’t like this from the start. Underneath this alluring concept, however, is a world of complexity that will surely claim unaware victims. Security, availability, performance, reliability, and ownership are just a few of the issues that immediately spring to mind and these will become the real issues that determine the success of this new paradigm. As the hype machine gets into gear, remember what has enabled the industry to even consider treating software as a service. At the heart of it is eXtensible Markup Language (XML), a meta-language that lends itself to creating other languages and protocols. From this, we’ve seen Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP), and Universal Description, Discovery, and Integration (UDDI) evolve as the three corners of Web services standards. As the names suggest:
- WSDL facilitates the description of a service.
- SOAP provides a mechanism for packaging messages once services understand each other.
- UDDI supports the creation of directories of services so they can be found in the first place.
Web services standards are the equivalent of the specification for plugs and sockets in a domestic power supply system. The wiring infrastructure is a wholly different issue. Will the wires carry the current? How can power outages be minimized? What mechanisms guarantee that the neighbors cannot get into our supply? It’s the job of Enterprise Application Integration (EAI) to provide a reliable, secure, and safe infrastructure. Web services are a catalyst, not a solution, for these problems.
Consider what we expect EAI technology to achieve. Transaction integrity is important and Web services will increase the difficulty of achieving this aim. Something must ensure that a transaction, which might call upon several services, executes completely or not at all. Without getting into details of synchronous and asynchronous messaging, EAI technologies will have to be smarter — and designers more rigorous — if distributed transactions of this nature are going to execute with integrity when services are not available or are heavily overloaded.
Security also becomes more difficult. A user may find an application is out of bounds if directly accessed, but available when accessed via another service. EAI technology must be aware of service contracts between components and what actions should be taken if these are likely to be breached (WSDL will facilitate some of this).
Middleware and application server vendors are eagerly embracing Web services. Even Iona, a staunch Common Object Request Broker Architecture (CORBA) advocate, is placing XML and Web services at the heart of its strategy. Perhaps more important, there’s a growing sense that the technology integration infrastructure is just a starting point. The end game is the integration of business processes. EAI vendors are also addressing Business Process Management (BPM). IBM is offering BPM services and tools in addition to its WebSphere Web and application server platform. Iona also has BPM tools and knows that it must move in this direction to offer a full solution.
Web services will place EAI at the top of the agenda in many organizations. Integration is a starting point, not a palliative, to fix poorly implemented IT strategies. Applications are nodes that perform work, but the infrastructure is the real asset. To use the electrical supply analogy again, it may be the devices that perform the work we want, but it’s the supply system that makes it all possible and remains a constant as device styles and preferences change.
The most significant challenge in all this will be managing complexity. The EAI vendors need to offer more than just a technology platform. Methods and tools for the design of robust, secure Web service based systems will determine whether we drown in a sea of complexity, or deliver applications with superior functionality, flexibility, and performance at a lower cost. This ties in well with the Object Management Group (OMG) Model-Driven Architecture for the design of complex application architectures. Development tools and methodologies are also evolving in parallel, and offerings — such as Arc Styler from Interactive Objects — will surely find a home in a Web service based application environment.
Web services will usher in a renaissance in integration technologies, modeling tools, and methodologies — and all three are needed if our efforts are to be successful. The information technology industry will make sure that the technologies are promoted because that is what it does best. It’s up to us, as individuals, to make sure we have the full arsenal of tools, methods, and skills to make Web services a success in our own organization.
