UniCa UniCa News News Parliamo di SOA (Service Oriented Architecture)

Parliamo di SOA (Service Oriented Architecture)

Seminario/dibattito - 19 febbraio 2008 - Aula Magna di Matematica - Palazzo delle Scienze
19 February 2008

Il GULCh (Gruppo Utenti Linux Cagliari), in collaborazione con il Corso di Laurea di Informatica dell'Università degli Studi di Cagliari,
organizza il seminario/dibattito dal titolo:
Parliamo di SOA (Service Oriented Architecture)
Relatori: Antonio Pintus, Marco Marongiu
Aula Magna di Matematica - Palazzo delle Scienze
Via Ospedale 72 - Cagliari
19 Febbraio 2008 - Ore 18:30


Il seminario

Scopo del seminario è presentare le Service-Oriented Architecture (SOA), stimolando l'interesse dei partecipanti e la discussione su tutti gli aspetti di questo tipo di approccio, in modo che tutti i partecipanti (pubblico e relatori) possano andarsene dal seminario sapendo qualcosa in più.

Il seminario consisterà in una presentazione di circa 40 minuti e di un dibattito. Nella presentazione saranno illustrati i concetti generali alla base delle SOA, i contesti di utilizzo di queste architetture e i principali problemi introdotti dalla loro adozione. Verrà poi mostrato un semplice problema di esempio e un numero di approcci diversi per risolverlo, mostrando di ciascuno i vantaggi e gli svantaggi.

Terminata la presentazione si darà il via alla discussione; in essa, il ruolo dei relatori si limiterà allo stimolo e alla moderazione della
discussione stessa.

Àmbiti di applicazione

L'applicazione delle SOA è in crescita in àmbito sia commerciale che scientifico.

In un ambito commerciale pensiamo ad esempio alla gestione di un ordine di acquisto che viene effettuato via web: viene richiesto l'acquisto e la spedizione di un certo bene, e la richiesta deve essere gestita su un certo numero di sistemi diversi, sia interni all'azienda che esterni (la base dati dei clienti, la base dati di inventario dei beni richiesti, la gestione del pagamento per carta di credito, la spedizione effettiva del bene richiesto, la fatturazione, la spedizione della fattura...).

In ambito scientifico pensiamo ad esempio ad esperimenti di bioinformatica che, utilizzando dati e procedure sia interni che pubblicamente disponibili, mirano a scoprire le correlazioni genetiche in una particolare patologia: il centro di ricerca A fornisce un servizio di consultazione di una propria base di dati genomici; l'ente B mette a disposizione dei servizi che consentono di effettuare una "feature selection" e "filtering" di questi dati per estrarre solo quelli relativi a particolari geni di interesse; l'ente C mette a disposizione dei servizi per l'applicazione di algoritmi generici di Data Mining (p.e.: Reti Bayesiane, Support Vector Machine (KVM), K-nearest neighbor...). A questo punto, un quarto laboratorio di ricerca, attraverso una composizione di questi servizi remoti, può costruire il proprio particolare esperimento creando un processo che: prelevi una base di dati attraverso il servizio A, effettui su di questa una "feature selection" attraverso il servizio B, e infine costruisca ed applichi ai dati filtrati una classificazione mediante un algoritmo
fornito dai servizi C.

Le SOA

Esistono diverse definizioni di SOA, ciascuna delle quali si concentra su particolari aspetti del concetto generale. Nella definizione più
ampia e generale possibile, SOA (Service-oriented Architecture) è un paradigma per la realizzazione e la manutenzione di processi
implementati su sistemi distribuiti su vasta scala. Per estensione vengono chiamate SOA anche le architetture implementate sulla base di
questo paradigma.

Le SOA trovano applicazione ovunque si abbia un insieme di sistemi eterogenei, le cui funzionalità devono essere armonizzate e coordinate insieme per creare dei servizi.

Spesso ciascuna di queste funzionalità è erogata da un sistema "legacy", ovvero un sistema dedicato, completamente scollegato dagli altri, che espone un proprio protocollo o API proprietario. Spesso sistemi diversi fanno capo per la loro gestione a gruppi diversi all'interno della stessa azienda; in alcuni casi si può trattare di servizi che sono completamente esterni e quindi fuori dal controllo dell'azienda stessa.

A tutto questo si aggiunga che di fronte alla necessità di costruire nuovi servizi sopra gli stessi componenti o con l'adozione di componenti
ulteriori, o di far evolvere i servizi esistenti per implementare nuove funzionalità, bisogna poter rispondere con la massima rapidità possibile.

