Introduction to SOA Composite Architecture
Service Component Architecture (SCA) is an Assembly Model Technology which encompasses a wide range of disparate technologies, running on different platforms, using different languages, yet working towards a common goal through environment neutrality. SCA comprises of basic artifact called Composite which internally comprises of one or more Components that contain the business functionality. SCA Artifacts:
- Composite: This is the Unit of Deployment in SCA environment and exposes functionality to the outside world as Service. These services can be accesses remotely via HTTP/HTTPS, SOAP, JCA Adapter, etc.
- Component: Each composite comprises of one or many components. The component holds the business functionality and is the Unit of Orchestration in SCA environment.
- Entry Point: Components offer their functionality as service to other components within same composite or to outside world via Entry Point.
- Reference: Components may depend on services by other components, this dependency is called Reference.
- Wire: The linkage information between services and references is represented by Wires.
SCA represents a set of services that satisfy business functionality and is controlled or orchestrated form a single point of contact. As an example let us consider case of an Insurance Company, where each micro-functionality can be represented as a component viz. Underwriting, Policy Admin Service, Claim, etc. These components are interwoven on an SCA platform to help satisfy the all-encompassing business requirement.
SCA grosses hierarchy componentization to a whole new level. An SCA System can comprise of multiple composites, each composite contains multiple components which are implemented in Java or BPEL or PHP, etc. Thus we can say the nested model supported by SCA is arbitrarily deep and recursive. SCA provides a Policy Framework to look into non-functional requirements which impacts the artifacts deployed on the SCA System throughout its lifecycle, for instance:
- Quality Of Service (QoS)
- Lifecycle Management
Vendors like IBM, Oracle employ SCA models to compose applications that follow Service Oriented Architecture (SOA) principles. These SOA Composites can be created, managed and orchestrated via respective SOA Suite interfaces.