Service-oriented architecture

The educational technology and digital learning wiki
Jump to navigation Jump to search

Draft

Definitions

SOA is an architectural style whose goal is to achieve loose coupling among interacting software agents. A service is a unit of work done by a service provider to achieve desired end results for a service consumer. Both provider and consumer are roles played by software agents on behalf of their owners. ([Hao He, retrieved 10:14, 24 April 2007 (MEST)).

Service orientation is a means for integrating across diverse systems. Each IT resource, whether an application, system, or trading partner, can be accessed as a service. These capabilities are available through interfaces; Service orientation uses standard protocols and conventional interfaces - usually Web services - to facilitate access to business logic and information among diverse services. Specifically, SOA allows the underlying service capabilities and interfaces to be composed into processes. Each process is itself a service, one that now offers up a new, aggregated capability. Because each new process is exposed through a standardized interface, the underlying implementation of the individual service providers is free to change without impacting how the service is consumed. (Microsoft, retrieved 10:14, 24 April 2007 (MEST))

Service-oriented architecture (SOA) is an evolution of distributed computing based on the request/reply design paradigm for synchronous and asynchronous applications [...] What's key to these services is their loosely coupled nature; i.e., the service interface is independent of the implementation. ([1], retrieved 10:14, 24 April 2007 (MEST))

SOA looks like object-oriented programming principles applied to services. However it's more than encapsulation and interfaces...

Architecture

Elements of a service-oriented architecture

Elements of a Service Oriented Architecture according to Dirk Krafzig, Karl Banke, and Dirk Slama. Enterprise SOA. Prentice Hall, 2005

Links

Introductions / Tutorials