SOA
    SOA in Practical Terms  
 
SOA IN PRACTICAL TERMS
 

In practical terms, SOA is about breaking down the IT capability into discrete pieces ("services") that can be reused and combined in different ways to create new and enhanced capabilities and applications. Simple examples of these "services" are activities like:

:: Look up customer address
::

Calculate price quote

:: Process payment
:: Check account balance
:: Update inventory level
When you look at the processes and systems across your business it soon becomes apparent that many of them share common activities and are dependent on common data. However, we often find that for various reasons systems have grown up separately and are doing the same tasks and using the same data independently.

For example, dispatching an order to a customer and sending them a bill both require checking the customers address but the dispatch systems and billing systems may be separate applications that rely on some form of integration to transfer dispatched order information to the billing system. As a consequence both systems may independently maintain customer address information. It is easy to see the duplication of IT resource and the inherent risk of address information being updated in one system and not in another. Not to mention that the companies marketing database or CRM system may contain a third address instance!

By breaking down applications and systems into “services” and using standards and protocols to connect them it becomes easy to:

:: Eliminate activity and data duplication (and improve data integrity)
:: Speed up processes
:: Connect separate processes and activities
:: Create new applications and Adapt existing applications quickly and cheaply