IBM has introduced a service-oriented architecture (SOA) programming model for implementing services and assembling them into solutions. SOA lets you build, deploy, integrate, and manage these services independent of the applications and the computing platforms on which they are running.
Service-component architecture (SCA) and service data objects (SDO) provide the underpinnings for this SOA programming model. SCA defines the model for describing service components and offers a way to assemble them into solutions; SDO defines a model for the information exchanged between these components. SCA and SDO are based on Web services standards such as WSDL, XML Schema Definition Language (XSD) and Web Services Policy Framework (WS-Policy), and augment these interoperability standards to define a component model for SOA.
Service Component Architecture separates business logic from implementation, so that you can focus on assembling an integrated application without knowing implementation details. The implementation of services is contained in SCA components.
Service Component Architecture enables you to group components within an SCA module, and specify which services are exposed by the module to outside requesters. The benefit is that a change to services within a module do not impact any other modules provided that the interface of the changed module stays the same.
The SOA programming model is described in the IBM developerWorks article, "Introduction to the IBM SOA programming model" available at http://ibm.com/developerworks/webservices/library/ws-soa-progmodel/.
In addition to using the SOA programming model to develop new services, you can use the service-oriented architecture and WebSphere ESB to provide existing applications as services, with little or no change to those applications.