A group of tech industry heavyweights today unveiled a new programming model for service-oriented architecture
BEA Systems Inc., IBM, Iona Technologies Inc., Oracle Corp., SAP AG, Sybase Inc. and Xcalia S.A. have blended Service Component Architecture (SCA) -- which creates neutral interfaces, implementations and references that can be bound to different technology implementations -- and Service Data Objects (SDO) -- which accesses data residing in multiple locations and formats -- into what is being called the SOA Programming Model.
While the new acronyms might be a little scary for a marketplace already supersaturated with terminology, it adds up to a set of tools designed to build Web services that conform to a predetermined architectural pattern.
"Service infrastructure is a new category of software required for widespread adoption of SOA," said Edward Cobb, vice president for architecture and standards at BEA. "It needs a rich ecosystem of technologies, standards, processes and partnerships to make it a reality. These new specifications, the first of their kind, represent significant progress in helping the industry achieve that goal."
In fact Cobb characterized confusion over how to build out an SOA as a barrier to entry for potential users. He noted that while plenty of standards exist that enable developers to build services there aren't standards for how to build them.
"The programming necessary to utilize those service creation abilities has been very primitive so far," he said.
The SOA Programming Model will be available royalty free and includes:
- A Java language specification for implementing SCA service components.
- A C++ language specification for implementing SCA service components.
- A Java SDO specification describing a common rendering methodology for data exchange between clients and services.
- A C++ SDO specification describing a common rendering methodology for data exchange between clients and services.
According to Karla Norsworthy, IBM's vice president for software standards, JDO should be submitted to a standards body within six months while SCA may take a year or more to being its official standards life. She added that all Java elements will be put through the Java Community Process.
While it does represent a new thing to learn as part of the massive corporate culture shift required to build an SOA, the programming model's proponents insist it is designed to make life easier for those developing and composing the actual business services.
SDO uses a single application programming interface to access multiple data sources, such as relational databases, XML pages and EJB components. It follows a similar design pattern to the Eclipse integrated development environment framework, creating an integration point into which disparate applications can be plugged so they work in concert with each other.
SCA offers up a top-down development process. First, an SCA module is created, then business objects follow. After that service interfaces are defined, components are generated and an implementation is provided.
ZapThink LLC analyst Ron Schmelzer believes the details of how the model works are less important than who's behind it and what its implications are.
"These companies are getting together to define common services and a common architecture," he said. "Back in 2004 you might have been right to be a little skeptical about SOA, but these are some of the biggest vendors in the industry coming together to put this stake in the ground. We're now well past the hype days."
In fact, Schmelzer argued that IT shops that are slow to adopt to SOA "might have the rug pulled out from under them by their own vendors, which are all moving quickly in this direction."
Norsworthy added that runtime tools would be added to the programming model in the future and that the Eclipse Foundation plans to start up an SCA tools project.