La squadra di Piacentini, che io vedo come ente di raccordo nazionale e system integrator per la pubblica amministrazione, secondo me dovrebbe finalmente, tra le moltissime cose, occuparsi anche di costruire le ontologie per la pubblica amministrazione, perlomeno di avviare questo lavoro: un lavoro considerato immane, infinito, una sorta di opera incompiuta, e che rischia di esserlo se si vuole realizzarla partendo da un foglio bianco, e volendola costruire subito perfetta in ogni dettaglio.
Ma vi possono essere metodologie di tipo K.I.S.S. (Keep It Simple and Stupid) che permettono di ridurre di un ordine di grandezza la complessità del problema. È quello che ho cercato di fare ed ho iniziato a fare, insieme a Carlo Batini, negli anni scorsi.
La nostra proposta serve ad inferire la conoscenza “per somiglianza”, partendo da semplici concetti già esistenti ed evidenziandoli, marcandoli, ove trovati.
Molto spesso la conoscenza è nascosta, e ci si trova a doverla recuperare con tecniche di reverse engineering.
Le attività che possono svolgere i nostri metodi e tools sono semiautomatiche: con la conoscenza a disposizione si evidenzia ove questa è presente, e si popola un foglio bianco: quest’ultimo viene reso disponibile ad un esperto di materia (nella fattispecie pubblica amministrazione) che lo perfeziona aggiungendo o togliendo ulteriore conoscenza. Funziona per la pubblica amministrazione poiché’ i concetti di partenza sono relativi al contesto della pubblica amministrazione.
Posso applicare gli stessi metodi e tools ad altri contesti, purché’ si abbia una libreria di concetti iniziale a disposizione.
Se ho una libreria di concetti relativa ad esempio ad aziende automotive, posso usarla per andare a pesca di concetti nell’automotive.
È opportuno che io aggiunga che la metodologia dà molta importanza al corretto uso delle gerarchie di generalizzazione delle entità, proprio perché’ sia disambiguata sin dall’origine la definizione ad esempio di pomodoro come frutto, ortaggio, e tutta la più esauriente serie di sottoclassi ad esclusione dell’entità “altro”.
Le ontologie, nella nostra proposta iniziale, sono librerie di concetti che esprimono in linguaggio pseudo naturale le relazioni tra oggetti definiti in un contesto.
Formalmente come da grammatica italiana: soggetto, predicato verbale, complemento oggetto. Nel contesto della pubblica amministrazione ecco un esempio: cittadino paga tributi.
Le ontologie descrivono i processi del contesto mettendo in relazione (verbo “paga”) i dati (le entità “cittadino” e “tributi”).
La nostra idea è di partire da un nucleo di concetti esistenti per la PAC (pubblica amministrazione centrale), e riutilizzarli come esche per una pesca semantica nei metadati di qualsiasi PAL (pubblica amministrazione locale a partire dalle regioni fino ai singoli comuni).
La nostra metodologia è autoapprenditiva: nuovi concetti rilevati nella pesca possono arricchire le ontologie esistenti che man mano quindi evolvono.
Il vantaggio di tutto ciò è la massima standardizzazione e riuso, tradotto: enormi risparmi nelle PA per le implementazioni informatiche.
Risparmio che parte non dal semplice riuso di applicazioni informatiche esistenti, ma da un livello decisamente più elevato, che è il livello semantico.
La nostra metodologia, per quanto efficace e dimostrabile con misure, vuole essere solo un punto di partenza dato che si basa su semplici euristiche di somiglianza, ed applica metodi derivanti dal modello entità relazioni, metodi che possono sembrare empirici a confronto di più moderne tecniche di trattamento ontologie con triple-stores, rdf e owl.
La mia esperienza nella p.a. piemontese: vi arrivai nel 2001, lavoravo già dal 1980, e dal 1995 mi occupavo di modellazione concettuale dei dati in IVECO.
Il mio primo lavoro, , consisteva nel catalogare i metadati delle basi dati della pubblica amministrazione locale piemontese.
Le basi dati sono oggetti informatici ricchi di informazioni, di semantica, esse racchiudono concettualmente, oltre ai dati, anche i processi che descrivono i contesti applicativi, nella fattispecie quelli della pubblica amministrazione.
Quando con un semplice metalinguaggio concettuale preso a presto dalla grammatica italiana, dico che “il cittadino paga i tributi”, esprimo sia il fatto che ci sono i dati dei cittadini, i dati dei tributi, e la relazione tra i dati dei cittadini e i dati dei tributi.
Ma esprimo anche un processo dato dalla relazione, o verbo, “paga”.
La modellazione concettuale esprime con la grammatica le relazioni che vi sono tra gli oggetti informatici, che fondamentalmente sono dati, o entità, e le relazioni, o processi. Il modello concettuale si chiama anche modello entità relazioni.
Potremmo anche chiamarlo modello dati processi, ma preferisco entità relazioni, perché’ più affine alla grammatica alla quale si rifa’, ovvero: soggetto, predicato-verbale, complemento-oggetto.
Venivo da un’esperienza di eccellenza, in IVECO, dove l’implementazione informatica di dati e processi avveniva top-down, partendo da un perfetto modello concettuale, che veniva depositato in un repository (opportunamente conciliato con modelli già esistenti che di conseguenza evolvevano) e implementato informaticamente, ovvero diventava una struttura di un database, e un archetipo dell’applicazione informatica realizzata.
Tutto questo era meraviglioso, poiché’ si arrivava a produrre il salame partendo dal maiale, cioè seguendo un ciclo naturale che partiva dalla formulazione nero su bianco dei requisiti con gli utenti, ed arrivava sino alla minutazione delle specifiche tecniche nel linguaggio informatico implementativo.
Arrivai nella p.a. e tutto questo non esisteva, o meglio esisteva tanto salame ma non si sapeva da che maiale arrivasse. Bisognava in qualche modo sforzarsi di riottenere il maiale partendo dal salame, con operazioni di reverse engineering, cioè di risalire ai modelli concettuali che avevano generato gli oggetti informatici fisicamente realizzati.
In particolare ci concentreremo sulle basi dati, ovvero su tabelle costituite da righe e colonne, e tra loro relazionate da attributi chiave. Per semplicità immagina un data base access, con tabelle tra loro correlate.
Io avevo una vasta esperienza di reverse engineering di strutture di basi dati, con tools come erwin della Computer Associates.
Tali tools permettono di dare una forma grafica ad una base dati, partendo dalla sua struttura fisica, e trasformandola in un grafo con le tabelle e i campi racchiusi in tanti quadrati, e le relazioni tra le tavole espresse come linee di collegamento tra tabelle, linee che legano i campi chiave tra una tabella e l’altra.
Un primo grosso lavoro fu quello di reversare tutte le strutture dei database fisici, per dargli una forma grafica.
Era già qualcosa, partendo dal salame, ma non era ancora il maiale. Diciamo che usando il salame come fosse pongo, col pongo avevamo costruito un maiale ma esso era inanimato come una statua di pongo appunto.
Bisognava dargli vita.
Tutti questi maiali reversati e inanimati, avevano bisogno almeno dei burattinai che li animassero artificialmente.
Cercai intanto nel web chi fosse il massimo esperto di modellazione concettuale nella pubblica amministrazione, e l’occhio cadde rapidamente sul professor Carlo Batini, ora direttore della facoltà di informatica dell’università Bicocca Milano, in passato presidente AIPA (che poi diventò CNIPA, digitpa, e poi oggi AgID).
Batini negli anni ’90 in AIPA raccolse e catalogò i modelli concettuali della pubblica amministrazione centrale, con un paziente lavoro di ricostruzione fatto principalmente da interviste presso gli enti governativi, e svolto da tesisti e borsisti.
L’idea che misi in campo, e che Batini valorizzò con tutta la sua esperienza e competenza sia della P.A. che della modellazione concettuale, fu quella di usare i modelli concettuali PAC (P.A.centrale) di Batini come burattinai dei concetti presenti nelle basi dati della PAL (P.A.locale, quella piemontese). O meglio ancora di usare entità, gerarchie, relazioni e attributi della PAC come esche da pesca per “pescare” i concetti nella PAL.
Mettemmo a punto una metodologia, Batini ed io, che chiamammo anche “pesca miracolosa”, dove si pescavano i concetti per somiglianza.
Nel mare magnum delle strutture delle basi dati PAL piemontesi, si cercavano per somiglianza i concetti presenti.
In poche parole, ogni oggetto concettuale PAC (entità/gerarchie, attributi, relazioni) veniva cercato per somiglianza nei nomi e nei metadati descrittivi di tavole e campi delle basi dati.
Tale lavoro ci ha permesso di ridurre di un ordine di grandezza i tempi necessari a riconcettualizzare tutta la PAL piemontese. Venne realizzato, con un tesista della Bicocca, da me un tool che partendo dagli schemi concettuali della PAC otteneva gli schemi concettuali della PAL. Ci basavamo sull’ipotesi che gran parte dei concetti PAC fossero validi anche per la PAL, e li andavamo a cercare e mappare.
Inoltre la metodologia consentiva, oltre all’inferenza semantica di somiglianza like, anche l’inferenza relazionale, ovvero le relazioni fisiche tra gli oggetti della PAL “pescati” potevano rivelare nuovi concetti ed arricchire il repository ottenuto.
Era ed è quindi una metodologia apprenditiva: venivano usati dei concetti come criterio di ricerca, e i concetti trovati potevano essere più ricchi di quelli di partenza.
Il tool realizzato con Garasi per la sua tesi applicava la metodologia sulle basi dati, ma eravamo convinti che tale metodologia poteva andare bene più in generale anche per gli oggetti del web, ovvero per andare a scovare relazioni nel mare magnum del web.
Presentammo, Bicocca ed io, questi esperimenti all’iasummit a Trento nel 2007, lì conoscemmo Nicola Guarino del CNR, esperto mondiale di ontologie.
Lui volle approfondire e propose di partecipare alla stesura di una proposta che chiamammo ontopa: definire un ente, e l’attività dell’ente stesso, che avesse il compito per la nazione italiana di gestire il repository delle ontologie della pubblica amministrazione.
Partendo dall’esistente, utilizzando vari metodi, arrivare a gestire un vero e proprio registro di repositories ontologici a vari livelli, dalla PA centrale alle singole PA dei comuni, riutilizzando anche i metodi e i tools sperimentati per la PA della regione Piemonte.
Guarino si occupò di presentar in CNIPA la proposta: era il 2008.
Da allora non ho mai smesso di riproporre tali metodi. Sono convinto che sia fondamentale governare l’informatizzazione della p.a. anche con strumenti di catalogazione, inferenza, raccordo e riuso.
I dati costituiscono la materia prima, immensa, da raccordare centralmente.
Tutto questo è in linea con i principi di standardizzazione e riuso presenti nelle linee guida dell’agenda digitale europea, e di conseguenza italiana.
I metodi e tools descritti potrebbero non essere l’unico modo per arrivare all’obiettivo descritto, ma è importante che molti leggano e si facciano consapevoli della necessità di una governance sulla knowledge base della p.a.