If you have recently attended a keynote of Microsoft's Gates, Sun's McNealy or any of a host of other industry leaders, no doubt you will have been introduced to the concept of "Web services" - reusable pieces of application logic, accessible using standard Internet protocols.
These applications perform various functions, from simple user information requests such as stock market quotes or travel reservations, to complicated business transactions.
Although the definition of Web services fluctuates with each vendor, they all meet at the level of "software as a service".
For the software developer, Web services may become one of the most fundamental shifts since the birth of HTML. Rather than developing whole applications for a specific context, developers will create small self-describing applications able to be distributed across the network, accessed by multiple parties and used to perform a variety of functions. This will create new issues regarding IP, the interoperability between applications, and more importantly, revenue models for developing applications.
According to the Web services vision, users will access more sophisticated, transactional services on the Internet, and may be prepared to pay small charges or a subscription fee for this access.
Saving time and effort
To use an oft-quoted example, "Let's organise a holiday". You can book an airline ticket, accommodation, car hire and travel insurance online, but this would involve visiting and entering customer preferences in at least three or four Web sites (the airline, the hotel, the car hire company and the insurer). The process is time-consuming, often with the same data entered at each site.
Under the Web services model, you only need to book at one site, which in turn can transact in real-time with the other relevant sites. For example, you visit a travel agent site and enter your preferences; the site then accesses the search engines and booking systems of all parties involved, providing you with all the services simultaneously on one Web site. Put simply, Web sites and the various applications deployed on them will be able to interact.
Microsoft's product manager for Visual Studio.Net, Dave Mendlen, compares this latest paradigm shift to the move from DOS to Windows. "DOS was one application at a time, with no sharing of data between applications. With Windows, we got multiple applications and cut-and-paste, drag-and-drop functionality," he says. "With the Web, we generally look at data from one page at a time, and there are few reliable services. But our latest vision is an integrated Web experience, with interoperability between applications, platforms and businesses."
The standards requirement
All this can only be achieved if all parties participating in a transaction adhere to standard protocols. Subsequently, software vendors are promoting XML and Java as fundamental to turning such vision into reality. Similar emphasis is placed on the development of the Universal Description, Discovery and Integration (UDDI) standard, supported by more than 80 vendors, which enables the various parties to smooth out any differences in how they communicate, transact and conduct business.
Software vendors are encouraging such standards because building a component model for the Web will require new tools and infrastructure. Developer partners will acquire these tools and deploy services, while developing a variety of models for gaining revenues.
Most of the major vendors are taking a support role in the process. Vendors such as Sun Microsystems, Oracle and Hewlett-Packard are focused on selling the necessary Web application servers and middleware products needed for development and deployment of the applications. In the US, many of the Web services initiatives are being led by a new breed of software vendor, such as WebGain and Bowstreet, specialising in component-driven development.
"We are in the business of enabling Web services, not delivering them," says Duncan Bennet, managing director at iPlanet E-Commerce Solutions Australia, a joint venture between Netscape and Sun Microsystems. "We are not out to compete with our developer partners." User pays?
While Microsoft claims the main drive behind its Web services strategy is the sale of its developer tools and Web servers, the vendor has also decided to get the ball rolling by deploying a set of services itself. Bill Gates recently unveiled the company's "Hailstorm" strategy, a suite of user services (including messaging and calendaring), all hosted on the network and accessible via any Internet-enabled device.
These initial services are based on Microsoft's current free Internet services, its Passport authentication service and Hotmail e-mail service. Microsoft is, in essence, moving towards a subscription model for more sophisticated versions of services it already provides free of charge.
Just how willing users may be to pay for Web services is a contentious issue. Most argue that before users will pay, the level of service sophistication will have to improve well beyond the scope of the simple services that Internet users are already used to.
"It's up to us to show the value of the services," says Nick Abbott, developer product manager at Microsoft Australia. "If it saves time and money, people will pay for it. If Hotmail becomes more sophisticated and can be accessed by any device, I can see people being prepared to pay for it."
Bennet is similarly optimistic. "The question people are asking is: Do I want to pay for this service if yesterday it cost me nothing?' I know, personally, that I am prepared to pay if it saves me time and it is easy to use."
Microsoft's Redmond executives have admitted this push towards subscription-based services on the Web is a result of the failure of current dot-com business strategies, which attempted to gain revenues through either online advertising or product sales - both of which have proved to be problematic. Whether users are prepared to pay for services, and whether Microsoft will compete with its own developer partners to provide them, both remain to be seen.
Bennet believes the vision of Web services has created an ideal opportunity for developer partners, systems integrators and other VARs to gain new and diverse sources of revenue. Such development work, according to Bennet, is likely to be outsourced to the channel rather than kept within internal organisational resources. The possibility of subscription-based or transactional-based revenues also represents a new business model for developers whose revenues normally dry up once projects are completed.
Abbott uses the example of an existing Australian-based developer, which recently created an automatic telephone number and post code validation service. Various enterprises and dot-coms could use this piece of logic to automatically approve or identify users of a particular service. "Developers should be trying to identify unique services that might be candidates for a Web service," says Abbott.
Similarly, IBM software's Jack Verdins says integration partners that specialise in middleware would see opportunities from those businesses that recognise the potential for using back-end data as a service on the Web. Verdins says IBM expects channel partners to profit from the tools and infrastructure they resell to businesses which want to Web-enable back-end data and begin providing Web services.
"[But] I can't throw the tools out there and hope somebody will use them," he says. "From my angle, it's important to have channel partners out there doing the work."
Bennet suggests that developers should also adhere to the standards that make application logic applicable to multiple devices, such as PDAs and data-enabled phones. Being able to access a service from any device, he says, is key to providing the kind of sophistication for which users and other businesses are prepared to pay.So long, shrink-wrapped?
The concept of Web services may lead one to think that the need to purchase shrink-wrapped software is doomed. But before we start the wake, let's not forget other initiatives that were expected to wipe out traditional software distribution.
The "software as a service" model is by no means a concept that surfaced this month. It is the basis for the biggest buzzword of the last few years, the Application Service Provider (ASP) model. The difference between the two is that ASP involves the hosting and delivery of entire applications over a network, while Web services suggests the hosting and delivery of smaller pieces of application logic that can be customised for a variety of uses.
For several years, channel doomsayers have suggested the ASP model will make traditional means of software distribution redundant, just as e-tailers would kill off retailers. Time has proved quite the opposite. While ASP is far from a failed model, it is a model that has not taken off to anywhere near the extent that the most conservative of analysts estimated.
Microsoft's Nick Abbott believes software vendors will continue to market shrink-wrapped software well into the future, but will offer Web services as a value-add to existing licensees of the products. "Web Services are about delivering components of applications, rather than whole applications," he says. "There is still an important place for shrink-wrapped software."