Become a member

Sunday, June 28, 2009

SOA

SOA is a collection of well-defined services, where each individual service can be modified independently of other services to help respond to the ever-evolving market conditions of a business. The key difference is SOA provides a message-based approach based on open standards. As a result of being based on open standards and using messages that are generic and not representative of any specific platform and programming language, you can achieve a high degree of loose coupling and interoperability across platforms and technologies. The SOA paradigm departs significantly from the OO model, where you are encouraged to encapsulate data. Therefore, an object will hold and protect the data to facilitate a business need. The enterprise will consist of multiple objects that are specialized to handle “specific scenarios” with the data protected within the objects. SOA instructs you to utilize loosely coupled services. Context Object is An object used to manage the current execution context.

A component is a piece of compiled code that can be assembled with other components to build applications.

A service is implemented by one or more components and is a higher-level aggregation than a component. Component reuse seems to work well in homogeneous environments; service orientation fills the gap by establishing reuse in heterogeneous environments by aggregating one or more components into a service and making them accessible through messages using open standards.

SOA also assists in promoting reuse in the enterprise. Services can provide a significant benefit because you can achieve reuse at many levels of abstraction compared to the traditional methods (in other words, object orientation provide only objects as the primary reuse mechanism). SOA can offer reuse at multiple levels, including code, service, and/or functionality. Tenet 1: Boundaries Are Explicit

Tenet 2: Services Are Autonomous Tenet 3: Services Share the Schema and Contract, Not the Class Tenet 4: Service Compatibility Is Based on Policy It is not practical to build monolithic systems in current multinational enterprises. These systems often take many years to implement and usually address a narrow set of objectives. Today a business needs to be agile and adapt processes quickly, and SOA is a design principle that can help address this business need.

No comments: