Web Services Adoption
Even though SOAP, WSDL, and UDDI are young standards, I think they're pretty much guaranteed to be at the heart of the next generation of distributed systems. Here's why:
Interoperability |
Any web service can interact with any other web service. Thanks to SOAP, the agonies of converting between CORBA, DCOM, and other protocols are over. And because web services can be written in any programming language, developers do not need to change environments in order to produce or consume web services. |
Ubiquity |
Web services communicate using HTTP and XML. Any device that supports these standards can host and access web services. Pretty soon, they will be present in phones, cars, and even soda machines. Soda supplies getting low? No problem, the wireless-networked soda machine will contact the local supplier's web service and order more. |
Low Barrier to Entry |
The concepts behind web services are easy to understand and toolkits are freely available from many vendors. In addition, some toolkits allow pre-existing components to be published instantly as web services, thus accelerating the early adoption of this technology. |
Industry Support |
All of the major vendors are supporting SOAP and the surrounding web services standards. For example, the Microsoft .NET platform is based on web services, thereby making it easy for components written in Visual Basic to be deployed as web services and consumed by web services written using IBM Visual Age. |
This convergence of factors will enable the same kind of network effect that allowed HTML to quickly become the de facto standard for sharing information over the web. Previous distributed computing technologies such as CORBA and DCOM never had the benefit of unanimous acceptance.
Web Services in Action |
The best thing about web services is the ability to build cool distributed applications for a fraction of the cost of previous approaches. Here are some example uses of web services in action: |
Internet/B2B |
Galileo, a leader in travel reservations, provides access to its computer systems via web services. This allows travel agency computers to make reservations using SOAP from anywhere in the world without the expense of older technologies such as Electronic Data Interchange (EDI). In addition, Galileo is opening its systems to cell phones and other devices that can access web services. |
Internet/B2C |
Microsoft HailStorm allows a consumer to create a personal web service that resides in a secure data center and holds their personal data and files. The consumer maintains control of the access privileges to each piece of data, and can change them at will. By standardizing the XML format of this personal information and allowing access via SOAP, third parties can learn about consumers and provide better service. For example, a hotel could use SOAP to query your personal web service residing in the data center, find out your favorite newspaper, and deliver it to your hotel room without ever bothering you with questions. |
Intranet |
A large manufacturing company registers web services for its global factory control systems in a private UDDI registry. Internal applications find and use these services for accessing and orchestrating the manufacturing process. In addition, some web services are exposed to enable seamless integration with remote third-party systems. |
Local Area Network |
A startup company that creates medical imaging software decides to build its next-generation system using web services. Even though most hospitals will run the system on a LAN, basing the communications on SOAP allows the system to be extended to run between hospital networks or even on the Internet. In addition, it allows third-party platforms such as Microsoft .NET to interface to the system without the need for complex protocol converters or gateways. |
Although the move to open distributed systems holds a lot of promise, there are a host of associated challenges. The next section discusses some of them.