Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09
Il Sistema Pubblico di Connettività
un progetto innovativo per la P.A. e per il Paese
20 gennaio 08 - Facoltà di Ingegneria - Università Roma Tre
Laboratorio di Tecnologie del SW:
esperienza di collaborazione con
Amministrazioni e Imprese
nello sviluppo di applicazioni di eGovernment
Valeriano Sandrucci, Enrico Vicario
Laboratorio Tecnologie del Software
Dipartimento Sistemi e Informatica
Centro per la Comunicazione e Integrazione dei Media
Università di Firenze
{Sandrucci,Vicario}@dsi.unifi.it
www.dsi.unifi.it/~vicario
1/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Laboratorio di Tecnologie del SW
Ingegneria Informatica (inginf05)
 Facoltà di Ingegneria, Dipartimento di Sistemi e Informatica - DSI
 Media Integration and Communication Center - MICC

People: 3+6
 E.Vicario, G.Bucci, A.Fantechi
 V.Sandrucci, J.Baldanzi, J.Torrini, L.Carnevali, L.Ridi, I.Bicchierai

Aree di competenza
 Testing, verifica di correttezza, valutazione di performance e dependability
in sistemi concorrenti Real Time con requisiti safety-critical
 Metodi di ingegneria del SW: processi di sviluppo, architetture,
principi e schemi di progetto, tecnologie, modellazione

Rapporti col territorio
 Galileo Selex, FinMeccanica, Regione Toscana, Azienda Ospedaliera
Universitaria di Careggi, Provincia di Firenze, CNIPA
 una varietà di piccole imprese nel settore ICT e SW
2/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

La natura incrementale dell’e-government
Egovernment: use of Information and Communication Technologies
combined with organisational change and new skills in order to
improve public services, democratic processes and public policies
 “The Role of eGovernment for Europe's Future,” Communication from the
Commission to the Council, the European Economic and Social Committee,
and the Committee of Regions, Brussels, 26.9.2003

Criticità specifiche
 Disegno complessivo non prevedibile e comunque aperto:
non una applicazione ma un sistema,
accoppiato alla evoluzione dei servizi e delle politiche
 Necessità di sviluppo concorrente:
autonomia delle amministrazioni,
molteplicità di fornitori,
legacy
 Finanziamento

Per rendere sostenibile il processo occorre
capacità di cooperazione e evoluzione
 Interoperabilità, integrabilità, condivisione, riuso, manutenibilità
3/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Il ruolo del settore pubblico
La metafora del piano regolatore
 Non soluzioni specifiche ma linee guida
 Conciliare l’evoluzione autonoma
con una integrazione armonica

Necessità per il settore pubblico di mantenere
il governo della architettura di scala enterprise
 DK Ministry of Science, Technology and Innovation, “White Paper on
Government Enterprise Architecture in Denmark”, June 2003.
4/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Quadro di riferimento comune
Architettura
 interfacce di cooperazione tra i componenti,
schemi di interazione, standards e tecnologie usati nell’integrazione

Strumenti di metodo condivisi
 orientati a favorire uniformità nel processo di fornitura,
dalla formulazione del capitolato alla documentazione di riscontro,
al processo di collaudo e manutenzione

Processo di governance
 capace di sostenere la visione di insieme
e guidare la condivisione e l’evoluzione
5/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09




6/38
Partizionamento delle responsabilità
Design Pattern Observer
Architectural Pattern Publish&subscribe
CART
1/3: Architettura
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Architettura: partizionamento delle responsabilità
Sistemi informativi locali dei singoli enti coordinati
 Rispondono alla specifica missione di ciascun ente
 Dipendono solo marginalmente dalla integrazione
 L’impatto della loro integrazione deve essere proporzionale
Uni Fi
livello
condiviso
cooperazione
Comune X

7/38
ASL n
Infrastruttura finalizzata al supporto della cooperazione
 Costituito con l'obiettivo specifico di supportare la cooperazione
 Mantenuto sotto il controllo diretto della autorità di coordinamento
livello
locale
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

