You may not have heard of it yet, because its still in its formative stages, but Id like to introduce you to an emerging technology that I think is going to be important for doing e- business in the future. The technology Im referring to is Web services. What are Web services? Walter Goodwin gives the rundown on the technical details of Web services in Web Services and SOAP on page 99. Both IBM and Microsoft are moving fast on Web services.
To understand Web services, think about it as remote methods or procedures that you can call and interact with. Big deal, right? There have been many technologies that allow you to interact with programs and objects remotely. But Web services have some unique aspects that make them the next logical step in e-business integration. Chief among these aspects is that they are platform-independent, they can travel over most networks and through most firewalls (because theyre Web-based), and they are based upon emerging open standards, so they are not vendor-specific.
Web services live on top of technologies such as XML, Simple Object Access Protocol (SOAP), and Universal Description, Discovery, and Integration (UDDI). (For more on UDDI, see UDDI: Yellow Pages the Web Way on page 60.) Dont get lost in the alphabet soup of the acronyms of emerging standards. Instead, think about Web services from an application perspective. Conceptually, Web services are very similar to Component Object Model (COM) objects (ActiveX Data Object [ADO], for example) or JavaBeans, only they are cross-platform callable, they require nothing to be installed on the client machine, and they can be easily invoked on a remote machine from virtually any client
(e.g., PC, server, or PDA). So what kind of things will people create or use with these services? A few simple examples that pop to mind immediately are secure credit card verification, sales tax calculation, order and inventory inquiry, and other such generic functions. Of course, it wont stop there.
The more functionality you publish and consume as Web services, both within your organization and to the outside world, the more your applications become scripts that tie these services together. Really, component-based programming is a form of scripting in which you write code to tie together objects that are really code that you use but dont modify directly.
Jump up a level, and youre tying together business entities. For example, to implement the flow of a purchase through your business, you might take a purchase order record, run it through the approval process, then put it through the ordering
processeventually ending at the receiving process, if all goes well. Those services could be internally developed or hosted externally. Web services are a great common ground to use for integration and meaningful exchange of information.
IBM is rapidly adding Web service capabilities to its development toolkits. For starters, the company has some interesting technology previews on its alphaWorks site (www.alphaworks.ibm.com), including the XML and the Web Services Development Environment (WSDE) and the Web Services Toolkit. WSDE, slated to be a real product in the spring, offers wizards for quickly wrappering your servlets and beans as services by producing a SOAP interface and a WSDL description. IBM is also working on an integrated toolset for design, debugging, and deployment of applications that include Web services. At this time, IBM has said that it doesnt plan to be much of a Web service provider and is instead counting on third parties to use its tools to do so.
Microsoft is making Web services a fundamental aspect of its Microsoft .NET platform, and it has integrated Web services into the Visual Studio.NET development environment. Visual Studio.NET lets you integrate these services into your applications as easily as adding a reference to your Visual Basic project. In addition to providing the tools for developers, Microsoft will be offering its own Web services. The companys Passport system (www.passport.com) is an example, and more are coming. Keep in mind the services that Microsoft owns: Hotmail, Expedia, bCentral, as well as Great Plains Software (a major Windows ERP vendor it purchased in December). All could be Web services in some form.
Web services are a natural extension of existing technologies using standard protocols, and once all the tools are in place and solid, its my opinion that their use will become widespread. You can bet that Midrange Computing will keep you up to speed.