Architetture SOA: il focus su integrazione e interoperabilità

Di SOA si parla ormai ovunque e spesso se ne abusa quale “panacea di tutti i mali”, soprattutto quando si ragiona in termini di interoperabilità tra sistemi spesso disomogenei.

Non volendo entrare nel cuore delle Service Oriented Architecture, è però utile evidenziare che esse presuppongono di supportare le esigenze di business con un modello tecnologico di condivisione delle informazioni e dei processi, prima di essere un paradigma tecnologico in se.

soa

SOA and Business

Entrando più nello specifico è importante dirimere la confusione che spesso vige nell’utilizzo di due termini dietro i quali si celano concetti interconnessi ma assolutamente distinti: integrazione ed interoperabilità:

  • - Integrazione, uniformarsi a principi comuni tendere a comportarsi come oggetto unico;
  • - Interoperabilità, concordare regole tra diverse entità.

interoperability vs integration

Nel caso dell’integrazione si prevede qui di “assimilare”, sfruttando elementi di coordinamento e di unificazione, quanto già presente in modo da offrire un ambiente unico ed omogeneo tramite cui operare per le finalità di business. Al contrario l’interoperabilità si poggia sulla coesistenza e cooperazione di sistemi eterogenei.

I risvolti applicativi sono talmente rilevanti che la differenza tra integrazione e interoperabilità è evidenziata in modo esplicito nell’ISO 1425812 che descrive tre modi di relazionare tra loro contesti operativi (sistemi) e le relative esigenze:

  • - Integrazione: si poggia su un formato standard di condivisione delle informazioni per tutti i sistemi. Tipicamente l'integrazione avviene a livello di dati perché ogni elemento costituente ha una propria gestione dei processi operativi;
  • - Interoperabilità 1: Unification: prevede la definizione di un interscambio basato su meta-modello di mapping al fine di fissare una equivalenza semantica;
  • - Interoperabilità 2: Federazione: è lo scenario che si applica quando non è possibile utilizzare l'unification, prevedendo un agende di federazione che si occupa di attuare la comunicazione tra i diversi sistemi.

Chiaramente, nel contesto odierno, se si realizza una nuova architettura SOA si predilige l’Unification per tutti i nuovi Servizi, mente l’Integrazione e la Federazione sono le soluzioni guida per il riutilizzo di applicativi già in essere presso il contesto specifico.