State of Web services

Standards, tools, and, yes, even deployments are gathering steam

IT IS ONLY natural to be skeptical of Web services. Promising cheap, reliable, flexible, and scalable computing -- as well as simple deployment and maintenance and nearly mythical ROI -- Web services would seem to be just the latest shibboleth for the Holy Grail.

In fact, Web services are quite real and they are here today. True, it may be impossible for them to live up to all the hype that's been thrown around. But Web services are likely to be wildly more successful than anything else to come along since the Web debuted in 1994.

Even with Java, application-to-application integration remains far from simple. XML, too, has drawbacks: Although it may well become the lingua franca of simple Web applications, critics argue that when you get past very easy tasks, its verboseness cripples any attempts at producing anything very complex. Besides that, many higher-level XML protocols have yet to be defined, much less finalized. Web services aim to steer a middle road through the complexity of Java and the verboseness of XML.

Hurdles do remain, not the least of which is defining common security and authentication models, as well as understanding how to address valid concerns about user privacy. But real progress is being made, both on the standards front and on the tools needed to help build Web services.

Meanwhile, companies as diverse as General Motors and Nordstrom have already deployed Web services that are up and running and solving business problems. In the case of Nordstrom, Web services are used to feed inventory information from different divisions inside the company to, and to handle online gift card sales. "The first Web services were put in place with just a couple of hours of work," says Barry Morris, CEO of Iona Technologies, the company that worked with the Seattle-based clothing retailer to put the system in place.

New tools and technologies

Other platforms and tools vendors, including Microsoft and the major J2EE (Java 2 Enterprise Edition) players, are all close to delivering real tools to do real work -- tools for building Web services components and tying them together as well as to pre-existing systems.

Microsoft's competitors point out that because most Web services will be built at least initially on servers, J2EE's dominance there will make it the technology of choice. To that end, J2EE 1.4 will be out this year, and Sun just shipped its Java XML Pack -- thus bridging the gap between Java and XML -- while advancing work to get an even more comprehensive set of interfaces that include Java application server interfaces out this summer.

Meanwhile, stiff competition is brewing between Microsoft's Visual Studio .Net and BEA's forthcoming software development environment, code-named Cajun. Visual Studio .Net is set to ship midmonth. Its key strength, in addition to its being the de facto industry standard IDE (integrated development environment), is its multilanguage support for developing Web services that communicate using SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language), and UDDI (Universal Description, Discovery, and Integration). Regardless of whether you prefer to work in Cobol, Fortran, C, C++, C#, VB, or Java (i.e., J#), you can write Web services in Visual Studio .Net.

The beta of Microsoft's new Web services platform, which includes its Common Language Runtime and .Net Framework, was so popular that 6,000 beta testers requested and received licenses to take their Web services -- still running under the beta code -- live, says Eric Rudder, Microsoft's senior vice president for developer and platform evangelism.

Additionally, Microsoft just shipped its Web Services Toolkit for Office XP, making it simple to discover Web services and consume them using Visual Basic for Applications. Using the toolkit, XML Web services can be easily integrated into Office XP, allowing business data to be fed directly into Excel and other applications automatically.

"General Motors had a manual process for front-ending their reports, [but using the Web Services Toolkit, they] now have the latest data in real time," Rudder says. Going forward, look for Microsoft to cash in on work that its research division has been doing during the past 10 years to voice-enable Web services and Windows as well as Office applications. Now spun off into a separate advanced user interface group, headed by legendary voice technology researcher Kai-Fu Lee, the voice interaction research may make good on chairman Gates' promise to bring a more "natural" human interface to Web services, taking advantage of the massive power residing in server-side hardware to off-load processing from both mobile and fixed clients.

Also on the Office front, Microsoft and Groove Networks -- founded by former Microsoft foe Ray Ozzie, who developed Lotus Notes -- have found common ground. Because, as Groove senior product manager Andrew Mahon says, users are most comfortable when they are working in the applications they are familiar with, Groove has written controls for its peer-to-peer groupware application that allow users to co-edit documents across the network inside Word -- while still nominally working inside the Groove client.

