Facendo tesoro delle molteplici esperienze di Assessment in ambito SOA svolte in questi anni da parte delle società del Gruppo Imola, presentiamo in questo articola il toolkit messo a punto. Il principio ispiratore del toolkit è di fornire un set di strumenti di valutazione oggettivo e misurabile, tale da consentire lesecuzione di Assessment SOA rapidi, sistematici e ripetibili.
Introduzione
In questi anni, le società del Gruppo Imola (Imola Informatica, MokaByte e Sensible Logic) hanno svolto numerosi “assessment” in ambito Service Oriented Architecture. Ne è nato un “SOA Toolkit”, ossia una suite di strumenti e metodologie finalizzati ai seguenti obiettivi:
- capire quanto una generica”organizzazione” sia matura per affrontare un’evoluzione SOA in relazione al “Maturity Model” di riferimento;
- individuare i passi da effettuare per evolversi all’interno di questo modello seguendo la Roadmap Gruppo Imola;
- analizzare la migliore strategia d’adozione per il contesto in esame;
- sperimentare le implicazioni tecnologiche e architetturali mediante Pilot mirati (opzionale)
In funzione di questi obiettivi, il principio ispiratore del toolkit è di fornire un set di strumenti di valutazione oggettivo e misurabile, tale da consentire l’esecuzione di Assessment SOA “rapidi”, sistematici e ripetibili.
Gruppo Imola SOA Toolkit
Il Toolkit analizza a 360 gradi tutti gli aspetti che all’interno di una realtà Enterprise concorrono alla riuscita di un percorso evolutivo SOA:
- organizzativi
- tecnologici
- metodologici
- culturali
Con SOA Toolkit la procedura di Assessment è rapida ed efficace, richiede una disponibilità di tempo limitata da parte del cliente e fornisce come risultato i seguenti deliverables:
- descrizione formale del SOA Maturity Model di Gruppo Imola
- documento di SOA Assessment
- report/esito SOA Assessment
- descrizione formale della SOA Roadmap di Gruppo Imola
- checklist per l’evoluzione SOA dal livello risultante al successivo
- strategie d’adozione
È inoltre possibile avere ulteriori informazioni opzionali riguardanti
- best practices per l’introduzione SOA
- design e realizzazione SOA Pilot in linea con il risultato dell’Assessment e con il modello proposto
Figura 1 – Uno sguardo d’insieme al SOA Toolkit del Gruppo Imola
Gruppo Imola Maturity Model
Il Maturity Model di Gruppo Imola (GI-SMM) è il core del toolkit e si ispira al framework CMMI del Software Engineering Institute (SEI) e al SOA Maturity Model (Sonic Software, Systinet, AmberPoint e BearingPoint).
GI-SMM si pone l’obiettivo di fornire un modello in funzione del quale “valutare” sistematicamente e in modo ripetibile la “qualità” dei processi e la profondità di visione SOA del proprio dipartimento IT. Come in CMMI e in SOA-MM, il Gruppo Imola SOA Maturity Model definisce livelli di maturità crescente, legati alla profondità di adozione SOA all’interno di un’azienda. I livelli del GI Maturity Model sono sei:
- Livello 0 = Assenza (Pandemonium): situazione IT caotica e senza controllo
- Livello 1 = Iniziale (Ad-Hoc)
- Livello 2 = Consapevolezza IT (Awareness)
- Livello 3 = Architettura a Servizi (Basic)
- Livello 4 = Gestita (Managed)
- Livello 5 = Ottimizzazione (Nirvana)
Figura 2 – I livelli del Gruppo Imola SOA-Maturity Model (GI-SMM)
Il modello si propone di fissare una base di valutazione comprensibile sia ai responsabili IT che ai business manager. Uno degli scopi principali di un percorso SOA è infatti quello di colmare il gap tra figure IT e business per quanto riguarda il livello aziendale attuale di soddisfacimento dei requisiti SOA.
Le valutazioni sono declinate in funzione delle seguenti aree:
- tecnologia
- architettura (definizione architettura, integrazione, riuso e orchestrazione)
- organizzazione (organizzazione IT & gestione processi business, governance, monitoring)
- vision
Figura 3 – I temi del GI-SMM
Le caratteristiche chiave dei livelli del Maturity Model sono riepilogate anche in forma schematica/tabellare.
Figura 4 – Schema GI-SMM
Procedura di Assessment
Al cliente viene sottoposto un questionario comprendente trenta domande suddivise in funzione delle seguenti aree tematiche:
- familiarità SOA
- architettura e standard SOAMetodologia
- riuso e repository
- governance
- service support & delivery
- sicurezza
Figura 5 – Questionario SOA
In funzione della compilazione del questionario, vengono prodotti alcuni grafici di posizionamento della realtà in esame e viene generato il corrispondente report di Assessment. I risultati vengono inviati in un report PDF al cliente. Nel report verranno riportate le seguenti informazioni:
- descrizione del livello di Maturity a cui risulta appartenere il cliente
- passi suggeriti per procedere al livello successivo
Figura 6 – Un Report prodotto da GI-SMM
Roadmap
Una volta stabilito mediante l’Assessment quanto un’azienda è matura nella sua implementazione di un’architettura SOA-oriented, è possibile definire quali passi intraprendere. SOA, infatti, è una strategia da NON adottare a big-bang sull’ambiente IT esistente, bensì deve essere integrata in modo incrementale e razionale: la roadmap è la descrizione dei passi aziendali (organizzativi, tecnici, metodologici e culturali) che devono definire un processo evolutivo ed incrementale.
L’esempio di roadmap che esporremo è stato elaborato cercando di individuare i macro-step più importanti e con l’obiettivo ambizioso di un’organizzazione che abbia completamente assorbito tutti gli aspetti di SOA e che di conseguenza ne ricavi il maggior valore possibile. Questa roadmap deve essere quindi considerata un “condensato” e non ha la pretesa di essere esaustiva: può essere piuttosto il punto da cui partire per elaborare una strategia nel momento in cui ci si trovi di fronte a un caso concreto.
La roadmap nasce da uno studio interno che Gruppo Imola ha condotto effettuando una selezione da modelli analoghi conosciuti. Da questi abbiamo selezionato tramite la nostra esperienza sul campo i passi essenziali da seguire, cercando di mantenere un giusto equilibrio tra completezza e pragmatismo.
La roadmap del Gruppo Imola prevede quattro step: Intial Services, Architected Services, Process Driven Services e SOA Nirvana (l’ultimo livello da “raggiungere”). A seconda del posizionamento dell’organizzazione su questi livelli (determinato in seguito al SOA Assessment) vengono proposti i passi per l’evoluzione dell’organizzazione all’interno della roadmap con l’obiettivo di passare da un livello all’altro, cioè di evolvere il proprio sistema verso l’adozione completa ed efficiente di SOA.
Figura 7 – La Roadmap SOA Gruppo Imola
Dal livello di partenza, si identifica quindi il “target level” e, tramite la descrizione dettagliata del SOA Maturity Model, si identificano i passi da eseguire in maniera incrementale per il raggiungimento del livello successivo. L’elenco di questi passi (che riguardano aree architetturali tecnologiche e organizzative), rappresenta quindi un insieme di obiettivi concreti che, se raggiunti, permettono di far evolvere il sistema informativo verso il teorico “SOA Nirvana”.
Il carattere incrementale di questi passi indirizza in maniera precisa e pragmatica cosa deve essere fatto, evitando la trappola di un’eccessiva astrazione dei concetti che spesso blocca l’adozione (e la comprensione) di SOA.
Estensione SOA toolkit
Il SOA Toolkit prevede due moduli opzionali destinati a coprire i seguenti aspetti:
- best practices per l’introduzione SOA
- design e realizzazione di SOA Pilot in linea con il risultato dell’Assessment e con il modello proposto
Il documento di Linee Guida e Best Practices è frutto delle esperienze di introduzione SOA realizzate in questi anni da Gruppo Imola presso importanti realtà Enterprise. Tale documento, unitamente all’attività di Design e realizzazione di un SOA Pilot (tecnologico, architetturale e metodologico), mira a concretizzare le implicazioni pratiche/implementative analizzate ad un maggior livello di astrazione dall’Assessment e dal Maturity Model.
Conclusioni
In questo articolo abbiamo presentato il “SOA Toolkit”, la suite di strumenti, modelli e metodologie proposta dal Gruppo Imola per analizzare e valutare efficacemente le implicazioni legate all’adozione di SOA. Per ulteriori informazioni fare riferimento al Gruppo Imola SOA Center
soa.center@imolinfo.it
Riferimenti
[MOKA_SOA_I] M. Piraccini – S. Rossini, “SOA: Introduzione”, MokaByte 100, Ottobre 2005
[MOKA_SOA_II] M. Piraccini – S. Rossini, “SOA: Metodologia”, MokaByte 101, Novembre 2005
[MOKA_SOA_III] M. Piraccini – S. Rossini, “SOA (III): Il Maturity Model”, MokaByte 102, Dicembre 2005
[MOKA_SOA_IV] M. Piraccini – S. Rossini, “SOA (IV): Roadmap”, MokaByte 103, Gennaio 2006
[MOKA_SOA_V] M. Piraccini – S. Rossini, “SOA (V): SOI”, MokaByte 104, Febbraio 2006
[MOKA_SOA_VI] M. Piraccini – S. Rossini, “SOA (VI): ESB (I)”, MokaByte 105, Marzo 2006
[MOKA_SOA_VII] M. Piraccini – S. Rossini, “SOA (VII): ESB (II)”, MokaByte 106, Aprile 2006
[MOKA_SOA_VIII] M. Piraccini – S. Rossini, “SOA (VIII)”, MokaByte 107, Maggio 2006
[MOKA_SOA_IX] M. Piraccini – S. Rossini, “SOA (IX): Esempio (I)”, MokaByte 108, Giugno 2006
[MOKA_SOA_X] M. Piraccini – S. Rossini, “SOA (X): Esempio (II)”, MokaByte 109, Luglio/Agosto 2006
[MOKA_SOA_XI] M. Piraccini – S. Rossini, “SOA (XI): Riuso e granularità dei servizi SOA”, MokaByte 116, Marzo 2007