Diversi ordini di problemi si oppongono. L'eterogeneità e la decentralizzazione sono caratteristiche inevitabili di un sistema
distribuito complesso; affidarsi ad un unico vendor non aiuta (un vendor sa fare bene un prodotto e meno bene un altro, e non ci si può affidare 100% ad uno solo senza rimanerne prima o poi scottati); a volte si rende necessario cambiare vendor o prodotti, e questo deve essere possibile, per quanto difficile, senza dover stravolgere completamente i processi aziendali.

Gli approcci normalmente utilizzati per gestire queste situazioni (p.e.: centralizzazione, omogeneità dei sistemi, omogeneità dei vendor e dei prodotti...) segnano il passo di fronte alla complessità dei problemi e all'impossibilità di far evolvere l'architettura in modo omogeneo
secondo uno schema coerente.

Introducendo i concetti base di servizio, interoperabilità e loose coupling, il paradigma SOA fornisce gli strumenti teorici per gestire
questa complessità, garantendo flessibilità e creando le condizioni necessarie per l'evoluzione.

È un approccio pervasivo, che entra a tutti i livelli: le parti in causa nella realizzazione di un servizio sono quella cosiddetta "IT", che
gestisce materialmente hardware e sistemi, quella "Operativa" e di "Sviluppo" che crea e gestisce il software che implementa i servizi, e quella "Business" che descrive i flussi che devono essere implementati sul sistema. Tutte queste componenti devono essere organizzate non solo secondo le loro competenze, ma devono saper andare anche un pò oltre,
perché solo avendo una comprensione almeno minima delle problematiche affrontate dagli altri settori si può arrivare a disegnare bene la
propria parte. Insieme a questi team specializzati è necessaria anche la presenza di un team che, conoscendo i processi e l'architettura ad alto livello, sappia individuare e anche anticipare i problemi, rivolgendosi ai team specifici per la loro soluzione. È evidente che in tutte quelle realtà dove le "business unit" sono state concepite come camere stagne, le SOA entrano all'interno della stessa organizzazione del lavoro (e non solo della realizzazione dei servizi), e richiedono un cambiamento radicale.

Si ringrazia:Il Corso di Laurea di Informatica dell'Università degli Studi di Cagliari, tutte le persone che, con il loro aiuto, contribuiscono alla
organizzazione dei seminari.

Antonio Pintus è laureato in Informatica e studente di Dottorato di Ricerca in Informatica con argomenti relativi a "Service Oriented
Architecture". Lavora come Software Engineer presso il CRS4 (Centro di Ricerca, Sviluppo e Studi Superiori in Sardegna).

Marco Marongiu è laureato in Matematica. Lavora come System Administrator per Tiscali nella sede di Sa Illetta a Cagliari.
Attualmente il suo compito principale è la gestione sistemistica dell'infrastruttura SOA di Tiscali, basata su prodotti TIBCO. Scrive
inoltre su riviste e siti web specializzati, in Italia e all'estero.

Last news

22 February 2020

Premio Francovich al sito di Sant'Eulalia

Durante il TourismA nell’auditorium del Palazzo dei Congressi di Firenze, Paul Arthur, professore di Archeologia medievale all’università del Salento e presidente della Società degli Archeologi Medievisti Italiani ha premiato questa mattina il complesso archeologico in cui si sono formate centinaia di studenti di UniCa. Sul palco con la Presidente di Studi umanistici Rossana Martorelli i rappresentanti della riuscitissima alleanza tra istituzioni che ha consentito la riscoperta, la valorizzazione e la tutela del patrimonio culturale sardo. Durante i lavori è stata citata "UniCa&Imprese" come esempio virtuoso di collaborazione tra istituzioni e aziende, mentre Fabio Pinna ha illustrato il modello di intervento partecipato sui beni culturali attuato dal nostro Ateneo negli ultimi anni

22 February 2020

CORONAVIRUS, i comportamenti da seguire

Per favorire una corretta informazione, diffondiamo il vademecum diffuso dal Ministero della Salute e dall'Istituto Superiore di Sanità in merito alla diffusione del virus. Esso contiene l'indicazione dei comportamenti da tenere per evitare il contagio.

21 February 2020

Patrick George Zaky, l’Università di Cagliari al fianco del ricercatore detenuto in Egitto

Oggi Amnesty International, in occasione dell’udienza che si apre domani a Il Cairo, ha tenuto un presidio nella facoltà di Studi umanistici e nella biblioteca del Distretto di Scienze umane. Aperta la raccolta delle firme per chiedere il rilascio del giovane iscritto all’ateneo di Bologna. “È incredibile che situazioni simili possano ancora trovare asilo. Siamo fiduciosi nell’azione dell’Unione Europea e del Governo” dice Maria Del Zompo   

Questionnaire and social

Share on: