Service-oriented architectures

Service-oriented architectures (SOA) offer the promise of business agility and resilience through reuse, loose coupling, flexibility, interoperability, integration and governance. These goals are realized by separating service descriptions from their implementations, and using this descriptive metadata throughout the service lifecycle.

Standards-based service metadata artifacts, such as WSDL, XML schema definition (XSD), WS-Policy, or SCA documents, capture the technical details of what a service can do, how it can be invoked, or what it expects other services to do.

Semantic annotations and other metadata can be associated with these artifacts to offer insight to potential users of the service on how and when it can be used, and what purposes it serves.

This service metadata is used by analysts, architects, integrators, and developers during the model and assemble phases of the SOA lifecycle. See the Related link for details. The service metadata can be used to perform the following tasks:
  • Locate services and policies to use or to reuse,
  • Evaluate the effect of changes to service configurations.
The service metadata is used by deployers and administrators in the deployment phase of the SOA lifecycle, and by the SOA Foundation run times for dynamic selection of service endpoints and configuration of the SOA environment. The service metadata is also used in the manage phase of the lifecycle to support policy enforcement required by Service Level Agreements (SLAs), and to present a more comprehensive view of the managed service environment.

Service metadata artifacts exist throughout an enterprise in a variety of heterogeneous development and runtime stores. These often provide information about a service tailored toward use cases in a particular phase of the SOA lifecycle. Examples include asset management systems in the development space or configuration management systems in the runtime space.