First Google, and now Amazon. Both have turned themselves into programmable modules. Google released its Google API in April and recently, Amazon came up with its Web Services API. These are the two most public manifestations of the change that is going on as websites turn themselves into programmable components, using XML and SOAP standards. This is the world of Lego-like software, where it becomes possible to build complex software applications from simpler building blocks which exist across the network.
Web Services (comprising the protocol quartet of XML, SOAP, WSDL and UDDI) have been the talk of the software industry for quite some time. All the leading software players have pinned their hope on Web Services, and it now seems justified.
Web Services takes an old idea (re-usable software components) and gives it a new, contemporary touch (built around standards, and available dynamically over the Internet). Web Services offer a way to connect enterprise applications in real-time, providing a solution to the notoriously difficult twin challenges of Enterprise Application Integration (EAI) and B2BAI (Business-to-Business Application Integration).
A formal definition of Web Services (Patricia Seybold Group):
A Web Service is a URL-addressable software resource that performs functions and provides answers. A Web Service is made by taking a set of software functionality and wrapping it up so that the services it performs are visible and accessible to other software applications. Web Services can request services from other Web Services, and they can expect to receive the results or responses from those requests. Web Services may interoperate in a loosely-coupled manner; they can request services across the Net and wait for a response. A Web Service can be discovered and leveraged by other Web Services, applications, clients, or agents. Web Services may be combined to create new services. And they may be recombined, swapped or substituted, or replaced at runtime.
A recent report on Web Services by Patricia Seybold Group states that companies are putting web services at the heart of their business processes:
Weve discovered that many of the earliest production implementations of Web Services are being used to support business customers and trading partners. So, instead of focusing first on internal application integration, forward-thinking companies are starting from the outside inleading with customer-connectivity.
Take, for example, Cisco Systems product configuration application. Since the mid-90s, Cisco has offered a Web-based configurator on its public Web site. And, for its largest business customers like ATT, SBC, and others, Cisco had to install and maintain a custom-configured version of that application on a server located within each major customers firewall. In early 2001, Cisco re-developed that product configurator as a Web Service. Now Cisco maintains a single Web-based application, which presents itself as a Web Service poking through each major accounts firewall, integrated into that accounts own procurement application. Heres another example: General Motors uses Web Services to make many of its operational applications available to its dealers personnel by integrating key functions, like credit approval, into the dealerships own applications.
Tomorrow: Web Services (continued)