For an industry that prides itself on innovation, IT has a poor track record for solving the problem of data integration. We are better off now than we were in the early 1980s, when hardware and operating systems were designed not to talk to rival suppliers' systems, but connecting applications is still far from intuitive. Web services is the latest computing model which is supposed to change all of that.
The term web services, for some users, still means nothing more than providing online applications, but this misses the point. It is a distinct technology concept built using technology standards that were ratified over the last few years. Ignoring it now could be seriously expensive in the future.
Web services need not operate over the World Wide Web at all. Whereas the web focuses on providing readable information and services to customers and employees alike via a browser, web services aim to make this data available to other applications, in a standard format. This may be done over the web, or via other mechanisms such as e-mail.
XML was designed to solve the problem of software applications not understanding the information that humans can read on the web. Developed as a way of building languages to represent any type of information, XML is used to create languages to exchange application-specific information, such as shipping data or legal documents.
A web service is an XML-based data feed produced by a software application that can be read by other applications. For example, a bank could provide trading system data as a web service for investors using desktop applications, or a distribution company could expose its stock database as a web service so that a retailer's applications could read and analyse the data directly, rather than an employee re-keying that information into the retail systems.
This focus on data exchange has defined the initial goal of web services: integration. "The original argument was to make systems work better together," says Rob Hailstone, software infrastructure research director at market research firm IDC. "It was driven by the recognition that to be a supplier in tomorrow's market you had to make your systems work with your competitors' systems."
Before web services appeared, enterprise application integration was supposed to solve the data integration problem, but the systems were expensive. Some systems were designed in a hub-and-spoke architecture under which legacy applications would feed their data into a central system using adapters to translate it into formats suitable for other applications.
Laurent Seraphin, product director at software tools developer Borland, says web services are geared to a more point-to-point integration model, in which XML-enabled applications talk to each other directly using standard data protocols. Theoretically, this would have the advantage of making applications more scalable.
The promise of web services, says Hailstone, is that they create the opportunity for cross-company application integration, merging supply chains and making it possible for organisations to work together more flexibly.
Nevertheless, there are some potential problems with web services that should not be underestimated. First, says Alan Wilson, a research analyst at analyst firm Butler Group, cross-company integration is not yet possible in many cases because users have not established the necessary processes. "There have been lots of hiccups. People don't yet know what they are doing internally," he says.
Second, the fundamental web services protocols that have been established are inadequate to support robust business transactions, says Hailstone. "When you get into practical implementations you get all the security and digital rights issues and the other extra things that people need to do, such as process management," he says.
The standards governing this part of the web services story are still being ratified in many cases, and user organisations will remain cautious until these protocols have been nailed down. But despite their immaturity, web services should not be ignored. Apart from the benefits already addressed, you could expose one of your core competences and sell it to business customers or consumers.
Eric Austvold, an analyst at US-based analysis firm AMR Research, advises organisations to test web services technology early but avoid promising unrealistic business results while web services remain relatively unproven. Initial use of the technologies should be in point-to-point integration of applications in a secured private network, he says.
Many users may prefer to stick with existing legacy integration products that work effectively. However, when planning integration with internal and external applications in the future, this technology will become increasingly important. Building a strategy to evaluate it now will prepare you for its possible adoption when it matures.
The terms explained
eXtensible Markup Language
XML, defined by the World Wide Web Consortium, was an offshoot of the more complex SGML standard. It is a meta-language designed to create other languages that can describe business-specific data
Simple Object Access Protocol
Soap is an XML-based language designed to encode web service requests. It can be transported via http (the transport protocol used by web applications) or by other mechanisms such as e-mail
Because web services use standard protocols, they can be loosely coupled, so in theory they can be strung together in an ad-hoc way without extra coding taking place. Such collections of web services, marshalled together in a flexible way to create applications, are termed SOAs
Universal Description, Discovery and Integration
UDDI is a directory standard that lets suppliers list their details and the web services that they offer. These directories can be used internally and on the internet to allow users to browse for web services that fulfil their needs
Web Services Description Language
WSDL is an XML data format designed to describe the details about a web service and what it is capable of. It is intended for use with a UDDI directory
Web Services Interoperability
WS-I is a consortium of companies which creates standard guidelines for the use of web services. It produces best-practice scenarios for using web services and testing tools to ensure that they work together effectively.