mercoledì 10 giugno 2009
OpenSPCoop, l'open source apre le porte della cooperazione nella PA
a cura di Stefano Gorla
OpenSPCoop è un'implementazione libera della specifica SPCoop per la Cooperazione Applicativa nella pubblica amministrazione italiana. Scritto in java, OpenSPCoop è portabile su un ampia varietà di sistemi
Nell'ambito del Sistema Pubblico di connettività e cooperazione, il progetto Openspcoop rappresenta lo sviluppo open source sia dei componenti periferici (Porte di Dominio) che dei componenti centrali (Registro Servizi e Gestore Eventi) dell'infrastruttura SPCoop, costituendo l'unica implementazione completa della specifica oggi disponibile. Grazie ad un approccio trasparente all'integrazione dei servizi applicativi, OpenSPCoop permette di ridurre considerevolmente l'impatto dell'adeguamento applicativo ad SPCoop. In questo senso rappresenta un punto essenziale per la realizzazione della interoperabilità applicativa tra le varie PA. La scelta dell'Open Source ha una rilevanza strategica che non si limita al progetto in questione.
Come sostengono Corradini e Flagella in "OpenSPCoop: un Progetto Open Source per la Cooperazione Applicativa nella Pubblica Amministrazione": «Il progetto OpenSPCoop nasce sostanzialmente con questo obiettivo, enfatizzando i noti vantaggi dell'approccio open source per indirizzare i seguenti aspetti:
- Interoperabilità, OpenSPCoop intende rappresentare un riferimento per disambiguare diverse possibili interpretazioni della specifica SPCoop;
- Comunità d'utenza, OpenSPCoop tende a fungere da catalizzatore per le esperienze e le competenze degli utenti, permettendo di ricapitalizzarle in risultati concreti e riusabili;
- Innovazione, un'implementazione open source è il veicolo ideale per proporre delle implementazioni condivisibili di quanto non ancora trattato nelle specifiche SPCoop».
L'SPC si configura infatti come una Extranet, ossia aderente al modello IP (Internet Protocolo) della tecnologia Internet, che interconnette in modo sicuro e controllato una serie di reti di enti ed amministrazioni (Intranet) costituenti i diversi domini informativi delle varie amministrazioni. Nell'ambito dell'SPC distinguiamo così la parte SPConn che fornisce i servizi di trasporto in modo trasparente per l'attuazione degli ambiti applicativi della parte SPCoop, costituita dai fornitori di servizio. Le due parti sono interrelate anche se indipendenti, consentendo all'ente aderente di essere connesso alla sua rete territoriale ma di partecipare allo sviluppo di più reti sotto il profilo applicativo (rete della sanità, rete della scuole, rete del lavoro, ecc.). Nello schema seguente abbiamo la rappresentazione dei principali componenti della infrastruttura SPCoop:
- Busta eGov
- Porta di Dominio
- Porte Delegate e Applicative
- Registro dei Servizi
Al fine di garantire autonomia alle singole pubbliche amminstrazioni centrali (PAC) o locali (PAL), lasciando inalterato il loro patrimonio informativo, viene definito il concetto di dominio. È da intedenersi come l'insieme delle risorse (vale a dire procedure, dati e servizi) e delle politiche di una determinata organizzazione. L'SPC è da intendersi come una federazione di domini: il dominio è quindi in confine di responsabilità di un'organizzazione, in particolare per quanto riguarda le politiche che definiscono il suo sistema informativo. Domini diversi comunicano tra loro, integrati dall'architettura cooperativa dell'SPC, che consente l'integrazione degli oggetti informativi (procedure e dati) e delle politiche di domini diversi.
L'elemento tecnologico quindi che realizza la cooperazione è la porta di dominio, con la funzione di proxy per l'accesso alle risorse applicative. Si tratta in buona sostanza di un adattatore, che consente a sistemi informatici progettati e realizzati in funzione delle esigenze del dominio specifico, di cooperare fra loro. Il compito assegnato alle componenti software di adattamento (Porte di dominio) è quindi di importanza fondamentale. La porta, con la sua componente delegata alla cooperazione, rappresenta l'unico punto di contatto telematico tra i domini. E per garantire che ogni porta di dominio (e pertanto ogni amministrazione) possa interagire con le altre porte è necessaria l'adozione di formati standard di codifica per i messaggi contenenti le richieste di servizio fra le varie porte di dominio.
Le Porte di Dominio comunicanti devono condividere l'accesso a un Registro dei Servizi contenente l'elenco dei Soggetti abilitati alle comunicazioni SPCoop, l'elenco dei servizi erogati da ogni Soggetto e i relativi accordi di servizio. I messaggi (intesi come richieste e risposte di servizio) scambiati attraverso le Porte di Dominio, sono contenuti in una Busta (Busta di e-Gov). Quest'ultima è logicamente suddivisa in due parti, una parte che contiene tipicamente informazioni infrastrutturali, ed una parte di contenuto dipendente dal servizio applicativo oggetto della interazione. La specifica della busta e-gov definisce, nel rispetto degli standard internazionali rivolti a garantire l'interoperabilità tra sistemi, un formato comune di scambio tra le applicazioni delle Pubbliche Amministrazioni italiane.
Lo standard di riferimento è il SOAP (Single Object Access Protocol), condiviso a livello internazionale per il veicolamento delle informazioni codificate con XML (eXtensible Markup Language) sulla rete Internet mediante il protocollo HTTP. La fase di analisi e progettazione del software OpenSPCoop è stata fatta dall'Università di Pisa con il suo Dipartimento di Informatica e la prima release è stata rilasciata da Link.it alla fine del 2005. Link.it è stata fondata nel 1995 da un gruppo di tecnici e ricercatori del Dipartimento di Informatica dell'Università di Pisa, ed è stata la prima azienda in Italia a promuovere Linux e le soluzioni Open Source in ambiente Enterprise. Oggi è possibile scaricare la versione 1.0.1 rilasciata il 5 aprile 2008.
Nell'ottobre del 2007, il componente interregionale di cooperazione rilasciato dalla Regione Toscana nell'ambito del task INF-1 del Progetto ICAR include un'estensione di OpenSPCoop. Il software realizzato consente uno standard di affidabilità che risponde alla criticità della sicurezza sulla Porta di Dominio. Non è infatti richiesta alcuna programmazione di compenenti ad hoc quando vengono abilitate sia le porte delegate che le porte applicative della Porta di dominio. È sufficiente una descrizione in formato XML di come devono essere trattati i messaggi in transito da parte della Porta di dominio.