Scenari di integrazione fra sistemi informativi nella pubblica

Scenari di integrazione
fra sistemi informativi
nella pubblica amministrazione
Enrico Lodolo
[email protected]
1
Informatizzazione a isole
ƒ In tutte le organizzazioni l’informatizzazione è nata e si
è sviluppata in modo non organico, per stratificazioni
successive
ƒ La prima area ad essere informatizzata è stata di solito
quella contabile
ƒ In seguito si è passati alla logistica (magazzino) e alla
gestione della produzione (o equivalente)
ƒ Nel contempo si sono diffuse applicazioni “locali”:
produttività individuale (Office), piccoli applicativi
realizzati ad hoc per automatizzare singole funzioni
ƒ Si parla di modello di informatizzazione ad isole
ƒ E’ basato su una logica di tipo funzionale: si
automatizzano le singole funzioni
2
1
Esempio: il modello a isole in un’
un’Università
Università
Contabilità
Patrimonio
Personale
Ricerca
Formazione
3
Ragioni del modello ad isole
ƒ E’ naturale che in una fase di prima informatizzazione
si proceda in questo modo:
ƒ Partendo da zero è già difficile riuscire a trovare
modalità efficaci per automatizzare le singole
funzioni
ƒ Rispetto ad una gestione manuale si hanno
comunque vantaggi importanti
ƒ Inoltre questo modello non presenta particolari
criticità in situazioni in cui:
ƒ Il sistema informativo è fruito principalmente dalle
persone interne all’amministrazione
ƒ Non si sente una necessità di spingere a fondo
l’automazione perché l’onere della gestione
manuale è suddiviso fra un numero sufficiente di
persone
4
2
Spinte verso l’
l’integrazione
ƒ Una volta raggiunta l’automazione delle singole
funzioni si sente una naturale spinta ad andare oltre e
a ragionare in termini di integrazione di processo
ƒ Inoltre negli ultimi anni sono entrati in gioco due fattori
dirompenti
ƒ L’allargamento del sistema agli utenti finali
(cittadini, studenti) portata dalla diffusione di
Internet
ƒ La riduzione delle risorse umane disponibili - a
fronte spesso di un aumento di complessità - che ha
fatto percepire la necessità di eliminare le attività
svolte manualmente
5
L’impatto degli utenti finali
ƒ L’erogazione di servizi al cittadino per via telematica
cambia radicalmente la prospettiva del sistema
ƒ Il sistema informativo visto dal punto di vista del
cittadino è spesso molto diverso da quello visto
dall’organizzazione interna:
ƒ Si mettono in “corto circuito” funzioni che erano
originariamente parte di isole diverse
ƒ Si devono correlare dati provenienti da fonti diverse
(e spesso non consistenti in termini di codifiche)
ƒ Nasce l’esigenza di modellare in modo efficace
processi interarea
ƒ La costruzione di uno sportello unico è un esempio
tipico di questo tipo di evoluzione
6
3
Una piccola storia dell’
dell’integrazione fra sistemi…
sistemi…
Livello di integrazione
Orchestr.
Orchestr.
ESB
ESB
Applicazioni
Stored
Stored
procedures
procedures
Dati
File
Filedidi
scambio
scambio
LAN
LAN
unica
unica
Rete
Nessuno
1970
RDBMS
RDBMS
eeallineamenti
allineamenti
batch
batch
Web
Web
Services
Services
Consolidamento
Consolidamento
DB
DB
Internet
Internet
Intranet
Intranet
Extranet
Extranet
Reti
Retilocali
locali
(LAN)
(LAN)
aaisole
isole
Isole
Isolenon
non
integrate
integrate
1980
1990
2000
2010
7
Integrazione a livello di rete
ƒ E’ un processo che si può considerare ormai concluso
ƒ Con l’avvento di Internet si ha ormai ovunque un’unica
rete (Intranet), che si estende spesso al di fuori
dell’organizzazione ai partner (Extranet) o al mondo
intero (Internet)
ƒ La presenza della rete consente una prima forma di
integrazione:
ƒ Si possono scambiare dati mediante file di scambio
emessi da un sistema e importati in un altro
ƒ E’ un integrazione molto debole: fuori linea, con
cadenza al più giornaliera, unidirezionale
8
4
Il modello a isole con integrazione di rete
Contabilità
Patrimonio
File
Filedidiscambio
scambio
Personale
Ricerca
Formazione
9
Integrazione fra sistemi…
sistemi…
Livello di integrazione
Orchestr.
Orchestr.
ESB
ESB
Applicazioni
Stored
Stored
procedures
procedures
Dati
File
Filedidi
scambio
scambio
LAN
LAN
unica
unica
Rete
Nessuno
1970
RDBMS
RDBMS
eeallineamenti
allineamenti
batch
batch
Web
Web
Services
Services
Consolidamento
Consolidamento
DB
DB
Internet
Internet
Intranet
Intranet
Extranet
Extranet
Reti
Retilocali
locali
(LAN)
(LAN)
aaisole
isole
Isole
Isolenon
non
integrate
integrate
1980
1990
2000
2010
10
5
Integrazione a livello di database
ƒ Con la diffusione dei database relazionali è iniziato
negli anni ’80 un processo di integrazione a livello di
dati
ƒ Gli RDBMS consentono modalità di scambio dati più
strette dei file di scambio:
ƒ Repliche asincrone e sincrone
ƒ DBLink
ƒ …
ƒ Negli anni ’90 si è passati ad un consolidamento dei
database
ƒ Non più tanti database separati fisicamente ma un
solo DB con divisioni di tipo logico (schema)
ƒ Si ha una effettiva condivisione dei dati
ƒ E’ un processo tuttora in corso
11
Il modello a isole con DB consolidati
Contabilità
Patrimonio
Personale
Ricerca
Formazione
12
6
Limiti dell’
dell’integrazione a livello di DB
ƒ L’integrazione a livello di DB, pur rappresentando un
notevole passo avanti, non risolve tutti i problemi
ƒ Rimangono aperte diverse questioni:
ƒ Duplicazione della logica applicativa: le diverse
applicazioni che accedono alla stessa base di dati
sono costrette a replicare una parte consistente di
codice (business logic)
ƒ Accoppiamento troppo stretto: se la base dati di
un’applicazione cambia tutte le altre applicazioni
che vi accedono risentono dei cambiamenti
ƒ Difficoltà di distribuzione su scala geografica. Se i
sistemi non sono collocati nello stesso luogo e se
non si ha a disposizione una banda molto ampia ci
sono grossi problemi di prestazioni e sicurezza.
13
Integrazione fra sistemi…
sistemi…
Livello di integrazione
Orchestr.
Orchestr.
ESB
ESB
Applicazioni
Stored
Stored
procedures
procedures
Dati
File
Filedidi
scambio
scambio
LAN
LAN
unica
unica
Rete
Nessuno
1970
RDBMS
RDBMS
eeallineamenti
allineamenti
batch
batch
Web
Web
Services
Services
Consolidamento
Consolidamento
DB
DB
Internet
Internet
Intranet
Intranet
Extranet
Extranet
Reti
Retilocali
locali
(LAN)
(LAN)
aaisole
isole
Isole
Isolenon
non
integrate
integrate
1980
1990
2000
2010
14
7
Web Services e SOA
ƒ Gli strumenti di integrazione a livello applicativo si
pongono come obiettivo il superamento dei limiti
dell’integrazione a livello di DB
ƒ Lo strumento principale per l’integrazione a livello
applicativo è costituito dai Web Services
ƒ I WS consentono ad un’applicazione di accedere
direttamente a “servizi” resi disponibili da un’altra
applicazione
ƒ Consentono di avere un livello di astrazione molto
maggiore
ƒ Consentono di integrare anche sistemi distribuiti su
scala geografica non necessariamente integrati a
livello di DB
ƒ Sono le fondamenta di quelle che vengono
comunemente chiamate SOA (Service Oriented
Architectures).
15
Il modello a isole con frontiere applicative
Contabilità
Patrimonio
Le
Leapplicazioni
applicazioni
espongono
espongonodei
dei
“connettori”
“connettori”sotto
sotto
forma
di
Web
Services
forma di Web Services
Ricerca
Personale
Formazione
SiSiriducono
riduconodidi
parecchio
parecchiogli
gliaccessi
accessi
diretti
direttiaiaidati
datididialtre
altre
applicazioni
applicazioni
16
8
Vantaggi e limiti del modello a frontiere applicative
ƒ Può essere applicato con uno sforzo ragionevole
anche con applicazioni non predisposte (legacy)
ƒ Però:
ƒ Se non si fa attenzione si crea un reticolo di
connessioni che tende a diventare molto complesso
ƒ Si tende a ragionare ancora su un’organizzazione di
tipo funzionale con applicazioni monolitiche (silos)
ƒ Non sempre si riescono a modellare bene i processi
che attraversano le varie aree
ƒ Comunque è un primo passo importante e già arrivare
a questo livello dà molti vantaggi
17
SOA: uno scenario ideale
ƒ Database consolidati e integrati
ƒ Centralizzazione della logica applicativa con Web
Services
ƒ Organizzazione per processi con workflow
ƒ Gestione dei processi interarea
ƒ Richiede software progettato in logica SOA
SOA
Front-end
Front-end
applicativo
applicativo
Processi
Processi
(anche
(ancheinterarea)
interarea)
Logica
Logica
applicativa
applicativa
comune
comune
ESB,
ESB,
Workflow,
Workflow,
Orchestrazione
Orchestrazione
Ricerca
Contabilità
Personale
Formazione
Web
Web
services
services
DB
DBConsolidati
Consolidati
18
9
La situazione reale
ƒ Non è pensabile sostituire interamente i sistemi
esistenti con un nuovo sistema integrato o con sistemi
già interamente predisposti per un’integrazione a
livello applicativo.
ƒ Bisogna confrontarsi con una situazione mista:
ƒ Sistemi “legacy” che sarebbe troppo oneroso
sostituire
ƒ Nuove applicazioni scritte ad hoc
ƒ Nuove applicazioni standard acquisite sul mercato
19
Una strategia mista
ƒ Di conseguenza avremo una strategia di integrazione
mista:
ƒ Creazione di frontiere applicative per le
applicazioni legacy
ƒ Uso di tecnologie SOA per lo sviluppo di nuove parti
del sistema
ƒ Attenzione alle specifiche SOA nella scrittura dei
capitolati di gara per le applicazioni acquistate
20
10
Un piano per l’
l’integrazione
ƒ E’ fondamentale che ogni nuovo intervento entri a far
parte di un quadro generale: un ecosistema software
ƒ Per ogni intervento bisogna valutare gli aspetti di
integrazione e l’impatto complessivo
ƒ Ogni nuova funzionalità deve essere contestualizzata
in un processo e nel modello generale
21
Modello di integrazione UNIBO
ƒ Nel 2004 si è cominciato a ragionare su un modello di
integrazione in grado di superare la frammentazione
esistente
ƒ E’ iniziato quindi un lavoro di analisi con l’obiettivo
di definire un modello generale di sistema
informativo integrato
ƒ E’ stata inoltre realizzata una mappa dei sistemi e
dei processi
ƒ Questi due strumenti rappresentano il quadro di
riferimento per:
ƒ Inserimento di sistemi di nuova acquisizione (PAL)
ƒ Rifacimento di applicativi specifici del mondo
universitario (programmazione didattica)
ƒ Integrazione più stretta dei sistemi esistenti con
interventi mirati
22
11
Modello generale: l’
l’obiettivo
Cerca
Cercadi
dipianificare
pianificare
quello
quelloche
cheavverrà
avverrà
Descrive
Descrive
tempestivamente
tempestivamente
quello
quelloche
chesta
sta
avvenendo
avvenendo
Registra
Registraaa
posteriori
posteriori
quello
quelloche
cheèè
avvenuto
avvenuto
Sistema integrato
++progetti
progetti
++strumenti
strumentidi
di
pianificazione
pianificazione
eecontrollo
controllo
Sistema gestionale
Sistema contabile
++cicli
cicli
gestionali
gestionali
23
Modello generale: struttura a livelli
Pianificazione
Controllo
Livello
Livellodidipianificazione
pianificazioneeecontrollo
controllo
Progetti
Livello
Livellodei
deiprogetti
progetti
Cicli gestionali
Livello
Livellodei
deicicli
cicligestionali
gestionali
Motori personale
Motori contabili
Motori gestione beni
Livello
Livellodei
deimotori
motori
Anagrafiche
Movimentazioni
Livello
Livellodelle
delleanagrafiche
anagraficheeedelle
dellemovimentazioni
movimentazioni
24
12
Modello generale: quadro di insieme
Pianificazione
Controllo
Pianificazione strategica
Budget
Preventivo finanziario
Controllo di
gestione
Cash flow
e liquidità
Progetti
Ricerca
Didattica
Patrimonio
Ciclo attivo
Ciclo passivo
Interni
Cicli gestionali
Cicli del personale
Motori personale
Stipendi
e
compensi
Motori contabili
Risorse
umane
COFI
Cicli studenti
Motori gestione beni
COGE
COAN
Anagrafiche
Magazzino Inventario
Patrim.
Movimentazioni
Struttura org.
e pianta org.
Persone
…
Scritture
contabili
…
Eventi di
carriera
…
25
Mappa dei sistemi
Portale
Guide
Web
Struttura
org.
…
Gestioni
esterne
Ricerca
PRIN
Formazione
Segreterie
AlmaWelcome
Valutazione
…
Plitvice
Uniwex
…
Personale
IFN
Presenze/assenze
App. locali
…
Patrimonio
Banca
SAI
Area contabile
PAL
CIA
26
13
Integrazione applicativa: una nuova mappa dei sistemi
Portale
Guide
Web
Struttura
org.
…
Ricerca
Gestioni
esterne
PRIN
Formazione
Segreterie
AlmaWelcome
Valutazione
…
Plitvice
Uniwex
…
Personale
IFN
Presenze/assenze
App. locali
Interfacce sincrone
Interfacce sincrone
+
+
processi
processi
…
Patrimonio
Banca
SAI
Area contabile
PAL
CIA
27
Fine
Grazie per l’attenzione
28
14
Linee guida per le applicazioni
ƒ Per garantire una sempre maggior integrazione fra i
sistemi è necessario che le nuove applicazioni
seguano una serie di linee guida
ƒ In questo modo possono entrare a far parte di un
unico grande disegno
ƒ Le linee guida prevedono (tra l’altro):
ƒ Autenticazione su DSA (in modalità sicura)
ƒ Dati su DB Oracle
ƒ Interfaccia utente e modalità di interazione
standardizzate (allineate al portale)
ƒ Non replicazione delle regole e della logica
applicativa (utilizzo quindi web services o, in
subordine, stored procedures per accedere alla
logica già esistente)
29
Esempio: offerta formativa, mappa dei processi
Costituzione
CdS
Gestione
ordinamenti
Informativo
Descrizione CdS
Pianificazione
Operativo
Definizione
manifesti
Regolamenti
Regole piani
Programmaz.
Didattica
Descrizione AF
Pubblicazione
Guide
Coperture
Elaborazione
carriera
Erogazione
Diploma
supplement
Contratti
Registri
Compensi
Immatricolazione
Piani di studio
Trasferimento
in ingresso
Esami
30
15
Esempio: nuova applicazione predisposta per SOA
Utenti
Altri sistemi
(Portale, Uniwex, MIUR ecc.)
Interfaccia utente
(JSF – ADF Faces)
Web Services
(AXIS)
Corsi i studio
E ordinamenti
Attività formative
(Session Beans)
Presentazione
Regole
dei piani di studio
Session Beans
Logica applicativa
(Business Logic)
Mappatura object-relational
(Toplink)
Persistenza
Database dell’area della formazione
31
Esempio: frontiera del sistema contabile (legacy
(legacy))
Formazione
(Plitvice e segreterie)
Ricerca
Web Services
Web Services
PRIN
PRIN
Assegni
Assegnididi
ricerca
ricerca
Borse
Borse
……
Coperture
Coperture
Rimborsi
Rimborsi
studenti
studenti
Convenzioni
Convenzioni
CAF
CAFeeMaster
Master
……
Frontiera applicativa
CIA
…
Stored
Stored procedures
procedures
Viste
Viste
Personale
PAL
Contratti
Contratti
personale…
personale…
Costruzioni
Costruzioni
Acquisizioni
Acquisizioni
Cessioni
Cessioni
Manutenzioni
Manutenzioni
…
…
32
16
Esempio misto: didattica e coperture
Regolamenti
Regole piani
Nuova
applicazione
pensata
per SOA
Programmaz.
Didattica
Coperture
Formazione
Frontiera
Frontiera
applicativa
applicativadidiIFM
IFM
Contratti
Personale
Frontiera
Frontiera
applicativa
applicativadidiCIA
CIA
Applicazioni
legacy
Scadenziario
passivo
Compensi
Ragioneria
33
Convenzioni alta formazione (CAF e Master)
Immatricolazione
Master/CAF
(AlmaWelcome)
Pagamento
UNICREDIT
Convenzione
con azienda
Impianto
tasse
Formazione
Frontiera
Frontiera
applicativa
applicativadidiCIA
CIA
Flusso
FlussoBanca
Banca
(file
(filedidiscambio!)
scambio!)
Contratto
attivo
Gestione
tasse
Contabilità
Nota di
contabile
per azienda
Scadenziario
attivo
Incasso azienda
e studenti
34
17