Friday, September 5, 2008

why we need SCA?

WSDL has been a great step forward in terms of increasing connectivity and interoperability between applications. However, WSDL only focuses only on the interface of a service, and does not capture external service dependencies or policy configurations.

Service Component Architecture (SCA) provides a programming model for building applications and systems based on SOA. It is based on the idea that business function is provided as a series of services, which are assembled together to create solutions that serve a particular business need. SCA provides a model both for the creation and composition of services including the reuse of existing application function within SCA compositions. SCA goes a step beyond WSDL by defining both a service component and assembly model. A service component allows service developers to define not only the interface to a service but also the dependencies of a service on other services plus the policies associated with those interactions such as transaction, security, reliable delivery etc. and potential configuration knobs that a service might expose.

SCA does not interfere with how a service component is implemented. You can implement a service component in Java, BPEL, a rule language, etc. The SCA module allows a developer to assemble a set of service components, resolve reference dependencies and apply policies. This is a great step forward because current SOA platforms force developers to capture these references in either proprietary deployment descriptors or even worse hard code them into the service implementation itself.

SCA defines a framework that makes it easier for developers to implement Java service components including: annotation for converting a POJO into a service and annotation for asynchronous/session management. Oracle’s next generation.SOA infrastructure is based on SCA and will offer sophisticated means to compose applications, processes and assemblies, into transparent and easy to monitor solutions.

This blog is an excerpt from a White paper by Dave Berry
To know more about the components that make up SCA refer the article on SCA -Introducing_SCA

No comments: