SOA (Service-oriented architecture) è un approccio per definire le architetture di integrazione basate sul concetto di un servizio. I servizi forniscono funzioni aziendali e dell'infrastruttura e costituiscono gli elementi di base di un'azienda.
Gli utenti richiedono le funzioni dai servizi aziendali, in un linguaggio familiare e senza che sia necessario sapere come e dove vengono forniti questi servizi. I servizi aziendali possono richiedere anche funzioni da altri servizi aziendali. [Ulteriori informazioni da p27]
I servizi vengono forniti da fornitori di servizi.
I richiedenti del servizio richiamano i servizi senza conoscere l'ubicazione del fornitore di servizi.
I servizi possono essere richiamati indipendentemente dai richiedenti del servizio per elaborare funzioni semplici oppure possono interagire per mezzo di implementazioni coreografiche al fine di aggiungere in tempi ridotti nuova funzionalità ai processi esistenti.
Un'infrastruttura di servizio implementa la connessione tra richiedente del servizio e fornitore di servizi.
I servizi aziendali si basano su servizi dell'infrastruttura e dell'applicazione.
L'ESB (enterprise service bus) è un'infrastruttura orientata ai servizi che implementa i principi SOA in maniera scalabile e gestibile in un ambiente caratterizzato da elementi diversi.