il pattern Observer
uno schema OOD
Disaccoppiamento e consistenza:
 subject ha una variabile di stato che deve essere osservata
da oggetti di vario tipo (observer_A e observer_B)


Prima soluzione: subject pubblica un metodo
con il quale observer può ottenere lo stato
Problema: observer deve aggiornare lo stato quando?
 Prima di farne uso!
 Ma potrebbe essere necessario osservare tutti i cambiamenti
• e.g. gli interessi su un conto corrente
8/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

il pattern Observer
inversione di responsabilità della notifica
attribuiamo al subject la responsabilità
di notificare agli observers che il suo stato è cambiato
(Inversione di responsabilità)
 Quando cambia il suo stato, subject invoca il metodo notify
 Notify invoca update su tutti gli observers
9/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

10/38
il pattern Observer
struttura
definisce una dipendenza uno-a-molti per cui quando un oggetto
modifica il suo stato tutti i suoi dipendenti ne ricevono notifica
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

il pattern Observer
inversione di responsabilità della sottoscrizione
Installazione dinamica con responsabilità a carico dell’observer
 Observer si registra su subject con attach/detach
 Subject notifica agli osservatori registrati con notify
 In ricezione del notify, observer invoca get_State
11/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Trasposizione architetturale: Publish & Subscribe
Publish & Subscribe (broker)
 Equivalente architetturale del pattern observer,
con analoga motivazione e struttura
12/38
CART: Cooperazione Applicativa della Regione Toscana
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Rete e nodi di calcolo

Componenti applicativi

Componenti middleware sul NAL

Interazione
13/38
 CRIC, NAL, SIL
 Xml su http
 Proxy applicativi,
Sole facade, frameworkCA
 Sun1 Application Server, repository
 Prevalente stile publish & subscribe
 Possibile “anche” la richiesta di servizio
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09



14/38
Strumenti di Metodo condivisi: 2/3
Buone pratiche di sviluppo
Processo di certificazione
(Pratiche di gestione del processo di fornitura)
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Documentazione del SW

Organizzazione delle componenti applicative

Documentazione delle interfacce
15/38
 Core diagrams di UML
 Rappresentazione in livelli di dettaglio
 Formato della documentazione
 Partizionamento e separazione delle responsabilità
 Schemi di progetto comunicabili e riusabili
 Architectural e design patterns
 Formati di scambio
 Implementazioni di riferimento aperte
 Strumenti di supporto al testing
Buone pratiche
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Processo di certificazione
Strumento di attuazione del quadro di riferimento
 Promuove requisiti metodologici e architetturali
al di là dei soli requisiti funzionali di ciascun componente

Requisiti di interoperabilità
 Proxy: garantire il corretto utilizzo delle funzionalità
della infrastruttura di cooperazione applicativa
 Proxy: creare condizioni che facilitino
l’integrazione di componenti SIL
 SIL: garantire il corretto funzionamento dei servizi
esposti verso la infrastruttura di cooperazione

Requisiti architetturali
 Creare elementi di coerenza tra applicazioni diverse
che facilitino l’integrazione e l’evoluzione

Requisiti di documentazione
 Abilitare la visione di insieme
16/38
Requisiti di interoperabilità: Interfaccia proxy - FrameworkCA
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Il proxy accede al framework CA
esclusivamente attraverso
la facciata standard (sole facade)
 invio messaggi, invocazione servizi
 costruzione di messaggi conformi alla busta e-Toscana
 lettura e cancellazione di messaggi
nel repository degli eventi del NAL
 propagazione di richieste a provider
di servizi dislocati sui SIL

Il proxy deve esporre funzionalità
che lo rendono monitorabile a livello sistemistico
 servizio che restituisce uno stato OK/Warning/Trouble

Il proxy deve tenere traccia del suo stato in un log xml
 periodicamente aggiornato dal proxy
 riporta dettagli sullo stato di funzionamento della applicazione
17/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Requisiti di interoperabilità: Interfaccia proxy - SIL
Documentazione statica dell’interfaccia
 Nello schema di cooperazione per eventi
