Intervista a Fabio Bottega – Presidente di Tecnoteca che ha implementato CMDBUILD“
CMDBuild si ispira alle “best practice” ITIL (Information Technology Infrastructure Library), ormai affermatosi come “standard de facto”, non proprietario, per la gestione dei servizi informatici secondo criteri orientati ai processi”
Quali sono gli strumenti che si possono utilizzare per far si che nelle aziende venga introdotto con facilità la metodologia ITIL? Ed in particolare vi sono software open source utilizzabili a tal fine?A queste domande ha risposto Fabio Bottega – Presidente di Tecnoteca che ha implementato CMDBUILD:
Fabio Bottega – Dopo aver conseguito la laurea in informatica lavora da oltre vent’anni nel settore, prima come analista, poi come responsabile progettazione e sviluppo di varie aziende private, attualmente come responsabile tecnico di Tecnoteca di cui è anche presidente. Si occupa in particolare di sistemi CMS, di sistemi GIS, di database, di architetture web e di aspetti relativi alla qualità del software, è coordinatore del progetto open source CMDBuild. Fa parte del CDA del Consorzio CIRS, il primo consorzio italiano di aziende attive nel settore del software libero ed open source e coordina la divisione tecnica di Movendo SPA, società specializzata nell’erogazione di servizi di localizzazione veicoli e gestione di flotte aziendali.
Può parlarmi di CMDBUILD?
CMDBuild è una applicazione web open source utilizzata per il Configuration Management Data Base degli oggetti e dei servizi informatici in carico al Dipartimento ICT di una qualsiasi organizzazione e per guidarne e controllarne poi i processi di gestione.
In particolare CMDBuild serve per:
• modellare un archivio di schede costruito su misura di ogni ente / azienda in termini di oggetti da considerare, di attributi da gestire e di tipologie di correlazioni da prevedere;
• aggiornare la base dati, anche tramite workflow, rendendo sempre disponibili agli utenti abilitati le informazioni, le correlazioni e le modifiche avvenute nel tempo;
• utilizzare la base dati per mantenere sotto completo controllo la situazione degli asset gestiti (hardware, software, documenti, servizi, ecc), conoscendone in ogni momento la composizione, la dislocazione, le relazioni funzionali e gli eventi significativi occorsi.
CMDBuild si ispira alle “best practice” ITIL (Information Technology Infrastructure Library), ormai affermatosi come “standard de facto”, non proprietario, per la gestione dei servizi informatici secondo criteri orientati ai processi.
Qual è stata la genesi del progetto?
CMDBuild è nato da un’esigenza dei Sistemi Informativi del Comune di Udine che nel 2005 ha intrapreso la strada verso l’adozione delle linee guida ITIL, con l’obiettivo di migliorare il servizio offerto ai propri utenti e sopperire attraverso una migliore organizzazione del lavoro alla riduzione di personale e a restrizioni di budget.
Il Comune di Udine ha coinvolto la ditta Cogitek di Torino, specializzata nella consulenza ITIL, e la ditta Tecnoteca di Udine, specializzata nello sviluppo di applicazioni con tecnologia open source. L’attività svolta ha portato alla realizzazione di un sistema informativo di supporto alla gestione degli asset e dei relativi processi di controllo, denominato appunto CMDBuild, rilasciato con licenza GPL ed attualmente supportato da Tecnoteca come maintainer del codice sorgente.
Il progetto dispone di un sito web dedicato (http://www.cmdbuild.org) dove si contano ogni mese circa 4.000 visite e circa 400 download del codice sorgente.
Il primo rilascio pubblico di CMDBuild risale all’aprile 2006, la versione 0.9 è stata resa pubblica nello scorso mese di agosto, per il primo trimestre 2009 è previsto il rilascio della versione 1.0 ampiamente reingegnerizzata sia nell’architettura (SOA, interoperabile con sistemi esterni tramite webservice SOAP ed altri protocolli standard) che nell’interfaccia utente (Web 2.0, basata su Ajax).
Quali sono le caratteristiche principali e quali gli elementi che la differenziano dai suoi competitors?
Dal punto di vista tecnico CMDBuild è realizzato in ambiente Java ed è basato sul database open source PostgreSQL, scelto non solo per la sua maturità ed affidabilità, ma anche per le numerose funzioni disponibili ed in particolare per le sue caratteristiche “ad oggetti” ampiamente utilizzate per implementare meccanismi di tipo superclasse/sottoclasse nella definizione del modello dati.
La caratteristica che più lo differenzia dai principali prodotti presenti sul mercato, oltre ovviamente alla sua tipologia di licenza open source GPL è la completa ed autonoma modellabilità e configurabilità del sistema attraverso il Modulo di Amministrazione.
Con le funzionalità base attualmente disponibili nel Modulo di Gestione è possibile:
• definire ed utilizzare filtri e “viste” sui dati;
• “navigare” in modo visuale (con tecnologia Flash) sul grafo delle correlazioni fra le schede;
• “disegnare” ed eseguire report (attraverso il motore open source Jasperreports);
• “costruire” ed eseguire workflow (attraverso il motore open source Enhydra);
• allegare documenti alle schede (attraverso il sistema open source Alfresco);
• aggiornare automaticamente i dati tecnici dei computer (attraverso il sistema open source OCS Inventory) e i dati identificativi degli utenti (attraverso il sistema open source OpenLDAP);
Com’è organizzata la community?
I contributi della community, intesa come interlocutori esterni con cui siamo finora entrati in contatto, riguardano al momento soprattutto il suggerimento di nuove funzionalità ed il supporto al testing, effettuati attraverso il form dei contatti e tramite le discussioni sul forum attivo nel sito del progetto.
Dopo aver ricevuto la disponibilità di utenti esterni per collaborare allo sviluppo del progetto (scrittura di alcune parti di codice o localizzazione in altre lingue) abbiamo aperto all’esterno il repository dei sorgenti in lavorazione, ovviamente protetto da password. Riteniamo importante per la crescita del progetto allargare la base di partecipazione e ne stiamo stimolando la crescita.
Il nucleo più attivo e propositivo della community è però costituito dal gruppo ristretto di enti ed aziende che hanno avviato l’utilizzo di CMDBuild con il nostro supporto.
Una buona metà dello sviluppo del progetto negli ultimi due anni, successivamente alla commessa iniziale del Comune di Udine, è dovuto proprio a contributi degli attuali utilizzatori “messi a fattor comune”. Ricordo l’integrazione con report Open Office, l’integrazione con Active Directory tramite OpenLDAP (Comune di Bologna), numerose estensioni al workflow (Avvocatura dello Stato), il webservice SOAP (Avvocatura dello Stato), l’integrazione con il portale Liferay tramite portlet (Consiglio Regionale della Toscana, in sviluppo), funzioni di import / export, di ricerca e di utilità.
Non dimenticherei poi i contributi dei progetti open source a cui CMDBuild ha “attinto” nell’implementazione delle proprie funzionalità, per lo più ottenuti in forma implicita, ma che nel caso del plugin MystiqueXML per l’integrazione di stampe Open Office hanno dato luogo ad una stretta e libera collaborazione fra Tecnoteca e la ditta Yacme di Bologna sviluppatrice del prodotto.
Quali sono i problemi che avete incontrato?
Distinguerei i problemi organizzativi e tecnici, dipendenti da nostre iniziali inesperienze in materia (pur lavorando da sempre con soluzioni e tecnologie open source Tecnoteca non aveva mai gestito un progetto in proprio), dai problemi strutturali di penuria di risorse economiche con cui alimentare le attività di sviluppo.
Il primo aspetto ha costituito per il nostro gruppo di lavoro (un gruppo piccolo – dalle due persone iniziali alle quattro attuali – ma di collaboratori particolarmente qualificati ed interessati alla crescita del progetto) uno stimolo per studiare l’organizzazione di altre iniziative open source ed attivare le necessarie soluzioni tecniche di supporto, dal sito web con la mailing list ed il forum al repository SVN al sistema TRAC per il bug tracking.
Per il secondo aspetto contiamo in una ulteriore diffusione dell’applicazione nel corso del 2009, disponendo delle nuove caratteristiche e funzionalità in corso di sviluppo, con una maggiore quota di autofinanziamento derivante dall’erogazione di un maggior numero di giorni / uomo di servizi.
Stiamo però anche verificando la possibilità di accedere a contributi e finanziamenti nazionali ed europei riservati a progetti software di IT Governance, trattandosi in particolare di un progetto open source già riutilizzato con successo da numerose PA centrali e locali.
Quali sono stati invece i fattori critici di successo?
Il primo fattore di aiuto al progetto è sicuramente stato l’apporto del Comune di Udine ed in particolare del dirigente dei Sistemi Informativi dott. Scaramuzzi, non solo per averci commissionato il lavoro iniziale, ma anche e soprattutto per aver sempre seguito la sua evoluzione discutendone le linee guida, partecipando ad eventi di presentazione e lavorando in modo propositivo sulle iniziative volte ad “irrobustire” la community.
Il secondo fattore è legato al contributo di numerosi degli attuali utilizzatori del sistema, che oltre ad aver commissionato lo sviluppo di importanti estensioni funzionali, hanno divulgato nel corso di numerosi eventi (http://www.cmdbuild.org/convegni-e-workshop) i risultati ottenuti.
Un ulteriore fattore può essere poi stata la felice scelta di portare avanti il progetto “a tre gambe”, con la componente della PA, la componente esperta in organizzazione e la componente esperta in tecnologia a coprire le diverse angolazioni e competenze del problema dell’ICT Governance.
Da ultimo considererei la attuale forte crescita dell’interesse nel miglioramento dei servizi ICT e nelle “best practice” ITIL in particolare. In questo caso la concomitanza fra l’avvio del progetto CMDBuild e la crescita esponenziale delle certificazioni ITIL è del tutto casuale, ma come sappiamo la fortuna di un progetto dipende molto dal trovarsi al posto giusto nel momento giusto.
Può citare alcuni case history?
Avendo già ampiamente parlato del Comune di Udine, e senza voler far torto agli altri utilizzatori pubblici e privati (Comune di Bologna, Comune di Pordenone, Comune di Vigevano, Consiglio Regionale della Toscana, Provincia di Agrigento, ABI, CartaSI, Co.Re.Pla., WIIT, ecc), dedicherei due parole alle attività svolte a Roma presso l’Avvocatura Generale dello Stato, che riteniamo particolarmente significative per la completezza anche in ottica ITIL del sistema avviato.
L’esigenza dell’ente era quella di dotarsi di strumenti e di metodologie più adeguate alla cresciuta complessità delle attività gestite, attenendosi alle indicazioni ITIL e ricercando una applicazione di supporto per la gestione della configurazione e dei processi del Service Desk.
Da una verifica in rete la responsabile dell’ufficio CED dott.ssa Antonella Consiglio ha individuato CMDBuild e dopo alcune attività di valutazione interna ha deciso a fine 2007 di avviare un progetto che coinvolgesse, come già aveva fatto il Comune di Udine, la ditta Tecnoteca e la ditta Cogitek.
Il progetto (http://www.cmdbuild.org/case-history/avvocatura-generale-dello-stato) ha portato a:
• formazione e certificazione ITIL del personale interno;
• definizione della struttura logica del CMDB (entità e relazioni), identificazione delle fonti dati per il caricamento iniziale e sviluppo di appositi batch di importazione, configurazione e attivazione del sistema di automatic inventory;
• analisi, definizione e configurazione dei processi ritenuti prioritari: Gestione Eventi (Incidenti, Richieste di Servizio e di Informazioni), Gestione delle Modifiche (Standard e Non standard), Gestione dei Solleciti;
• definizione e configurazione di report, fra cui analisi statistiche sul servizio erogato;
• test estensivi del sistema, formazione degli operatori, messa a punto di istruzioni operative e norme di comportamento, caricamento finale dei dati ed avvio in produzione del sistema.
Nel giro di cinque mesi CMDBuild è stato avviato in produzione, completo di numerosi processi “ITIL compliant”, con piena soddisfazione del committente che ne ha poi riproposto i risultati partecipando al Premio FORUM PA 2008 “Protagonisti dell’Innovazione”.
Quali sono i prossimi sviluppi previsti?
La roadmap del progetto nel medio periodo (http://www.cmdbuild.org/roadmap) comprende poi numerosi altri punti, il cui sviluppo è anche legato alla presenza di clienti interessati al loro utilizzo e disponibili a contribuire ai relativi costi di sviluppo:
• possibilità di definire layout grafici customper le diverse tipologie di schede;
• possibilità di definire permessi di accesso diversificati su gruppi di schede della stessa tabella;
• integrazione di funzionalità CAD/GIS per georiferire e visualizzare degli oggetti su una mappa geografica e / o sulla planimetria di un ufficio;
• integrazione tramite portlet standard con il portale Liferay e con altri strumenti che li supportino;
• realizzazione di funzionalità per la schedulazione di task e per la condivisione del calendario di svolgimento;
• aderenza alle nuove specifiche CMDBf, finalizzate a garantire l’interoperabilità multivendor.
Fra i possibili sviluppi prevediamo utilizzi del sistema per necessità del tutto diverse da quelle strettamente IT, resi possibili dai meccanismi di base presenti in CMDBuild e dalla flessibilità ed autonomia di configurazione che ne derivano:
• il progetto ERP open source italiano Oratio (http://www.oratio.it/) sta integrando CMDBuild per gestire aree dati soggette a forti personalizzazioni (risorse umane, asset aziendali, ecc);
• già un paio di PA hanno scelto CMDBuild per gestire tramite il workflow pratiche amministrative nell’ambito di uffici non informatici;
• disponendo delle previste funzionalità cartografiche e di schedulazione di task, CMDBuild potrà essere utilizzato con profitto come supporto per gestire la manutenzione di impianti o edifici; quest’ultimo è tra l’altro un settore nel quale sono particolarmente interessato avendo anche partecipato in prima persona alla scrittura della norma UNI 10951:2001 (Sistemi informativi per la gestione della manutenzione dei patrimoni immobiliari) che lo regolamenta.