SOA

Description
The term "Service Oriented Architecture" is used to describe a new architecture concept for enterprise size applications. In a service oriented architecture applications and components, even incompatible one, are wrapped up as reuseable service; Services are language and technology neutral. A service oriented architecture has 3 main concepts:
 * Loose coupling: In contrast to traditional monolitic systems like Dynamics AX, services in a SOA are composed dynamically. Services are rearranged if necessary without touching the application code.
 * Dynamic binding: Services are found and bound at runtime. A repository like UDDI is necessary to register and search services.
 * Open Standards: A SOA is built upon open standards like WSDl and SOAP.

The Enterprise Service Bus
Every Service Oriented Architecture is built around a message oriented middleware: The Enterprise Service Bus (ESB). The ESB is responsible for message routing, dynamics optimization, protocoll, type and schema mapping. Like mapping 32 and 64 bit datatypes, transport protocolls mapping, schema transformation from customer order schema to application order schema. It is transparent for all participants.

The Business Value
Main advantage of a service oriented architecture is a better mapping from business processes to IT processes. A SOA runs a process engine that composes services in way that corresponds to the defined process. Typically a business process is defined in BPMN and executed on a BPEL engine. Changing the business process is automatically transformed into a changed service composition. Because a SOA is based on open standars it is easy to include customer and vendor services, financial and government services into the application. Like a primary business process typically starts outside the company and ends outside the company.