• formato degli eventi in XMLSchema
con annotazione del significato dei singoli campi
• validazione degli eventi rispetto allo schema XML
con segnalazione delle incongruenze
 Nello schema di cooperazione per richieste di servizio
• Il proxy media la comunicazione
tra FCA e SIL fornitore del servizio

Documentazione dinamica dell’interfaccia
 Applicazione di test
• Testa le funzionalità implementate dal proxy
 Implementazione di riferimento
• esemplifica un possibile modo di interfacciamento del SIL verso il proxy
• distribuita come codice aperto
18/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Il SIL ha la responsabilità di definire
l’interfaccia di eventuali servizi esposti
verso l’infrastruttura di cooperazione


19/38
Requisiti di interoperabilità: Sistemi Informativi Locali
formato della richiesta di servizio
(RichiestaServizioData.xml)
formato dei messaggi di risposta
(documentato attraverso XMLSchema
con annotazione del significato dei campi)
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Requisiti architetturali: Proxy applicativi
Modello di cooperazione
 Prevalente uso dello schema
di cooperazione per eventi
 Ammessa cooperazione per richiesta di servizio
 Evoluzione orientata verso schema ad eventi

Separazione delle responsabilità
 interfaccia verso il SIL
logica di dominio
interfaccia verso FCA
 Architettura interna
per logiche di dominio complesse
 Riduzione delle dipendenze
attraverso interfacce documentate
e organizzazione in packages dei moduli
20/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Requisiti di documentazione: proxy
Documentazione del sw
 Diagrammi dei casi di uso per funzionalità esposte
 Diagrammi di interazione per scenari operativi significativi
 Diagrammi delle classi e dei packages
• Descrizione di eventuali
schemi di progetto caratterizzanti
 Schemi ER o UML-DataModelingProfile
di eventuali tabelle su database

Caratteristiche della documentazione
 Rappresentazione su diversi livelli di dettaglio
 Documentazione non incrementale
 Identificativo di associazione tra sw e documentazione

21/38
Punto di vista del progettista
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Requisiti di documentazione: proxy
Documentazione di installazione,
configurazione ed esercizio
 Configurazione dell’application server
S1AS e eventuali altri requisiti
 Procedura di installazione e deploy
del proxy e delle applicazioni di test
 Manuale di gestione e manutenzione
in esercizio del proxy
 Caratterizzazione qualitativa del carico offerto
• Tipologia, distribuzione temporale e quantità dei flussi

22/38
Punto di vista dell’amministratore
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

(Pratiche di gestione del processo di fornitura)
Metodologia del processo di fornitura
 insieme organico di buone pratiche dal bando al collaudo
 definizione degli artefatti che devono accompagnare lo sviluppo,
 formalismi e linee guida metodologiche nella produzione della
documentazione di riscontro nella formalizzazione dei requisiti e nella
documentazione delle soluzioni adottate
 pratiche dei test interni documentati al rilascio
 pratiche della fase di collaudo e dispiegamento delle applicazioni realizzate.

Approccio





23/38
Analisi delle pratiche correnti presso RT,CNIPA e altri Enti
Definizione e sperimentazione in casi pilota
Standardizzazione,
Diffusione e formazione verso Enti e Fornitori
Esperienza nella commissione di collaudo di CG-SICA
 Gerardo Canfora (Università del Sannio), Giuseppe di Battista (Università di
Roma 3), Enrico Vicario Università di Firenze, Valter Antonelli (CNIPA), Mario
Terranova (CNIPA) +
Claudio Bortone (CNIPA), Alfio Raia (CNIPA), Stefano Fuligni (CNIPA),
Francesco Tortorelli (CNIPA)
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09


24/38
Requests For Commments – RFC
(Indicizzazione semantica)
Processo di Governance: 3/3
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Il metodo dei Requests For Comments (RFC)
Governo di un impianto di cooperazione applicativa P&S
 standardizzazione dei tracciati dei messaggi informativi veicolati
 gestione delle autorizzazioni nelle sottoscrizioni

Esiste un punto di controllo e gestione tecnica centralizzato
 tra i maggiori pregi dell’architettura.

