Tuesday, June 14, 2005

Web services ready to rock mobile apps

Note comment about knocking up a chat client in 5 minutes...
 

This story appeared on Network World at
http://www.networkworld.com/news/2005/061305-web-services.html

Web services ready to rock mobile apps

By John Cox, Network World, 06/13/05

The stage has been set for Web services to start playing a vital role in mobile applications for enterprise networks.

Web service development tools are growing more sophisticated as wireless networks become more pervasive and powerful.

This combination will make it easier for enterprise network groups to tie together mobile clients with back-end applications and data.

The potential was illustrated at last week's annual TechEd conference in Orlando, where Microsoft announced the latest pre-beta release of Indigo, the next Windows communications framework for Web services. During a session devoted to Indigo, Microsoft's Ari Bixhorn, lead product manager for Web services, created a device-based chat application with Indigo in about 5 minutes. In another demonstration, an Indigo-based application, working with Microsoft's Media Center software, sent an alert to Bixhorn's PocketPC smartphone whenever his son turned the TV set to "The Jerry Springer Show."

Some pioneers aren't waiting for Indigo (the beta release is due this summer) to launch mobile applications that use Web services. But it means building from scratch many of the services Indigo will provide as callable class libraries, such as reliable messaging, transaction features and security

"You can do [a service-oriented architecture] without Indigo. And we did," says Furrukh Khan, associate professor at Ohio State University's college of engineering in Columbus. He led a team in creating a Web services architecture (see graphic), using Microsoft's earlier Web Services Enhancements (WSE) 2.0 software, for operating rooms at the OSU Medical Center.

He wouldn't do it again.

"You have a federation of Web services, that need security, reliable messaging, transactions and a lot of things besides simple HTTP," he says. "Almost all this was missing from WSE 2.0, which focused mainly on security. Indigo combines all this functionality into one unified model for SOA."

Khan's team is at work now replacing large chunks of custom written code with Indigo's class libraries.

As handheld devices gain still more powerful processors and more memory, and as wireless data nets offer greater throughput and reliability, Web services become increasingly attractive for enterprise users.

"We've not seen a lot of Web services in the field because of the cost and difficulty of getting persistent [cellular data] connections," says Douglas Giuliana, director of product development for Eleven Technology, a Cambridge, Mass., software company specializing in mobile applications for the consumer packaged goods industry. "But we're seeing interest growing as the cost of [General Packet Radio Service] offerings drop. Our customers have been talking with us about this."

"In the handheld device space, Web services enable customers to easily access pertinent information from wherever they are," Microsoft's Bixhorn says. "A delivery guy with a PocketPC application on a handheld 'calls' our MapPoint public Web service and gets directions to his next location."

With Web services, mobile devices no longer become a special integration problem.

"If I build a Web service on the backend, I don't have to build two versions of it, one for 'normal' clients and one for mobile clients," says James White, author of Java2 Micro Edition, Java in Small Things. Formerly with discount retailer Target, he's now an instructor for Intertech Training in Eagan, Minn.

"We were constantly going to the server guys and saying, 'How can we get these little clients to work with the servers?' Web services let the server guys implement business functions as they see fit. Then, the clients can deal with those functions as they see fit," he says.

That kind of simplicity can be seen at OSU Medical Center. The focus of the first Web services system, OR-Eye, was to pull patients' vital signs data from a proprietary network of monitoring equipment, store it and allow mobile and desktop clients to access it through a client application (written in Macromedia's interactive Flash FX2004) that calls the Web service directly, instead of going through an applications server or other middleware. The vital signs are displayed graphically in the Flash player and in numerical form. The mobile clients now can access the data from anywhere on the wireless LAN throughout the hospital.

Khan's team is exploiting this service with two new services, in various stages of deployment. OR-Med will let an anesthesiologist in the operating room use a client application to enter a drug name and intended dose for a given patient. A group of Web services will check for drug interactions, patient allergies and potential complications, then report the results back to the client. After the drug is administered, OR-Med can tap into the vital signs Web service and track a timeline of when the drug was given and the patient's reactions.

OR-Track will use radio frequency identification tags on a patient's wrist, and RFID readers connected to the hospital network to track patients. When a patient moves to a different location, from operating room to recovery, for example, the Web service will pop up the relevant forms to track each stage and each action.

This kind of virtuous circle of Web services interactions is one of its defining features and one of its strongest attractions. "The beauty of it is, once you've built a Web service, you have multiple applications that could use it," says Jim Hilt, manager of SOA at IBM Global Services in Armonk, N.Y. A trucking company might pull GPS data via a Web service from its cellular data carrier to feed location information to drivers. But the company's route planners and warehouse operators might use the same data, accessed easily via Web services protocols, in their own applications, he says.

Khan acknowledges that Web services can be very "chatty," taking up time and bandwidth, both of which are critical over wireless connections.

"It's really a matter of design," he says. "You can make them chatty. But you can [also] make them less chatty and more 'chunky.'" Chatty refers to how often the Web services talk to each other; chunky refers to the amount of data sent back and forth.

"You need to talk to a Web service very fast, get what you need quickly or give it what you have, and then release it quickly," Khan says. "You don't want to wait for it to do its work."

As mobile devices become ever more capable, they will not only "consume" Web services, but host or "expose" them, predicts Juval Lowry, principal with iDesign, a San Jose, Calif., consultant in software architecture and an expert in Microsoft .Net. "We'll be able to do things on those devices, such as peer-to-peer execution and collaboration."

Intertech's James White cautions users to be realistic. "We're finding that Web services are not rocket science," he says. "But a lot of [software] infrastructure is needed. For example, how do you register Web services in an enterprise registry? Who has access to that? Who's the real owner of the service?"

Finally, Web services standards still are "in pretty young and raw form," White says. "Things like naming conventions, registry standards and so on are all still emerging."

Exploiting Web Services

All contents copyright 1995-2005 Network World, Inc. http://www.networkworld.com

No comments: