Wednesday, June 26, 2013

SOA Principles

To achieve the above benefits, SOA implementations must incorporate the essential principles/disciplines:
• Loose coupling: This must be incorporated between services thereby reducing the level of dependency between consumers and providers.
• Discoverability: Services should be independently described and be published into services registries (OSR-Oracle Service Registry) and repositories(Oracle enterprise repository-OER) so as to facilitate design-time searches and runtime look-ups. This can be defined in Governance model of the enterprise
 Location transparency: This refers to the ability of a service consumer to be able to invoke a service regardless of its actual location in the network and that the consumer has the right to access the service. Location transparency is often linked to service virtualization concept used in OSB, where the consumer simply calls a logical service and Oracle Service Bus (OSB) maps this logical service call to a physical service.
• Autonomy: Services under the service contract that they make with their resource providers and contracts that they offer to their consumers, need to be self-contained and must manage their own dependencies on other services or contributing applications upon execution.
• State management: Services need to handle their own state management per their contract.
• Reusability: A service should package information and business logic such that, where and when applicable, multiple consumers should be able to use it as a shared resource either directly or via composition.
• Composability: Services should be easily composable from other services and technical functionalities, and should be able to participate easily in other higher-level functionalities, such as a composite service or a composite business application

No comments:

Post a Comment