Necessario cmq un processo di consenso tra portatori di interesse
 Pubbliche Amministrazioni dei diversi livelli, fornitori, utenti finali stessi

Processo RFC (Request For Comments)
 riproduce il ben noto meccanismo di standardizzazione su Internet
(http://it.wikipedia.org/wiki/Request_for_Comments)
 supporta a livello organizzativo e tecnico la partecipazione di soggetti diversi
nella standardizzazione di eventi e tracciati informativi

Attuatori
 Comitato eToscana, Centro Tecnico, partecipanti ai singoli standards
25/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09
26/38
eToscana compliance
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

RFC infrastrutturali e applicative
RFC applicative
 Definiscono standards sull’uso dell’infrastruttura in un dominio applicativo
 RFC81 - COMET: Ciclo di vita delle sperimentazioni cliniche

RFC Infrastrutturali
 Definiscono standards legati alla infrastruttura e al suo governo
 RFC17 – struttura di una RFC applicativa
27/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09
28/38
RFC81: sperimentazioni cliniche
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09
29/38
RFC17: RFC Applicativo e.Toscana
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Dalle RFC al sistema-delle-RFC
Oltre 100 RFC standardizzate o in via di standardizzazione
 Complessità di ricerca e garanzia di consistenza
30/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Sistema di indicizzazione semantica
Annotare i tracciati rispetto a modelli ontologici
 In principio possibile sostituire XSD con ontologie
 Non conveniente per ragioni di pratica e legacy

Casi d’uso abilitati
 verificare se una nuova RFC
è consistente rispetto all’insieme
di quelle che la precedono
 ricerca di una o più RFC
che insistono su un concetto,
ad esempio per identificare l’insieme dei tracciati impattati da una modifica;
 costruzione di filtri capaci di verificare la consistenza semantica dei contenuti
di messaggi scambiati sul CART (prospettiva di sperimentazione).

31/38
Possibile integrazione con catalogo schemi e ontologie in CG-SICA
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Un caso applicativo
Gestione delle sperimentazioni cliniche
 Processo interno ad un Centro di Sperimentazione
 Cooperazione con i sistemi informativi Ragionale e Nazionale



32/38
Problema delle procedure
Architettura di workflow management
Cooperazione
Un caso di cooperazione
applicazione di gestione delle sperimentazioni cliniche
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Un progetto della Azienda Ospedaliera Universitaria Careggi (AOUC)
 sostenuto da RT nell'ambito di DGR 788/2006 –
 Migliorare e potenziare i settori preposti alla ricerca biomedica,
 in particolare il Comitato Etico per la sperimentazione clinica dei medicinali

Sottoprogetto
 Automazione della gestione del flusso delle attività
nel processo di sperimentazione clinica

People:
 Daniela Matarrese, Lorenzo Bartoli, Cristina Berdondini, Riccardo Sforza
 Pierangelo Geppetti, Alessandro Mugelli, Silvia Benemei, Michele Vietri
 Enrico Vicario, Fabrizio Baldini, Graziella Magnolfi, Jacopo Baldanzi,
Valeriano Sandrucci
33/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Esiti e sviluppi
In uso presso AOUCareggi
 Richiesta da vari altri Centri di Sperimentazione in Toscana
 Un caso di successo
 Un centinaio di centri di sperimentazione in Italia (11 solo in Toscana)

Sviluppi
 Integrazione con anagrafe pazienti, estensione al profilo scientifico
 Integrazione con AIFA
• Il problema del doppio debito informativo

I soggetti coinvolti nell’integrazione con AIFA
 AIFA (Ministero Affari Sociali)
• CINECA
 CNIPA
 Regione Toscana
• Azienda Ospedaliera Universitaria di Careggi
• Stlab.unifi
34/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09
XML - comunicazione COMET
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<NotificaRichiestaAutorizzazioneSperimentazione xmlns="http://regione.toscana.it/sanita/comet/">
<IdUniversale>AOUCMonocentrica1227116844281</IdUniversale>
<SIL_Mittente>SPCAslTest_SPCRegioneToscana_SPCSISComet_SIL_F</SIL_Mittente>
<DataPubblicazione>2008-11-19+01:00</DataPubblicazione>
<CodiceSperimentazione>AOUCMonocentrica</CodiceSperimentazione>
<StrutturaSperimentazione>
<Pubblica tipoStruttura="AOU">
<Codice>090903</Codice>
<Descrizione>Azienda Ospedaliera Universitaria Careggi</Descrizione>
</Pubblica>
</StrutturaSperimentazione>
<Organizzazione>
<Codice>7</Codice>
<Descrizione>Gianfranco Gensini</Descrizione>
</Organizzazione>
<OggettoSperimentazione>DANTE
Dual ANtiplatelet therapy Tailored on the Extent of platelet inhibition</OggettoSperimentazione>
<ComitatoSperimentazione>COMITATO ETICO PER LA SPERIMENTAZIONE CLINICA DEI MEDICINALI
DELL'AZIENDA OSPEDALIERO-UNIVERSITARIA CAREGGI DI FIRENZE</ComitatoSperimentazione>
<SperimentazioneClinica tipoSperimentazioneClinica="Farmacologica">
<ClassificazioneFarmaco/>
<Farmaco>
<Descrizione>clopidogrel</Descrizione>
<ATC5>B01AC04</ATC5>
</Farmaco>
</SperimentazioneClinica>
<Modalita>Monocentrica</Modalita>
<Fase>III: pazienti (molti)</Fase>
<Ambito></Ambito>
<Destinatari>
<Sesso>
<Maschi>true</Maschi>
<Femmine>true</Femmine>
</Sesso>
<Eta>
<Adulti_da_18_a_44>true</Adulti_da_18_a_44>
</Eta>
</Destinatari>
<DisegnoStudio tipoDisegnoStudio="Random">
<Aperto-Cieco>Aperto</Aperto-Cieco>
<Controllo>Si</Controllo>
</DisegnoStudio>
<Placebo>No</Placebo>
<OrganizzazionePromotore>No profit</OrganizzazionePromotore>
</NotificaRichiestaAutorizzazioneSperimentazione>
35/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Passi
 flusso AIFA
(D.Min.Sett.08)
 applicazione di ricezione
con interfaccia applicativa
 Registrazione CG-SICA
(accordo di servizio +
modello ontologico)
 Estensione del flusso
regionale COMET
per includere flusso AIFA
(nuova RFC)
 Estensione applicazione
gestione sperimentazioni
cliniche
 Gateway CART/AIFA
tramite CG-SICA
36/38
Architettura di integrazione
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Ricadute
Integrazione tra Centro Sperimentazione Clinica e AIFA via CG-SICA
 Applicabile a un centinaio di centri di sperimentazione clinica

Sperimentazione di uso del CG-SICA
 Accordo di servizio
 Catalogo delle ontologie
 Porta di dominio

Sperimentazione di una soluzione di integrazione CART/CG-SICA
 Un gateway attestato sul CART agisce da sostituto
nell’assolvimento del debito informativo verso AIFA
 Sperimentazione di trasferimento da catalogo RFC-eToscana
a modelli ontologici su CG-SICA
 Valorizza l’architettura CART
 La integra con CG-SICA
37/38
Enrico Vicario – www.dsi.unifi.it/~vicario
SPC – Roma3 - Gen.09

Circa l’astrazione e la concretezza
 - Ma qual’è la pietra che sostiene il ponte?
- Il ponte non è sostenuto da questa o quella pietra,
ma dalla linea dell’arco che esse formano.
- Perché mi parli delle pietre?
E’ solo dell’arco che m’importa.
- Senza pietre non c’è arco.
Italo Calvino, Le città invisibili.

Di cosa parliamo?
 Strumenti e metodi di ingegneria del SW, Architetture SW,
Cooperazione applicativa, UML, Java, Tecnologie
Reti di calcolatori, Sicurezza, Telematica,
Pratica del collaudo, Metodi di testing, Gestione dei contratti,
…
38/38
Conclusioni
Scarica

Le ricadute dell`innovazione sul territorio: regione Toscana