"Our customers are enterprises and one thing they want more is functionality. So instead of [support for] just NotePad, how about Word? In [Version] 1.3, we've delivered Word integration," says Mahon regarding the latest release of Groove, which shipped at the end of November. The company is working to expand support to the other Office apps, especially Excel, PowerPoint, and Outlook. "This is [just] the first step toward Office integration," Mahon adds. In return, Windows XP's instant messaging transport provides infrastructure for Groove to ride on, thus saving Groove the expense of maintaining that infrastructure itself.

On the other hand, BEA's forthcoming Cajun development tool, masterminded by former Microsoft XML guru Adam Bosworth -- now vice president of engineering at BEA Systems -- will allow users to design Web services visually, in Java, or both simultaneously. Cajun allows users to create code by either visually designing workflows or by hand coding. This may sound suspiciously like Visual Studio .Net, but it's significantly different. For one thing, in Cajun everything is automatically integrated, tested, and validated. And all of your schemas, etc., are generated behind the scenes. For a language as verbose as XML, this is a real boon. Furthermore, Cajun uses WSDL to automatically define the "contract" between the Web service being designed and the applications with which it will communicate. If you change your code, the WSDL contract won't allow you to accidentally break someone else's app.

"We've built a model for annotating Java for any given method that's going to be public as a Web service, [describing] what the characteristics of that method are in terms of, for example, 'Can it be invoked asynchronously or not?' But it's also used to describe the expected XML contract and the mapping therein into Java or from Java. We can automatically compute the schema of the messages so we can publish the WSDL of the Web service just from the description of the map," Bosworth says. "We set up all the logic for you."

Underneath Cajun's programming niceties, BEA also provides the systems plumbing to provide scalability and reliability on clusters of machines. Cajun will be out in beta by midyear. But Bosworth is no fool when it comes to placing bets. He says that compatibility with .Net is a primary goal.

Microsoft, at least in public, agrees. "I think eventually customers are going to demand that [competing vendors' Web services] work together," Microsoft's Rudder says.

The longer view

Certainly, important questions about the Web services landscape remain unanswered. Will Microsoft's Passport become the single sign-on solution for the Web services world or will that devolve to the Sun-inspired Liberty Alliance project?

Though Microsoft has already garnered 200 million active Passport accounts, few users have signed up for the crucial e-wallet feature. Microsoft has a poor record on security in its Web-based apps, and its "swimming with sharks" business model doesn't inspire cuddly responses from partners, customers, or consumers. And Liberty Alliance has grown beyond being merely a thorn for Sun to stick Microsoft with -- membership now includes GM, Bank of America, American Express, and AOL Time Warner, as well as a veritable who's who of the corporate marketplace.

Microsoft has announced that the next update of Passport will support the Kerberos authentication system, which could be used to achieve interoperability with Liberty Alliance. For its part, however, Liberty Alliance hasn't yet adopted an authentication technology, so in the short term, at least, that hinted-at interoperability remains to be seen. Ultimately, customers will insist that competing authentication systems work together. Additionally, Microsoft has shown a noticeable warming in its rhetoric toward Liberty Alliance in recent weeks.

Disagreements amid Web services constituencies as to how to accomplish key goals also remain. Some experts, including SOAP and XML-RPC co-inventor Dave Winer, believe that WSDL is too complex to be useful in real-world applications and that SOAP tries to accomplish too much. Others feel that the Web services movement will run aground on classic Tower of Babel issues, such as defining the data elements that constitute a purchase order, exclaiming that no two companies will agree on such definitions and thus the movement is doomed before it starts.

Nevertheless, contrary to popular belief, Web services are not a chimera. Nor are they still two years away. "In 12 [months] to 24 months, you're going to get Web services ready or not," says Iona's Morris, because "integration is a major, major P&L for corporations."


Copyright © 2002 IDG Communications, Inc.