Reusable Integration With an SOA

Many Web services are merely APIs wrapped up in some Web interfaces; they can make only single-point connections to legacy systems. They are

but a shadow compared with the larger vision embodied in a service-oriented architecture (SOA), which is able to establish reusable components and functionality by using XML [see QuickStudy, QuickLink 44708].

With an SOA, you can look into an XML-based request, open messages on the fly in runtime and check details. For example, if you've got an order entry system that's dumping messages into an SAP back-end system, you can pay attention to discrete parts of the messages to accommodate different business partners. Some of the messages' contents might be routed to specific servers, or orders above a certain dollar amount might be flagged for special handling.

It's this ability to address the details, in combination with an SOA's reusable components, that has drawn the attention of IT experts at Seattle-based health care provider Providence Health System. Recently, Providence was faced with the task of hooking together all of its different systems holding patient records, billing information and insurance data. And of course, each detailed record would have to be sheltered so that the wrong people couldn't gain access to personal information.

But Mike Reagin, Providence's director of R&D, has lots of legacy applications to support and integrate. One of his biggest challenges has been dealing with traditional enterprise application integration suppliers. They've typically called the shots regarding how and when EAI-based transactions would occur, and Reagin has needed developers familiar with the nuts and bolts of the legacy systems.

"The situation made it difficult to build a patient portal," says Reagin. Now Providence is using an SOA approach for application integration from Cupertino, Calif.-based Infravio Inc. The development platform uses Web services and a library created by developers using Java. The developer creates only what's needed at a particular time rather than trying to connect an entire system.

"The first time we need access to some type of information, we create a call that we can then reuse," says Reagin. Providence is able to manage information in discrete units, so a patient record requested by a doctor is, from an IT perspective, the same as information about diabetes that's pushed to someone whose patient record notes his condition.

This approach is of real benefit. It means that lab results can contain insurance information that should be viewable to a billing department while withholding health data that should be available only to the doctor or another approved health worker.

With the SOA approach, Providence has been able to build components designed to fetch just the information that's needed by a particular person, rather than stapling together legacy systems that remain inflexible.

Pimm Fox is a freelance writer in Santa Barbara, Calif. Contact him at

Copyright © 2004 IDG Communications, Inc.

Shop Tech Products at Amazon