BALTIMORE -- Although vendor and standards body politics are holding up the creation of enterprise-grade protocols for service-oriented architecture (SOA), companies should nonetheless begin making the transition
At the recent Gartner Application Integration and Web Services Summit, Gartner vice president Yefim Natis said that the use of SOA as an application architecture is "inevitable," despite the wrangling over standards. SOA is architecture that represents software functionality as discoverable services on a network.
He said that "laggards" who stick to the discredited "monolithic" application architecture will be at a competitive disadvantage as more companies deploy Web services. That's because a monolithic architecture doesn't allow for the reuse of software components.
"Building new applications that do not connect to the existing application portfolio take you in the wrong direction," Natis said. "For the large part, it is a waste of money and effort and time."
SOA for heavy transactions
When Amazon or eBay expose applications to partners on a network, they use SOAP over XML and HTTP. That makes sense because they are using the public Internet for connectivity. But to run a service-oriented system in an enterprise, there is a more transaction-intensive load that public Internet protocols don't handle efficiently.
This standards issue means that, for now, users creating Web services in an SOA will have to rely on proprietary protocols such as IBM's MQSeries. In the near future, infrastructure vendors such as IBM, Microsoft, Sun Microsystems Inc., Oracle Corp. and BEA Systems Inc. will offer users a choice of protocols at the runtime level, so that services can be sent over the wire as HTTP or shared memory.
So why should an organization build an SOA now?
Natis argues that there are a couple of "killer application styles" that will justify a move to SOA. The first is composite applications. In the past, the choice for applications was to buy them or build them. A composite application is a hybrid of those two choices that allows developers to take the useful components out of existing applications -- even legacy ones -- and create a Web service out of it.
Delegating service creation
SOA comes into play because it allows complex pieces of this process to be delegated to many developers to create a single service, and those pieces can be used again to create still more services.
That is a potential use that convinced Ajoy Kadali to learn more about SOA.
The systems manager for health care giant Humana Inc. of Louisville, Ky., said that his company is involved in a major project to integrate applications related to its efforts to make its many legacy systems HIPAA-compliant.
Part of the reason he attended the Gartner summit was to see whether Web services and SOA are a good fit for the project. "We're in the infant stages right now," Kadali said. "We're looking at how we can rearchitecture in that direction."
Another "killer application style" is multi-channel computing, where a single application can be harnessed to create multiple Web services to target different users. For example, a customer-facing application can be tailored to access data that serves call center operators, self-serving end users and business-decision makers.
To create such a Web service, an SOA-based interface is needed to expose the functionality of an application to different users on a consistent basis. "Multi-channel applications really require service-oriented architecture," Natis said.
The durability of WSDL
Among the open standards that are key to Web services and SOA -- SOAP (wire protocol), WSDL (interface definition) and UDDI (service registry) -- WSDL will be the one that will stand the test of time, Natis said.
"The definition of the interface is fundamental to the definition of the SOA," Natis said. "This is the place where Web services and service-oriented architecture meet." And WSDL is the linkage between those two, he said.
While SOA is a useful architecture for composite and multi-channel applications, it's not always the right architecture choice, Natis said. For example, he said, it's not particularly useful for things such as process-monitoring applications or post-transaction batch processing.
FOR MORE INFORMATION:
Resource: SOA/SOI Learning Guide
Featured Topic: SOA Crash Course
Interview: Weaving SOAs into a Web services fabric