Most of the noise to date about web services has come from vendors like Microsoft and IBM, eager to promote their tools and platforms.
But local developers have been quietly building web services based on the most compelling argument for any technology — its business advantage. Web services are used for communication between devices that may not share a common OS or even a common language.
Domain name registrars are now using web services to update the .nz shared registry system. Online retailers use web services to accept credit card transactions and track courier deliveries. Software vendors, such as Jade, include web services support in their products. The government chooses web services for e-government initiatives. Freight companies use web services for retailers and customers to track the progress of purchases.
Building B2B bonds
For companies needing to connect disparate systems or networks, web services allows developers to build applications that can share data without any knowledge of the other system.
Google, for example, has opened up its search engine and most of its services to queries over web services.
In New Zealand the domain name system, the Shared Registry System, includes a web service that allows over 30 registrars to make updates, queries and additions. It’s a vital component of a system that is designed to provide a 99.9% uptime.
Nick Griffin, registry manager at NZ Registry Services, says the web service has worked well. For security reasons, the service is deployed over secure connections and authentication is checked with public keys.
To keep uptime to a maximum the system is deployed on replicated servers in two locations, Griffin says, and connecting over HTTP has proven to be reliable. “That part of it’s been pretty robust.”
The system may get a stress test later this month when the new geek.nz second-level domain becomes available. “We have been doing some testing with the registrars,” Griffin says. “That’s worked quite well. It’s identified some minor issues that we’re addressing and I think generally it’s handled it very well.”
The SRS web service is deployed with Apache and mod_perl on Debian Linux boxes, but Griffin says a feature of using web services is that registrars can use whatever tools they prefer. “As far as we’re concerned, we’re not interested in what they’re operating,” he says.
At least one registrar is connecting to the SRS with Microsoft tools. Mark Karena, domain administrator at Enlighten Domains, says the company wrote its own software to connect to the SRS web service. “It wasn’t terribly difficult.”
Karena says Enlighten had more work to do than registrars who could use Perl code provided by the registry, but says it was less than work than introducing a Linux server into the Enlighten network.The service has run without major problems, Karena says.
“It’s been really good.”
Easing integration and infrastructure
Web services provide a number of advantages for companies who are considering a new development. They can ease system integration problems and speed delivery time.
Changes can be made quickly and it’s a much simpler matter to extend a web service beyond the company firewall if required.
When Mike Henry Travel Insurance was looking for a way to make policy sales quicker and easier, developers Sandfield Associates recommended a web-based application.Sandfield director Bruce Copeland says the company took a hard look at the current system of issuing travel insurance and decided it was too complex for agents and customers.
“We said, ‘Let’s throw all that out the door and let’s see what we do actually need.' We completely rewrote this thing,” Copeland says.
Instead of manually filling out a separate form, Sandfield recommended a system where most of the policy details could be automatically completed based on a customer’s itinerary. An agent could review the options and push a button to place the sale immediately, Copeland says. “We did a demo and everyone completely fizzed.”
Sandfield used Microsoft .Net tools to built the new site. The data is stored in an SQL Server 2000 database and provided to the web server through a web service.
“This is part of a broader strategy of ours — getting a travel product available through web services,” Copeland says. “It allows us to innovate in our own services much more quickly.” Web services has liberated the underlying engine from the user interface, he says.
Although the system can currently only be accessed through a browser, Copeland says it would be straightforward to publish the web API and make the web service available on the internet.
The new website has simplified sales and provides more timely sales information, according to Mike Henry Travel Insurance. Says retail technology manager, Phil Friend, “It was important for us to move away from the whole scenario where we don’t hear about a policy sale for a couple of weeks.With the service that we now have in place we are able to recognise a policy sale within 24 hours.”
Policies are processed quicker and premium calculations are more accurate, Friend says, and it’s easier for agents to complete the forms. “We have actually had to reanalyse the whole way we do business.”
Copeland stresses that developers should consider their business model before making the decision to use web services. “Anything we do now we could have done before, one way or another,” he says. “You make more money by doing business better, and web services is one component that makes that happen.”
The consumer gets service
RSS is probably the first web service format to receive wide adoption on the desktop. It’s an indication of how web services might be used in the future to provide timely, targeted information to consumers.
Known variously as rich site summary, RTF site summary or really simple syndication, RSS was originally drafted by Netscape in 1999 as a way for the Netscape portal to be updated with news from external sources. RSS feeds usually include the title of an article and a brief description, together with a link to a webpage for further reading.
RSS has prospered with the growth of weblogs, which often provide their content in an RSS feed, and the advent of RSS desktop clients, called aggregators. With desktop aggregators such as NetNewsWire and FeedReader it’s easy to browse a number of news sources without opening a website for each one.
Mark Evans, CTO of Computerworld’s corporate parent IDG, likes RSS because of its simplicity and its wide adoption.
“For some time there were a limited number of RSS feeds and most people kept them fairly quiet so it was kind of difficult to find out where RSS feeds were,” he says. “Now that it’s become a way to syndicate out weblog content it’s become a lot more prevalent.”
Evans wrote the software to generate Computerworld’s RSS feed in early 2001, and expects to use it more in the future, particularly for inhouse projects. “It’s really all you need as a way of syndicating content between sites,” he says. “If you look at websites a lot of what they do is headlines and briefs.”
RSS has some heavyweight backing. Microsoft publishes a feed of its MSDN articles, and Amazon.com recently started using RSS to publish its lists of bestsellers by category. News sources range from the BBC to Slashdot.
Other web services clients include Apple’s Sherlock 3 utility (and its commercial predecessor, Karelia’s Watson) that will search a range of web services and collate their results in an intuitive desktop interface.
Web services — which can be loosely defined as XML-over-HTTP — have been heavily evangelised by vendors such as Microsoft, BEA, IBM and Oracle, and solid implementations have appeared in many open source projects from Apache to Zope.
The XML data is often encoded using a standardised format such as XML-RPC or SOAP, although many web services have their own XML definitions. Almost every modern language includes robust XML tools that allow objects or data to be encoded into XML format and back again, meaning it doesn’t really matter what language is used at each end of a web service.
HTTP has the advantage of broad tools support and being almost ubiquitous in networks: web services data is relayed through networks and firewalls as easily as “normal” web traffic.