SOA Federation Use CasesClick here to view a print-ready version of this pageSOA Federation solutions are sometimes called shared-services solutions, or SOA infrastructure. It is important to note that SOA Infrastructure is very different from SOI (or service-oriented infrastructure). SOI provides common IT infrastructure services (single-sign-on, user self service, etc) in a service oriented way. SOA Infrastructure ensures that services in the context of SOA are relevant, consumable, policy compliant, and aligned with demand from the enterprise. SOA Federation is a subset of a comprehensive SOA Infrastructure solution. To understand the function of an SOA Federation solution in the context of the scenarios described earlier we will examine a few common use-cases:
Publish services for sharing
The SOA Federation solution should facilitate this process by providing both standards (UDDI Publish API) and UI/Wizard based mechanisms service owners can use to publish and virtualize their services into the SOA Federation solution. Of course, this is not enough. The publish operation should typically not actually result in the service being generally available, but rather should result in a request to the SOA Federation system administrators to approve the publication. Once the request is approved, a virtual instance of the service should be visible to potential consumer who can then request access to it via a consumer contract provision process (see below). Optionally, the request approval process could be part of a broader SDLC governance process, and could be subject to compliance policy validation. These capabilities are more normally considered to part of a comprehensive enterprise SOA Governance solution, and should be available as an upgrade to the SOA Federation solution.
Consume Shared Services
The SOA Federation solution should provide a standards-based registry allowing application architects and developers to search and browse for services. Once they find a suitable service (suitability being determined by a wide range of factors from description, interfaces, schemas, service metadata, attached documents, policies, published service levels, and even actual real-time and historic performance and availability data) they should be able to request access to the service with specific service levels. This access request should be subject to a simple negotiation and approval process resulting in a defined, agreed contract between the consumer and the provider.
Consume External Services
The SOA Federation solution allows the architect or developer of the internal application to request the virtualization of an external service by submitting its WSDL. The SOA Federation solution administrator can then approve or reject the request and generate a virtual instance of the service with its own WSDL and with endpoints inside the corporate network. The virtual service can then monitor the service for service levels, authenticate and authorize the requests from the internal application(s) and implement any policies required by the external service.
Platform Tolerance
One of the most important roles of an SOA Federation solution is to use service virtualization to mediate between these impedances to provide a highly tolerant and interoperable environment. Tolerance can be seen as the opposite side of the governance coin, but in reality governance and tolerance go together, the goal should be to ensure that services are adequately governed while remaining tolerant of impedances.
|