UNIVERSITA’ DEGLI STUDI DI CAGLIARI
FACOLTA’ DI SCIENZE MATEMATICHE, FISICHE E NATURALI
CORSO DI LAUREA IN INFORMATICA
Metodi e strumenti per l’implementazione di SI
basati su WEB: il caso del protocollo informatico
nelle Pubbliche Amministrazioni.
Relatore:
Tesi di laurea di:
Prof.ssa Nicoletta Dessì
Gessica Flore
Maria Giuseppina Tola
ANNO ACCADEMICO 2001/2002
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
INDICE
INDICE ................................................................................. 2
PRESENTAZIONE .............................................................. 4
1. INTRODUZIONE.......................................................... 5
1.1 I SISTEMI INFORMATIVI BASATI SU WEB .............................. 5
1.2 PROBLEMATICHE DEI SISTEMI WIS ........................................ 9
1.3 WEB E DATABASE ....................................................................... 12
2. GLI STRUMENTI ....................................................... 18
2.1 LE BASI DI DATI ........................................................................... 18
2.1.1 Database basati su architettura client/server .............................. 18
2.1.2 Le transazioni e il controllo della concorrenza .......................... 24
2.2 LE RETI ........................................................................................... 32
2.2.1 La rete Internet ........................................................................... 32
2.2.2 Sicurezza .................................................................................... 47
2.3 GLI ASPETTI IMPLEMENTATIVI ............................................... 51
2.3.1 ERD (Diagramma Entità Relazione).......................................... 51
2.3.3 ASP (Application Service Provider) .......................................... 54
2.3.4 JMS E XML ............................................................................... 56
3. UN CASO DI STUDIO ................................................ 67
3.1 INTRODUZIONE ........................................................................... 67
3.2 ATTIVITA’ DI PROTOCOLLAZIONE ......................................... 69
2
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
3.1.1 Gestione dell’archivio ................................................................ 71
3.1.2 Attuali implementazioni ............................................................. 75
3.2 ANALISI E PROGETTO ................................................................ 78
3.3 IMPLEMENTAZIONE ................................................................... 91
3.4 LA FASE DI TEST .......................................................................... 92
GLOSSARIO ...................................................................... 94
ALLEGATI ....................................................................... 110
DIZIONARIO DEI DATI (DD) .......................................................... 110
3
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
PRESENTAZIONE
I recenti e continui sviluppi delle tecnologie informatiche hanno indotto profondi
mutamenti nelle modalità di progettazione di un sistema informativo aziendale.
Da una concezione basata su un’architettura centralizzata e locale, si sta
rapidamente passando a concepire l’insieme dei documenti aziendali come
archiviati in un sistema distribuito in rete. Pertanto non è importante che il
database server sia di proprietà aziendale ma che il service per la gestione dei
documenti sia efficacemente gestito.
Questa tesi presenta una rassegna degli strumenti e dei metodi relativi alla
progettazione di un database distribuito. Tale rassegna è di supporto alla
progettazione di un Protocollo Informatico nelle Pubbliche Amministrazioni che
viene esposto come caso di studio ricco d’interessanti problematiche.
4
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
1. INTRODUZIONE
1.1 I SISTEMI INFORMATIVI BASATI SU WEB
I
l progresso
tecnologico ha portato cambiamenti enormi nell'impiego
dell'informatica al servizio del business delle aziende. Oggi si assiste ad
una diffusione straordinaria degli strumenti e ad una crescita notevole della
cultura informatica, tuttavia il computer in azienda non è ancora abbastanza
amichevole.
Un sistema informativo di un’organizzazione (azienda, comune, ferrovie, etc.) è
una combinazione di risorse umane e materiali (computer, dispositivi, carta, etc.)
e di procedure organizzate per la raccolta, l’archiviazione, l’elaborazione e lo
scambio d’informazioni necessarie alle
 Attività operative (informazioni per il funzionamento normale)
 Attività di gestione (informazioni strategiche)
 Attività di programmazione, controllo e valutazione (garantire il prodotto
al cliente).
5
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
La diffusione crescente del World Wide Web e la capillare penetrazione della
tecnologia ad esso connessa sta generando notevoli cambiamenti nella gestione
ed organizzazione delle informazioni di moltissime attività, con un considerevole
impatto sul sistema informativo di molte aziende. D’altra parte, la crescente
affidabilità di strumenti e tecniche generati dalla “rivoluzione WEB” rende
sempre più conveniente basare lo sviluppo di nuove applicazioni su questa
tecnologia, soprattutto per i grossi vantaggi forniti in termini di scalabilità e
distribuzione.
Nel corso degli anni i “siti WEB” si sono raffinati ed arricchiti di servizi
trasformandosi in strumenti sempre più complessi, che spesso affiancano il
sistema informativo, là dove presente, o ne costituiscono il nucleo iniziale,
sebbene a volte in maniera confusa. Nuove esigenze di applicazioni realizzate
per il WEB, ad esempio la possibilità di accedere a basi di dati aziendali rende
sempre più necessario un ripensamento dei sistemi informativi per le
organizzazioni.
Negli ultimi anni, la tecnologia WEB è cresciuta a ritmi impressionanti
trasformando i vari “siti” da semplici finestre nell’area marketing a piattaforme
capaci di supportare tutti gli aspetti di un’attività organizzata. L’opportunità di
utilizzare la piattaforma WEB, per la realizzazione di sistemi informativi, offre
notevoli
benefici,
sebbene
ponga
nuove
problematiche
per
la
loro
implementazione. Un sistema informativo basato sul WEB (WIS) è un sistema la
cui implementazione e gestione avviene tramite l’utilizzo della tecnologia WEB.
Esiste una chiara differenza tra un WIS ed un insieme di pagine WEB. Nei primi
le varie componenti (es. gestore di basi di dati, processi delle transazioni, ecc.)
sono strettamente integrate e consentono di svolgere attività preposte al buon
6
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
funzionamento di un’organizzazione. Rispetto ad un sistema informativo
tradizionale, un WIS è un sistema aperto in cui le informazioni assumono forme
sempre più complesse, grazie alle caratteristiche intrinseche della tecnologia
WEB, con la quale si ottiene una maggiore capacità di adeguarsi con efficienza
ai mutamenti.
Una caratteristica fondamentale del WIS è la potenzialità di raggiungere una
comunità enormemente più ampia di quella delle tradizionali realizzazioni
client/server basati su rete proprietarie, consentendo l’accesso ad informazioni e
funzioni anche ad utenti occasionali. Tale possibilità è enfatizzata dalle
caratteristiche intrinseche della tecnologia WEB: standard aperti e software
molto spesso gratuito e facilmente disponibile. Questa caratteristica risulta
estremamente interessante per organizzazioni che abbiano una struttura
distribuita su un territorio molto ampio o che intendono allargare la propria
attività al cosiddetto e-Business. Un’altra area rilevante per la realizzazione del
WIS è costituita dalle istituzioni pubbliche. Queste raccolgono, generano e
distribuiscono, in generale, una gran quantità di informazioni, la cui conoscenza
può risultare molto importante per i cittadini e per le imprese. Questi sistemi,
chiamati Public Access WIS (PAWIS) hanno una caratteristica da cui non si può
prescindere: l’accesso universale, cioè la possibilità di utilizzare i servizi o di
accedere ai documenti pubblici deve essere fornita a tutti, a prescindere
dall’esperienza e dalle dotazioni hardware dell’utilizzatore.
In un WIS si possono riconoscere alcuni sottosistemi fondamentali:
a) Il sottosistema di gestione delle comunicazioni.
b) Il sottosistema di gestione delle interazioni uomo/macchina.
c) Il sottosistema di gestione dei dati.
7
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Tali sottosistemi hanno caratteristiche peculiari che differenziano un WIS da un
Sistema Informativo tradizionale e che si prendono di seguito in considerazione.
a) Gestione della comunicazione. La rete Internet ed il protocollo TCP/IP
non pongono limiti geografici o hardware/software all’espansibilità del
sottosistema di gestione delle comunicazioni.
b) Interazione uomo-macchina. Le più importanti caratteristiche del
sottosistema di gestione delle interazioni uomo-macchina di un WIS sono
costituite dall’universalità dei Browser grafici e dalla possibilità di
utilizzare codice multipiattaforma per la realizzazione della componente
client del sistema. Questo non solo semplifica notevolmente lo sviluppo
delle interfacce utente, che non sono più vincolate ad architetture
hardware o software, ma facilita anche la distribuzione e l’installazione
delle stesse.
c) Gestione dei dati. Per quanto riguarda il sottosistema di gestione dei dati
di un WIS, la situazione è molto più complessa. In un sistema informativo
tradizionale, di solito, esso è realizzato tramite l’uso di un DBMS, che
implementa lo schema della base di dati. In tale situazione, ogni proprietà
dello schema ha una corrispondenza diretta con una proprietà del database
implementato (cioè l’attributo di una relazione). In un WIS, la
corrispondenza univoca tra schema e proprietà del database non è più
fissata a priori a causa della presenza di URL. Le URL possono essere
viste come particolari tipi di dato, che oltre ad avere proprietà ed
operazioni proprie, ereditano proprietà ed operazioni dei tipi di dato da
essi connessi (linkati) e del tipo di server/protocollo cui fanno riferimento.
Le URL possono essere interpretate come puntatori a informazioni
8
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
memorizzate in gestori dei dati che possono essere DBMS, file system,
programmi che generano documenti on the fly.
1.2 PROBLEMATICHE DEI SISTEMI WIS
A
ffinché sia possibile realizzare un WIS efficiente ed efficace è
necessario affrontare alcune problematiche non presenti nei sistemi
informativi tradizionali. La progettazione di un WIS deve contemplare non solo
la distribuzione delle informazioni ma anche l’integrazione con altri strumenti
per svolgere compiti complessi, come supporto al lavoro cooperativo o al
sistema di regolazione e controllo di un’organizzazione. La percezione stessa, da
parte dell’utente, del WIS come un sistema integrato di servizi e funzionalità è
un elemento fondamentale per la sua accettazione e per il suo successo. Alcune
problematiche presenti nelle tradizionali applicazioni basate sul WEB (i
cosiddetti Siti), a cui la tecnologia WIS dovrebbe essere in grado di fornire
risposte adeguate sono:
Meccanismi di ricerca. La realizzazione di un buon motore di ricerca per un
WIS deve contemplare la possibilità di definire facilmente ed efficacemente filtri
ben realizzati tramite interfacce utenti chiare che “guidino” nella compilazione di
interrogazioni (query) prive di ambiguità. Il motore deve fornire suggerimenti
alternativi in caso di ricerche con esito negativo e contemplare la possibilità di
affinamenti successivi dei filtri di ricerca.
9
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Lentezza nel trasferimento dati. L’adozione di opportune tecniche di
bilanciamento del carico tra client e server tramite l’utilizzo di codice mobile ed
opportuni protocolli di comunicazione possono migliorare le prestazioni del
sistema.
Supporto per il lavoro cooperativo. Un sistema informativo basato sul WEB
deve supportare sia la collaborazione asincrona (condivisione dei dati tra più
soggetti, ciascuna impegnato in una sessione di lavoro individuale), che sincrona
(condivisione simultanea dei dati tra più soggetti impegnati in una sessione di
lavoro collettiva). L’integrazione tra WEB e strumenti di lavoro collaborativi è,
ad oggi, ancora nella fase iniziale. La scelta tra le diverse soluzioni dipende dal
particolare tipo d’interazione che si vuole ottenere e da altri fattori quali
l’esperienza degli utenti e/o la dotazione hardware. I maggior problemi per la
realizzazione di una soluzione efficiente, derivano dalle peculiarità del
protocollo HTTP, che utilizza un modello di comunicazione strettamente
client/server. Questo modello è adatto per l’accesso alle risorse ma non è
sicuramente adatto ad attività di lavoro cooperativo. Ad esempio nel modello
client/server il client deve eseguire accessi per verificare l’avvenuta modifica
delle risorse.
Meccanismi di caching locale. I meccanismi di accumulazione locale
implementati dagli attuali Browser sono mirati essenzialmente a limitare, se
possibile, il trasferimento di pagine da visualizzare. Questi meccanismi sono
abbastanza poveri e limitano notevolmente il loro utilizzo senza la necessità di
avere una connessione attiva (off line). Un WIS deve prevedere dei sofisticati
meccanismi di accumulazione locale delle informazioni mirati all’utilizzo delle
10
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
applicazioni il più possibile off line, soprattutto per quelle situazioni in cui la
connessione alla rete avviene su linea commutata.
Gestione dei link. La gestione ed il controllo dei link è un aspetto molto
importante nella realizzazione dei grandi sistemi hypermediali, come i WISs. La
tecnologia WEB presenta attualmente dei limiti che ne impediscono una
efficiente gestione. Il limite più grosso è sicuramente legato al fatto che siano
inseriti all’interno del documento. Infatti, questa caratteristica comporta i
seguenti problemi:
- è molto difficile realizzare degli strumenti per la gestione, il controllo e/o
l’aggiornamento dei link.
- senza l’interpretazione del contesto non è semplice risalire dai link alle
relazioni esistenti tra le diverse parti del sistema.
Questo rende molto difficile sia la realizzazione di ricerche basate sulle relazioni
tra i diversi documenti, sia ricavare ”a posteriori” le proprietà degli oggetti
puntati. Questo secondo punto è molto importante, infatti, una corretta
implementazione del sottosistema di gestione dei dati può avvenire solo
conoscendo tutte le proprietà dei dati coinvolti. Una soluzione per ovviare a
questi inconvenienti è il pieno uso di un formalismo più strutturato, come XML.
Sicurezza ed autenticazione. La sicurezza e la gestione sicura dei dati sono tra i
principali problemi da risolvere. In un sistema informativo tradizionale ci sono
più tipologie di utenti ciascuna con specifici “diritti”, inoltre vengono eseguite
transazioni che spesso coinvolgono dati critici, è necessario quindi implementare
accuratamente i meccanismi di protezione e di gestione della sicurezza. In un
WIS l’implementazione dei meccanismi di sicurezza può risultare complessa.
Infatti, se i firewall o altri meccanismi di protezione software possono risultare
11
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
efficaci nell’impedire tentativi di intrusione nei computer o nelle reti, essi non
forniscono alcun aiuto per la sicurezza delle transazioni ed in generale per la
sicurezza delle funzioni di un sistema informativo. Affinché un WIS possa
considerarsi sicuro è necessario che siano implementate le seguenti condizioni:
- Confidenzialità: la comunicazione o il flusso delle informazioni tra più
parti deve essere ristretto alle parti stesse
- Autenticazione: ogni soggetto deve essere sicuro dell’identità del suo
interlocutore o dell’origine dell’informazione cui sta accedendo
- Integrità dei dati: i dati non devono poter essere modificati durante il
trasferimento tra i soggetti di una comunicazione
- Accesso ai servizi selettivo: è auspicabile che un soggetto “veda” solo i
servizi a cui può accedere
È possibile oggi implementare in tutto o in parte alcune di queste condizioni
grazie ai protocolli sicuri ed al criptaggio dei dati, tuttavia la tecnologia WEB
non fornisce alcun supporto nativo e molto è lasciato alle singole
implementazioni.
1.3 WEB E DATABASE
Gli antenati degli attuali Database sono i file su scheda la cui nascita coincide
con l’invenzione, nel 1880, delle schede perforate da parte del dr. Herman
Hollerith, che doveva completare l’elaborazione dei dati del censimento entro il
12
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
1890. L’impossibilità di portare a termine il lavoro con i mezzi manuali di
conteggio sino ad allora disponibili lo portò a quest’invenzione. Ebbe cosi inizio
l’era dei file su scheda che rimasero il mezzo principale di memorizzazione dei
dati per i successivi 60 anni. In seguito per semplificare l’utilizzo e la gestione
dei database abbiamo assistito a una serie di sue evoluzioni: dall’unità a nastro
magnetico, nel 1951, all’introduzione dei dischi magnetici nel 1960. Il termine
base di dati (database) in passato è stato utilizzato in modo improprio per
definire insiemi di dati di dimensioni rilevanti. Può essere considerato come: un
insieme integrato di dati inerenti al passato immagazzinati da un computer per
un utilizzo futuro, gestito in modo tale da soddisfare le più svariate necessità dei
propri utenti.
Insieme integrato di dati  Riduzione delle duplicazioni dei dati
Esigenze degli utenti

Strutture di memorizzazione flessibili
Maggiore è la flessibilità, migliore è la capacità del database di far fronte alle
richieste per un lungo periodo di tempo. Un database deve gestire in modo
adeguato le relazioni tra dati diversi e le limitazioni dovute a segretezza e
integrità (limitazioni d’utente) per proteggere i dati contro un utilizzo non
autorizzato e contro aggiornamenti indesiderati.
13
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Terminale
(remoto)
Terminale
(locale)
Terminale
(remoto)
Computer
Altre
periferiche
Configurazione hardware per database
Il database viene solitamente collocato su un’unità ad accesso diretto, come ad
esempio un disco. La configurazione può includere terminali remoti utilizzati
dagli utenti e altre periferiche.
All'epoca dei sistemi centralizzati, le applicazioni risiedevano ed erano eseguite
su unità di grandi dimensioni; l'accesso a queste era possibile solo attraverso un
terminale, cioè un dispositivo il cui unico scopo era quello di "prestare" un
video ed una tastiera all'utente per consentirgli di colloquiare con il sistema.
In seguito sono state introdotte le architetture di tipo client/server, dove
l'applicazione non è più considerata come un blocco unico ma come un insieme
coordinato di elementi eseguiti contemporaneamente da più macchine con ruoli
diversi; da quest'ultimo punto di vista, il modello di rappresentazione classico
delle applicazioni client/server distingue tra presentazione, logica applicativa e
gestione dei dati.
14
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
In questa architettura le applicazioni basate su server comunicano con stazioni di
lavoro client tramite una rete. Gli utenti, a casa o in ufficio, lavorano su
computer client connessi ad Internet per la navigazione e utilizzano programmi
chiamati Browser Web, o semplicemente browser. I server Web spesso si
trovano in ambienti aziendali, sono connessi alla rete Internet ed eseguono
software speciale. Una pagina Web è, generalmente, un file che contiene tag
dell’Hypertext Markup Language (HTML) e testo. Quando un server Web riceve
un messaggio da un Browser che chiede una pagina Web, rimanda al Browser
dell’utente, attraverso Internet, il file HTML richiesto. Il Browser dell’utente
visualizza il file, che si presenta come una pagina formattata in base alle tag
HTML che contiene.
Richiesta della
pagina web
Richiesta della
pagina web
Rete
File HTML della
pagina Web
File HTML della
pagina Web
Browser Web
(computer dell’utente o client)
Server Web
Architettura Web client/server
Il Web è formato da computer nella rete Internet connessi tra loro in modalità
client/server.
Web e database sono due tecnologie che hanno avuto un grande successo, l'una
assicurando la pubblicazione istantanea di informazioni in tutto il mondo, l'altra
permettendo la memorizzazione e il recupero sul proprio computer di grandi
quantità di informazioni. La loro unione permette il facile accesso a enormi
depositi di informazione e sarà la base della prossima fase del Web dove
15
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
assisteremo allo sviluppo di applicazioni come il commercio elettronico, per le
quali questa tecnologia è essenziale.
Le applicazioni di commercio elettronico su WEB sono di grande interesse per
un numero potenzialmente enorme di imprese e di organizzazioni. Il fabbisogno
di siti WEB che consentono un uso intensivo dei dati sta determinando la fusione
fra le tecnologie del WEB e quelle dei database.
I siti specializzati nel fornire notizie e informazioni online su Internet e computer
usano la tecnica del database per permettere l'accesso agli utenti di una quantità
enorme di informazioni aggiornata in continuazione, infatti memorizzano tutte le
informazioni in un database e le rendono accessibili sul Web.
Queste informazioni, prima di arrivare all’utente devono seguire un percorso
attraverso tre tappe principali.
La partenza avviene dal computer dove risiede il database e il programma che lo
gestisce (DBMS: Data Base Management System).
La tappa intermedia è sul computer dove gira il server Web che gestisce i dati
originali nel formato HTML usando dei programmi chiamati in gergo scripts
(server scripts).
L'ultima tappa è sul computer dell’utente dove viene usato un Browser per
interpretare il documento HTML. Il Browser può completare il lavoro di
trasformazione dei dati originali in HTML servendosi talvolta di programmi
scripts (client scripts).
Questo modo di pubblicare un database è detto a 3 strati (three tier) riferendosi
appunto alle tre tappe viste prima e per distinguerla dalla pubblicazione a 2 strati
(two tier), dove il cliente accede direttamente al database. L'introduzione del
terzo strato, costituito dal server Web, ha semplificato moltissimo il problema
16
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
standardizzando l'interfaccia che ora non dipende più dal tipo di database. Il
server Web è il programma che guida tutta l'operazione. E’ infatti ad esso che
arriva la richiesta di interrogare un database sotto forma di documenti con uno
speciale formato HTML. Si dice che l'accesso al data base viene fatto con pagine
attive (attive perché contengono dei programmi che il server deve eseguire). Un
esempio di pagine ad HTML modificato eseguite dal server sono le pagine “asp”
(active server page).
L'utente finale fa una richiesta al database di solito usando moduli o form HTML
e come risultato riceve un documento che può essere già quello finale in puro
HTML, oppure può contenere anch'esso una mistura di dati e programmi.
Sta crescendo in modo astronomico il numero di siti WEB utilizzati per dare
supporto ad applicazioni per il commercio elettronico e ad altre applicazioni
nelle quali vengono utilizzate lunghe serie di pagine WEB. Trattandosi, per lo
più, di applicazioni che fanno un uso intensivo dei dati, la scelta più logica per
gestirle consiste nel ricorrere ad architetture di sistema basate su siti WEB
accoppiati con database.
17
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
2. GLI STRUMENTI
2.1 LE BASI DI DATI
2.1.1 Database basati su architettura client/server
I
database conservano i dati di un’organizzazione in una sede centrale,
utilizzando un formato standardizzato. Un database ha lo scopo di
conservare un dato una sola volta, per evitare dati ridondanti e per assicurare
coerenza. Per accedere ai dati i programmi interagiscono con il database
Management System (DBMS, sistema di gestione del database), l’unico
programma abilitato alla gestione diretta dei database.
I primi database risiedevano in grandi computer mainframe centralizzati, ai quali
gli utenti accedevano tramite terminali. Quando, negli anni ’80, si diffusero
l’informatica distribuita e i microcomputer, emersero due nuovi tipi di database:
i database personali e i database basati sull’architettura client/server.
18
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
I DBMS personali (come Microsoft Access) funzionano bene nel caso di
applicazioni database utilizzabili dal disco rigido di un personal computer e
concepite per utenti individuali. Tuttavia, quando si trasferisce un database
personale in un ambiente client/server, utilizzandolo per applicazioni
multiutente, può verificarsi qualche problema.
Server dei file
1. Riceve le richieste dei file
2. Invia e riceve file
Rete
Richiesta di
file aggiornati
File
richiesti
File
richiesti
Richiesta di
file aggiornati
Stazione di lavoro
client dell’utente 1
Stazione di lavoro
client dell’utente 2
Utilizzo di un database personale per un’applicazione multiutente
Il software, i dati e i programmi del database personale sono conservati in un file
server. Quando un utente effettua una richiesta per esaminare, inserire,
aggiornare o eliminare dati, la richiesta provoca il reperimento di un set di dati
notevolmente più ampio dei dati richiesti al DBMS. Quando un client termina di
aggiornare il database, tutti i dati vengono restituiti al file server. I database
personali più recenti utilizzano file indicizzati che permettono al client di
reperire sottoinsiemi del database più piccoli del set di dati accessibili al DBMS,
ma, in qualsiasi caso, i DBMS personali possono imporre un pesante onere sulle
stazioni di lavoro client e sulla rete.
19
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Contrariamente ai database personali, i database client /server (come Oracle e
Microsoft NT SQL Server) attuano una gestione separata del DBMS e dei
programmi che operano sul database. Il DBMS viene installato su un server,
mentre i programmi che usano il database vengono installati ed eseguiti sul
client. I programmi in esecuzione sul client inviano richieste di dati al DBMS
attraverso la rete.
1.
2.
1.
Server di database
(elaborazione del DBMS)
Riceve le richieste di dati, di dati nuovi e di
aggiornamenti
Filtra i dati richiesti dal database e li invia al client
Oppure
Aggiunge o aggiorna dati
Rete
Richiesta di dati Input
e aggiornamento dati
Dati
filtrati
Dati
filtrati
Richiesta di dati Input
e aggiornamento dati
Stazione di lavoro
client dell’utente 1
Stazione di lavoro
client dell’utente 2
Utilizzo di un database client/server per un’applicazione multiutente
Quando il server del DBMS di tipo client/server riceve la richiesta, reperisce i
dati dal database, esegue le funzioni richieste sui dati (ordinamento, filtraggio,
etc.) e restituisce al client, attraverso la rete, solo il risultato finale della query. Di
conseguenza, i database client/server multiutente spesso generano meno traffico
di rete dei database personali, e sono meno soggetti a impantanarsi a causa di
rete sovraccarica.
Un’altra importante differenza fra database personali e database client/server,
utilizzati per applicazioni multiutente, è costituita dal modo in cui gestiscono le
cadute di connessione del client. In un sistema di database personale con
20
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
un’applicazione multiutente, quando una stazione di lavoro client “cade” (in
seguito ad un errore del software o a un’interruzione di corrente) è possibile che
il database venga danneggiato, a causa di query di comando interrotte (le query
di comando sono operazioni che modificano il contenuto del database,
aggiornando, inserendo o eliminando i dati), che possono influire negativamente
sugli altri utenti. Un record scritto parzialmente, in un file di database, talvolta
può rendere illeggibile l’intero file. In aggiunta, le query di aggiornamento
normalmente richiedono il blocco del record, o dei record, interessati durante la
modifica. Se il client che esegue l’aggiornamento cade prima di togliere il blocco
dei record, i record rimangono bloccati e non sono disponibili per le query di
comando per gli altri utenti, finché un amministratore non esegue l’utility di
ripristino. Per quanto il database possa essere ripristinabile, tutti gli utenti
devono uscire dalla sessione di lavoro durante questa elaborazione, che può
richiedere ore. Le query di comando in esecuzione nel momento della caduta
generalmente non si possono ricostruire. Se la riparazione non è possibile,
l’amministratore del database può ripristinare l’ultima versione salvata, ma le
operazioni di inserimento, di modifica e di cancellazione, avvenute
successivamente
all’ultimo
salvataggio,
vengono
perse.
Per contro, la caduta di una stazione di lavoro client incide meno sul database
client/server. Le query in corso del client caduto vengono perse, ma il guasto di
una singola stazione client non influenza altri utenti. Nel caso di caduta di un
server, un registro delle transazioni, centrale o sincronizzato, contiene una
documentazione di tutte le modifiche correnti del database. Il registro delle
transazioni consente sia di terminare completamente, sia di annullare le query in
corso di tutti gli utenti. La maggior parte dei server DBMS di tipo client/server
21
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
offre molte caratteristiche aggiuntive per ridurre al minimo l’eventualità di
cadute, e, quando accadono, hanno meccanismi di recupero veloci e potenti.
I sistemi database client/server differiscono da quelli personali anche per il modo
in cui trattano le transazioni utente in competizione. Per esempio, quando un
utente invia una query di comando, un DBMS client/server blocca i record
associati in modo da renderli non disponibili per l’aggiornamento da parte di altri
utenti finché sono impegnati dalla transazione. Per contro, quando si usa un
database personale per applicazioni multiutente, questo predispone per
impostazione predefinita il blocco dei record ottimistico, un meccanismo basato
sulla speranza che non si verifichino nello stesso momento due transazioni in
competizione.
I sistemi di database personali e quelli di client/server trattano l’elaborazione
delle transazioni in modi diversi. Si chiama elaborazione di transazioni la
modalità operativa con la quale si raggruppano insieme una serie di modifiche
sul database, correlate fra loro, che dovranno concludersi tutte positivamente,
oppure fallire tutte. Ad esempio, Microsoft Access fornisce procedure per
raggruppare modifiche correlate, per mantenere una documentazione di queste
modifiche nella memoria principale della stazione di lavoro client, e per revocare
le modifiche (riportando il database allo stato precedente all’ultimo salvataggio)
se le transazioni raggruppate falliscono. Tuttavia, se il computer client che sta
effettuando le modifiche si blocca a metà di un gruppo di transazioni, il registro
delle transazioni nella sua memoria principale viene perso. Non esiste un registro
delle transazioni, basato su file, a cui riferirsi per ritornare allo stato precedente,
e le modifiche parziali non si possono revocare.
22
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Infine, i sistemi database client/server hanno incorporato un modello di sicurezza
che si può usare per limitare le operazioni che gli utenti possono eseguire sul
database, e per limitare i dati ai quali un utente può accedere. I database
personali hanno un numero minore di opzioni per la sicurezza, non altrettanto
flessibili da usare e modificare quanto quelle offerte dai sistemi database
client/server.
In conclusione i sistemi database client/server sono indispensabili per:
1) applicazioni di database in cui molti utenti possono inserire, aggiornare o
eliminare dati nello stesso tempo;
1) applicazioni essenziali per la sopravvivenza dell’impresa, in quanto sono
in grado di gestire le cadute del sistema, hanno meccanismi di ripristino e
possono lavorare per transazioni;
2) sistemi che richiedono un solido sistema di sicurezza per regolare
l’accesso degli utenti ai dati.
Generalmente, i sistemi database client/server sono più costosi dei database
personali, più complessi da installare ed eseguire, e richiedono hardware più
potente per i client e per il server. I database personali sono utili per installazioni
WEB nelle quali l’unica operazione su database consiste nel consultare i dati e
non si usano query di comando, e dove si possono tollerare sistemi di sicurezza
meno robusti. Un vecchio criterio guida ancora utile indica che, quando si usa un
database personale per applicazioni multiutente, si dovrebbe limitare l’utilizzo a
non più di dieci utenti contemporanei, se sono consentite query di comando.
Altrimenti se la sicurezza e la capacità di ripristino sono importanti si può
utilizzare un DBMS client/server indipendente dal numero di utenti.
23
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
2.1.2 Le transazioni e il controllo della concorrenza
A
nalizziamo ora il funzionamento di un database server, cioè di un
sistema dedicato alla gestione dei dati. In un server per la gestione dei
dati troviamo i seguenti componenti:
 L’ottimizzatore, con il compito di decidere le strategie di accesso ai dati
per rispondere alle interrogazioni. Questo sistema riceve in ingresso
un’interrogazione, di cui svolge un’analisi lessicale, sintattica e
semantica, individuando eventuali errori; trasforma poi le interrogazioni
corrette in una forma interna e sceglie la migliore strategia per accedere
ai dati.
 Il gestore dei metodi di accesso ai dati. Questo componente, detto
Relational Storage System (RSS) in un DBMS relazionale, ha il compito
di eseguire gli accessi fisici ai dati secondo la strategia definita
dall’ottimizzatore.
 Il Buffer manager (gestore memoria tampone), per la gestione del
trasferimento effettivo delle pagine della base di dati dai dispositivi di
memoria di massa alla memoria centrale. Questo sistema gestisce vaste
zone della memoria centrale assegnate dal DBMS e spesso condivise fra
le varie applicazioni.
 Il controllore delle affidabilità, per preservare correttamente il contenuto
della base di dati in presenza di malfunzionamenti e guasti.
 Il controllore della concorrenza, per regolare gli accessi concorrenti alla
base di dati e garantire che le applicazioni non interferiscano
negativamente fra loro, causando perdite di consistenza.
24
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Per comprendere i requisiti che la tecnologia del DBMS deve realizzare, è
fondamentale la nozione di transazione, che identifica un’unità elementare
di lavoro svolta da un’applicazione, cui si vogliono associare particolari
caratteristiche di correttezza, robustezza e isolamento. Un sistema che mette
a disposizione un meccanismo per la definizione e l’esecuzione di
transazioni viene detto sistema transazionale.
Una transazione può essere definita sintatticamente a prescindere dal tipo di
linguaggio di programmazione utilizzato; essa è incapsulata all’interno di
due comandi: “begin transaction” (“bot”, inizio transazione) ed “end
transaction” (“eot”, fine transazione). All’interno del codice delle
transazioni, possono comparire due istruzioni particolari: commit (commit
work, transazione eseguita) e abort (rollback work, transazione fallita), che
indicano l’azione associata alla rispettiva istruzione. L’effetto di questi due
comandi è decisivo per l’esito della transazione, la quale va a buon fine solo
a seguito di un commit, mentre non ha alcun effetto tangibile sulla base di
dati quando viene eseguito l’abort. L’istruzione rollback work è molto
potente, in quanto tramite essa l’utente della base di dati può annullare gli
effetti del lavoro svolto dalla transazione, indipendentemente dalla sua
complessità.
Tutto il codice che viene eseguito all’interno della coppia bot-eot gode di
proprietà particolari.
 Atomicità. Rappresenta il fatto che una transazione è un’unità
indivisibile di esecuzione, o vengono resi visibili tutti gli effetti di una
transazione, oppure la transazione non deve avere alcun effetto sulla
basi di dati. In pratica, non è possibile lasciare la base di dati in uno
25
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
stato intermedio attraversato durante l’elaborazione della transazione.
Se durante l’esecuzione delle operazioni si verifica un errore e una
delle operazioni di lettura o modifica della base di dati non può essere
portata a compimento, allora il sistema deve essere in grado di
ricostruire la situazione esistente all’inizio della transazione,
eliminando il lavoro svolto dalle istruzioni eseguite sino a quel
momento (operazione di undo). Viceversa, dopo l’esecuzione di un
commit, il sistema deve assicurare che la transazione lasci la base di
dati nel suo stato finale; ciò può comportare di dover rifare il lavoro
svolto (operazione di redo). In questo modo, la corretta effettuazione
dell’operazione di commit fissa il momento, atomico e indivisibile, in
cui la transazione va a buon fine; prima di tale operazione, qualunque
guasto provoca l’eliminazione di tutti gli effetti della transazione, che
ripristina lo stato iniziale. Quando viene eseguito il comando rollback
work, la situazione è simile ad un “suicidio” autonomamente deciso
nell’ambito della transazione. Viceversa, il sistema può decidere che
la transazione non può essere portata a compimento e “uccidere” la
transazione”. Infine, varie transazioni possono essere “uccise” a
seguito di un guasto del sistema
 Consistenza. Richiede che l’esecuzione della transazione non violi i
vincoli di integrità definiti sulla base di dati. Quando il sistema rileva
che una transazione sta violando uno dei vincoli (ad es. la
duplicazione di una chiave), interviene per annullarla o per correggere
la violazione stessa. La verifica dei vincoli di integrità di tipo
immediato può essere fatta nel corso della transazione, rimovendo gli
26
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
effetti della specifica istruzione di manipolazione dei dati che causa la
violazione, senza imporre un abort alle transazioni. La verifica del
tipo differito deve essere effettuata alla conclusione della transazione,
dopo che l’utente ha richiesto il commit. In questo secondo caso, se il
vincolo è violato, l’istruzione commit work non va a buon fine, e gli
effetti della transazione vengono annullati poco prima di produrre e
rendere visibile lo stato finale della base di dati, poiché questo stato
sarebbe inconsistente.
 Isolamento. Richiede che l’esecuzione di una transazione sia
indipendente dalla contemporanea esecuzione di altre transazioni. In
particolare, si richiede che il risultato dell’esecuzione concorrente di
un insieme di transazioni sia analogo al risultato che le stesse
transazioni otterrebbero qualora ciascuna di esse fosse eseguita
separatamente. L’isolamento si pone come obiettivo anche di rendere
l’esito di ciascuna transazione indipendente da tutte le altre; si vuole
cioè impedire che l’esecuzione di un rollback di una transazione causi
l’esecuzione del rollback delle altre, eventualmente generando una
reazione a catena (effetto domino).
 Persistenza. Richiede che l’effetto di una transazione che ha eseguito
il commit correttamente non venga perso. In pratica, una base di dati
deve garantire, in ogni caso, che i dati vengano persi.
Atomicità e persistenza sono garantite dal controllo di affidabilità; l’isolamento
dal controllo della concorrenza; la consistenza è gestita dai compilatori, che
introducono opportuni controlli nei dati e procedure per la loro verifica,
eseguite poi dalle transazioni.
27
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Controllo di concorrenza
Un DBMS deve spesso servire diverse applicazioni e rispondere alle richieste
provenienti da diversi utenti. Un’unità che viene tipicamente utilizzata per
caratterizzare il carico applicativo di un DBMS è il numero di transazioni per
secondo (tps, dall’inglese: transactions per second) che devono essere gestite
dal DBMS per soddisfare le applicazioni. Sistemi tipici devono rispondere a
carichi dell’ordine di decine o centinaia di tps, o addirittura arrivare a migliaia.
Per questo motivo, è indispensabile che le transazioni di un DBMS vengano
eseguite concorrentemente; è impensabile infatti una loro esecuzione seriale, in
cui cioè le transazioni vengono eseguite una alla volta. Solo la concorrenza
delle transazioni consente un uso efficiente del DBMS, massimizzando il
numero di transazioni servite per secondo e minimizzando i tempi di risposta.
Il controllo di concorrenza fa riferimento alla frontiera di più basso livello
dell’architettura di un DBMS, relativa alle operazioni di ingresso/uscita, che
attuano il trasferimento dei blocchi dalla memoria di massa alla memoria
centrale. Consideriamo azioni di lettura (read) e scrittura (write); ogni
operazione di lettura comporta il trasferimento di un blocco dalla memoria di
massa alla memoria centrale e ogni operazione di scrittura comporta il
trasferimento opposto. Queste operazioni vengono gestite da un modulo di
sistema, detto generalmente scheduler, il quale determina se le richieste
possano essere soddisfatte o meno.
28
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Database
Scheduler
Buffer di memoria
centrale
Architettura per il controllo di concorrenza
L’esecuzione concorrente di varie transazioni può causare alcuni problemi di
correttezza, o anomalie. Esistono quattro casi tipici:
 Perdita di aggiornamento: è il caso di due transazioni identiche che
operano sullo stesso oggetto. L’esecuzione concorrente delle due
transazioni, che evidenzia la progressione temporale delle azioni, non
tiene conto delle modifiche apportate dalla seconda transazione, che
quindi verranno perse.
 Letture sporche: si verifica quando viene letto un dato che rappresenta
uno stato intermedio nell’evoluzione di una transazione, (la seconda
transazione riconosce le modifiche della prima, che successivamente
esegue un abort).
 Letture inconsistenti: si verifica quando una transazione svolge
solamente operazioni di lettura, che ripete in istanti successivi. È
opportuno che una transazione che accede due volte alla base di dati
trovi esattamente lo stesso valore per ciascun dato, e non risenta
dell’effetto di altre transazioni.
 Aggiornamento fantasma: si consideri una base di dati con oggetti che
soddisfano dei vincoli di integrità. La prima transazione osserva solo in
29
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
parte gli effetti dalla seconda, e quindi osserva uno stato che non
soddisfa i vincoli di integrità.
Dato che le transazioni avvengono in modo concorrente, le operazioni di
ingresso/uscita vengono richieste da varie transazioni in istanti successivi. Il
controllo di concorrenza ha la funzione di accettare alcune sequenze di queste
operazioni e rifiutarne altre, in modo da evitare che si verifichino le suddette
anomalie. Tale compito è effettuato dallo scheduler, che ha il compito di tenere
traccia di tutte le operazioni compiute sulla base di dati dalle transazioni, e
accettare o rifiutare le operazioni che vengono progressivamente richieste dalle
transazioni.
Il principale meccanismo di controllo di concorrenza è il locking (bloccaggio).
Si basa su un principio molto semplice, e cioè che tutte le operazioni di lettura
e scrittura devono essere protette tramite l’esecuzione di tre diverse primitive:
blocco in lettura (r_lock), blocco in scrittura (w_lock), sblocco (unlock); lo
scheduler (detto anche lock manager) riceve una sequenza di richieste di
esecuzione di queste primitive da parte delle transazioni, e ne determina la
correttezza con una semplice ispezione di una struttura dati.
Nell’esecuzione di operazioni di lettura e scrittura si devono rispettare i
seguenti vincoli:
1. ogni operazione di lettura deve essere preceduta da un r_lock e seguita da un
unlock; il blocco in questo caso si dice condiviso, perché su un dato possono
essere attivi più blocchi di questo tipo.
2. ogni operazione di scrittura deve essere preceduta da un w_lock e seguita da
un unlock; il blocco si dice in tal caso esclusivo, perché non può coesistere
con altri blocchi (esclusivi o condivisi) sullo stesso dato.
30
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Il gestore della concorrenza riceve le richieste di blocco provenienti dalle
transazioni, e li concede in base a quelli precedentemente concessi alle altre
transazioni. Quando una richiesta di lock è concessa, si dice che la
corrispondente risorsa viene acquisita; quando non viene concessa, la
transazione viene messa in stato di attesa, che termina quando la risorsa viene
sbloccata e diviene disponibile. I lock già concessi vengono memorizzati in
tabelle e gestite dallo scheduler.
Si possono verificare dei conflitti quando si richiede una lettura o scrittura su
un oggetto già bloccato in scrittura, o una scrittura su un oggetto già bloccato in
lettura. In pratica, solo quando un oggetto è bloccato in lettura è possibile dare
risposta positiva ad un’altra richiesta di blocco in lettura; da questa
caratteristica discende il nome di lock condiviso, attribuito al blocco di lettura.
Nel caso di sblocco di una risorsa bloccata in modo condiviso, la risorsa torna
libera quando non ci sono altre transazioni in lettura che operano su di essa;
altrimenti, essa rimane bloccata.
Come detto precedentemente il lock manager è un processo in grado di essere
invocato da tutti i processi che intendono accedere alla base di dati.
Quando un processo richiede una risorsa e la richiesta non può essere
soddisfatta, lo scheduler tiene traccia del cambiamento dello stato della risorsa
nelle sue tabelle interne e restituisce immediatamente il controllo al processo;
in questo caso, il ritardo introdotto dal lock manager sul tempo di esecuzione
della transazione è molto modesto, in quanto l’operazione non comporta
operazioni di ingresso-uscita.
Quando, invece, la richiesta non può essere immediatamente soddisfatta, il
sistema inserisce in una coda associata alla risorsa il processo richiedente; ciò
31
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
comporta un’attesa arbitrariamente lunga, e quindi il processo associato alla
transazione viene sospeso. Appena la risorsa viene rilasciata, il lock manager
controlla se esistono dei processi in attesa della risorsa e nel caso prende il
primo processo nella coda e concede ad esso la risorsa. L’efficienza del lock
manager dipende dalla probabilità che le richieste di una transazione vadano in
conflitto.
Quando infine scatta il timeout (intervallo massimo di tempo che la procedura
chiamante è disposta ad aspettare per ottenere il lock sulla risorsa) e la richiesta
è insoddisfatta, la transazione richiedente può eseguire un rollback (ritorno alla
situazione precedente la transazione), cui generalmente seguirà una ripartenza
della stessa transazione, oppure decidere di proseguire, richiedendo di nuovo il
lock, in quanto il fallimento nella richiesta non comporta un rilascio delle altre
risorse acquisite dalla transazione in precedenza. Alle tabelle di lock si accede
molto di frequente; per questo, il lock manager mantiene queste informazioni in
memoria centrale, in modo da minimizzare i tempi di accesso.
2.2 LE RETI
2.2.1 La rete Internet
A
metà degli anni ottanta si iniziò a vedere la collezione delle reti come
una inter-rete e in seguito come Internet. La colla che tiene insieme
32
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
l’intera Internet è il modello di riferimento TCP/IP e la relativa pila di protocolli.
Essere su Internet significa utilizzare una pila di protocolli TCP/IP, un indirizzo
IP e spedire pacchetti IP a tutte le macchine su Internet. Internet ha quattro
principali applicazioni o servizi:
 La posta Elettronica: La possibilità di comporre e spedire messaggi di
posta elettronica.
 News: gruppi di discussione, sono forum specializzati in cui utenti che
condividono un interesse possono scambiarsi messaggi.
 Collegamento remoto: Utilizzando Telnet o altri programmi, qualsiasi
utente Internet può collegarsi su qualsiasi altra macchina in cui abbia un
account.
 Trasferimento di archivi: Utilizzando il programma FTP è possibile
copiare archivi da una macchina Internet a un'altra.
Tutti i dati che vengono trasportati attraverso Internet (messaggi dì posta
elettronica, file, pagine Web, eccetera) sono suddivisi in pacchetti, piccole
porzioni di dati che si possono instradare separatamente attraverso Internet. Il
TCP ha la responsabilità della suddivisione di un messaggio lungo in pacchetti
(quando viene inviato) e del riassemblaggio dei pacchetti in messaggi completi,
presso il computer ricevente. L’IP specifica invece come indirizzare i messaggi.
Ciascun computer connesso a Internet ha un indirizzo IP univoco, che specifica
la posizione del computer nella rete. Generalmente, gli indirizzi IP sono espressi
tramite quattro numeri (il cui valore varia da 0 a 255), separati da punti. Ecco un
esempio: 137.28.224.5. Numeri come questo sono difficili da ricordare, pertanto
un indirizzo IP si può rappresentare anche mediante un nome di dominio, in
altre parole un nome significativo per le persone e facile da ricordare.
33
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
I server dei nomi di dominio sono computer che tengono aggiornate tabelle in
cui ai nomi di dominio corrispondono i relativi indirizzi IP. Questi server sono
gestiti dagli Internet Service Provider (ISP, fornitori di servizi Internet), che
forniscono ai clienti l'accesso commerciale a Internet, e da organizzazioni che
hanno molti utenti connessi alla rete Internet.
L’introduzione della nuova applicazione WWW (World Wide Web) ha
richiamato alla rete milioni di nuovi utenti mentre prima vi accedevano per lo più
gli universitari. Questa applicazione, inventata dal fisico del CERN Tim
Bernerse Lee, non cambiò i servizi di base ma li rese più semplici da utilizzare. Il
WWW rese possibile installare pagine di informazioni contenenti testo, figure,
suoni e anche immagini in movimento, contenenti anche ulteriori collegamenti
ad altre pagine.
Generalmente, le informazioni nel World Wide Web vengono trasferire
mediante un protocollo di comunicazione chiamato Hypertext Transfer
Protocol (HTTP, protocollo di trasferimento di ipertesti). I Browser Web
accettano anche protocolli Internet meno recenti, quali il File Transfer Protocol
(FTP protocollo per il trasferimento di file). Mentre HTTP si usa per inviare
pagine Web attraverso Internet, l’FTP è il protocollo principale che si utilizza per
trasferire file di dati, quali documenti di elaboratori di testi e fogli elettronici.
Un utente richiede una pagina Web a un server inserendo nel suo Browser
l'indirizzo Web della pagina. Un indirizzo Web, chiamato anche Uniform
Resource Locator (URL, localizzatore uniforme di una risorsa), è una stringa di
caratteri, numeri e simboli che specifica il protocollo di comunicazione (quale
l'HTTP o FTP), il nome del dominio o l'indirizzo IP di un server Web e,
34
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
facoltativamente, il percorso della cartella dove si trova il file HTML della
pagina Web, oltre al nome dei file HTML della pagina.
Le URL, che indicano l'indirizzo di un server Web o il nome di un dominio
vengono eletti URL Internet, perché specificano un protocollo di comunicazione,
tipo HTTP o FTP, nella prima parte dell'URL. Un URL può anche essere un
URL di file, cioè si riferisce ad un file HTML, immagazzinato nel disco rigido
dell'utente. Generalmente, un URL di file viene usato solamente dai
programmatori, quando sviluppano nuove pagine Web e vogliono vedere come
appaiono quando si visualizzano in un Browser.
La rete mondiale è attualmente una complessa ragnatela formata da più piccole
reti regionali. Connessi ad essa ci sono computer che usano un particolare
sistema di trasferimento dei dati ad alta velocità.
Negli Stati Uniti, la "dorsale" maggiore di Internet teoricamente può muovere i
dati alla velocità di 45 milioni di bit al secondo (fai un paragone con un normale
modem domestico, che ha una velocità massima che va' da 9.600 a 28.800 bit al
secondo). Connessi ai computer della dorsale ci sono piccoli network che
servono particolari regioni geografiche, che generalmente muovono i dati ad una
velocità di circa 1.5 milioni di bit al secondo. Sono a loro volta alimentati da
questi
i
network
più
piccoli
o
i
computer
individuali.
A differenza dei network commerciali non sono uno o più computer centrali che
fanno girare Internet ma le sue risorse vanno cercate tra migliaia di computer
individuali. Questo è allo stesso tempo il suo più grande punto di forza e la sua
più grande debolezza. Infatti tale caratteristica significa che è virtualmente
impossibile che l'intera rete vada in crash contemporaneamente, quindi se un
computer è in tilt, il resto della rete rimane in piedi. Il suo disegno riduce anche i
35
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
costi di accesso alla rete per un singolo o per un'organizzazione. Ma migliaia di
computer connessi possono anche rendere difficile navigare nella rete e trovare
quello che si cerca, specialmente poiché differenti computer possono avere
diversi
comandi
per
attivare
le
proprie
risorse.
Oggi aumentano in maniera sempre più veloce i legami tra Internet e le reti
commerciali.
Un criterio di classificazione delle reti, è la scala dimensionale. In questo
contesto si distingue fra reti locali, reti metropolitane e reti geografiche.
Distanza fra processori
10 m.
100 m.
1 km.
10 km.
100 km.
1000 km.
10.000 km.
Ambito
Stanza
Edificio
Campus
Città
Nazione
Continente
Pianeta
Tipo di rete
Rete locale
Rete locale
Rete locale
Rete metropolitana
Rete geografica
Rete geografica
Internet (Rete geografica)
La distanza è un fattore molto importante, poiché a differenti scale dimensionali
si usano differenti tecniche.
Le reti locali
Le reti locali (Local Area Network, LAN), sono il tipo più comune di reti, molto
diffuse negli uffici di piccole dimensioni. Una rete locale ha le seguenti
caratteristiche:
 Appartiene ad un’organizzazione (rete privata);
 Opera in un area ristretta. Per esempio un piano di un edificio o un singolo
edificio.
 Sono usatissime per connettere PC o workstation
36
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 I servizi offerti dalla rete sono sempre disponibili.
A livello di sistemi operativi di rete, si possono riscontrare due diverse tipologie
di
reti
locali:
quelle
paritetiche
e
quelle
basate
sul
Server.
Le reti paritetiche operano senza server dedicati sulla rete. Ciascun host funge sia
da client sia da server. L'utente di ciascun host determina le informazioni o le
periferiche che desidera condividere con gli altri membri della rete. Le reti
paritetiche, in genere, sono relegate alle organizzazioni più piccole, poiché non si
adattano bene a quelle di dimensioni maggiori. Presentano diversi problemi
riguardo la sicurezza, poiché questa dipende dalla capacità di ciascun host di
controllare la propria protezione.
Nelle reti basate su server, almeno un host è dedicato alla funzione di server. I
computer client, non condividono alcuna informazione con gli altri computer.
Tutti i dati sono archiviati sul server centrale che può giocare parecchi ruoli, tra i
quali i seguenti:
Server di file e di stampa. Forniscono un deposito sicuro per tutti i dati. Possono
anche gestire le code di stampa, che offrono l'accesso alle risorse di stampa
condivisibili sulla rete.
Server di applicazioni. Forniscono la parte del server nelle applicazioni
client/server. In un ambiente client/server, il client fa girare una piccola versione
del programma (la stub), che permette la connessione con il server. La parte
server dell'applicazione ha lo scopo di eseguire per conto del client le operazioni
che assorbono molta potenza elaborativa. I server Web e i server database sono
esempi pratici di server di applicazioni.
37
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Server della posta. Forniscono funzioni di inoltro e ricezione della posta
elettronica ai client della rete. Se si adoperano i gateway, il trasporto dei
messaggi può avvenire tra sistemi di posta eterogenei
Server fax. Forniscono agli utenti della rete servizi di inoltro e ricezione Fax.
Server della sicurezza. Sono dedicati alla sicurezza sulla rete locale, nel caso che
questa sia collegata a qualche rete più grande, come per esempio Internet.
Server di comunicazione. L'accesso ai dati da parte dei client remoti. Un Client
remoto può utilizzare un modem per chiamare telefonicamente la rete locale. Il
sistema contattato è il server di comunicazione, il quale può essere configurato
con uno o più modem, per consentire l'accesso esterno alla rete. Dopo che il
client si è collegato alla rete, può agire come se vi fosse direttamente connesso
tramite una scheda di rete.
Nella realizzazione di una rete locale o LAN, bisogna prendere in considerazione
molti aspetti della rete, tra cui la collocazione dei computer, l'ubicazione dei cavi
e l'hardware richiesto per la connessione. Il termine per definire tutti questi
problemi connessi alla progettazione di una rete è topologia di rete.
Al momento attuale, per le reti locali si utilizzano comunemente tre topologie:
 Reti a bus
La rete a bus (Ethernet) è il metodo più semplice usato per mettere in rete i
computer. Consiste in un singolo cavo che connette tutti i computer, i
server e le periferiche in un singolo segmento di rete come in figura.
38
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Gli host su una rete a bus comunicano tra loro mettendo le informazioni
sul cavo, indirizzate all'indirizzo fisico della scheda di rete usata per
connettere il computer destinatario al segmento di rete. Questo indirizzo
fisico prende il nome di indirizzo Media Access Control (MAC). A
ciascuna scheda di rete è assegnato un indirizzo MAC univoco. Gli
indirizzi MAC in genere sono indirizzi esadecimali a 12 cifre. A ciascun
produttore di schede di rete, è assegnato un prefisso, che userà per le sue
schede. E' responsabilità del produttore assicurarsi che non esistano due
schede
di
rete
con
lo
stesso
indirizzo
MAC.
I dati messi sulla rete vengono inviati a tutti i computer che fanno parte
della rete stessa e ciascun computer li esamina, per scoprire se l'indirizzo
di destinazione delle informazioni corrisponde al proprio indirizzo MAC.
In caso affermativo il PC legge le informazioni, altrimenti le rifiuta.
Le reti Ethernet costituiscono l'implementazione più comune delle reti a
bus. Si servono di un metodo chiamato Carrier Sense Multiple Access
whit Collision Detection (CSMA/CD). Ciò significa che un solo computer
per volta può inviare dati sulla rete a bus. Se un host vuole trasmettere dati
ma rivela che vi sono degli altri dati sulla rete, aspetta che questa si libera
prima di trasmettere le sue informazioni. Se due host iniziano
contemporaneamente a trasmettere dati sulla rete, avviene una collisione e
gli host possono rivelarlo. Uno dei PC che trasmette, invia un segnale di
ingombro. Questo fa sì che la collisione duri abbastanza a lungo perché
tutti gli altri Computer lo riconoscano. Ciascun host trasmittente aspetta
un periodo di tempo casuale prima di tentare di nuovo l'invio dei dati.
Questo intervallo di tempo è reso casuale, per evitare che due host inviino
39
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
contemporaneamente e ripetutamente sulla rete pacchetti destinati a
collidere.
 Reti a stella
In una rete a stella (nodi collegati ad Hub) , i segmenti da cavo da un'unità
centrale di connessione, o Hub, connettono tutti i computer, come
mostrato in figura.
In alcune circostanze, l'Hub prende il nome di concentratore.
Le reti a stella cioè quelle che usano gli Hub, sono la topologia di rete più
usata nelle reti odierne. Il vantaggio principale di questa topologia rispetto
alla topologia bus è che, se un segmento di cavo si rompe, solo l'host
connesso alla Hub su quel segmento di cavo ne è influenzato. Vengono
elencati di seguito i vantaggi della topologia a stella:
- Facilità di installare nuovi Hub per aumentare il numero di
porte che collegano i PC host alla pila di Hub. In questo
modo le reti a stella possono crescere in qualsiasi momento di
dimensioni.
- Per effettuare le connessioni con altri Hub, si possono
impiegare differenti tipi di cavi.
40
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
- Se si utilizzano degli Hub attivi, è possibile controllare in via
centralizzata l'attività del traffico della rete, per mezzo di
protocolli per la gestione della rete come Simple Network
Management Protocol (SNMP).
 Reti ad anello
In una rete ad anello (Token ring), tutti i computer sono collegati tra loro
in un cerchio logico. I dati viaggiano intorno al cerchio e passano
attraverso tutti i computer.
Nella disposizione fisica, la rete ad anello sembra seguire lo stesso schema
della rete a stella. La differenza sostanziale è l'unità di connessione, nella
quale i segnali dei dati passano in un anello da un host al successivo.
I dati sono trasmessi intorno all'anello per mezzo di un metodo chiamato
passaggio del testimone o gettone (Token passing). Quando un PC deve
trasmettere dei dati, modifica il testimone con i dati che desidera inviare e
lo configura con l'indirizzo MAC dell'host destinatario. I dati passano
attraverso tutti i computer finché raggiungono quello giusto, che, a sua
volta modifica il testimone per indicare che li ha ricevuti con successo.
Quando l'host mittente accerta l'avvenuta ricezione dei dati, il pacchetto
41
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
dei dati viene rimosso dalla rete. Il testimone è rilasciato, in modo che un
altro host possa trasmettere i dati.
In una rete con topologia ad anello, esiste un solo testimone. Se un Client
vuole trasmettere i dati e il testimone è già in uso, deve aspettare che
quest'ultimo si liberi. Se bene sembri un sistema poco efficiente, il
testimone viaggia quasi alla velocità della luce.
Le reti metropolitane
Le reti metropolitane (Metropolitan Area Network, MAN) hanno un'estensione
tipicamente urbana (quindi anche molto superiore a quella di una LAN) e sono
generalmente pubbliche.
Fino a qualche anno fa erano basate essenzialmente sulle tecnologie delle reti
geografiche, utilizzate su scala urbana. Recentemente però e' stato definito un
apposito standard, lo IEEE 802.6 o DQDB (Distributed Queue Dual Bus), che e'
effettivamente utilizzato in varie realizzazioni, molto più vicino alla tecnologia
LAN che WAN.
Esiste un mezzo trasmissivo di tipo Broadcast (due bus in 802.6) a cui tutti i
computer sono attaccati.
Head end
Elaboratore
Flusso
…
Head end
Flusso
Distributed Queue Dual Bus
42
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Ogni bus (cavo coassiale o fibra ottica) è unidirezionale, ed ha un’head-end
(terminatore) che cadenza l'attività' di trasmissione.
Le reti geografiche
Le reti geografiche (Wide Area Network, WAN) si estendono a livello di una
nazione, di un continente o dell'intero pianeta. Una WAN è tipicamente costituita
di due componenti distinte:
- un insieme di elaboratori (host oppure end system) sui quali girano i
programmi usati dagli utenti;
- una comunication subnet (o subnet), che connette gli end system fra loro.
Il suo compito è trasportare messaggi da un end system all'altro, così come
il sistema telefonico trasporta parole da chi parla a chi ascolta.
Di norma la subnet consiste, a sua volta, di due componenti:
- linee di trasmissione (dette anche circuiti, canali);
- elementi di commutazione (switching element): gli elementi di
commutazione sono elaboratori specializzati utilizzati per connettere fra
loro due o più linee di trasmissione. Quando arrivano dati su una linea,
l'elemento di commutazione deve scegliere una linea in uscita sul quale
instradarli. Non esiste una terminologia standard per identificare gli
elementi di commutazione. Termini usati sono:
- sistemi intermedi;
- nodi di commutazione pacchetti;
- router.
Una tipica WAN è utilizzata per connettere più LAN fra loro.
43
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
WAN
Subnet
Router
Host
LAN
Linea di trasmiss.
Struttura tipica di una WAN
In generale una WAN contiene numerose linee (spesso telefoniche) che
congiungono coppie di router.
Ogni router, in generale, deve:
- ricevere un pacchetto da una linea in ingresso;
- memorizzarlo per intero in un Buffer interno;
- appena la necessaria linea in uscita è libera, instradare il
pacchetto su essa.
Una subnet basata su questo principio si chiama:
- punto a punto;
- store and forward;
-
a commutazione di pacchetto (packet switched).
Interconnessione di reti
Un’interconnessione di reti (internetwork) è formata quando reti diverse (sia
LAN che MAN o WAN) sono collegate fra loro.
44
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
A prima vista, almeno in alcuni casi, la cosa è apparentemente uguale alla
definizione di WAN vista precedentemente (se al posto di subnet si scrive WAN,
abbiamo una internetwork costituita da una WAN e quattro LAN).
Alcuni problemi però sorgono quando si vogliono connettere fra di loro reti
progettualmente diverse (spesso incompatibili fra loro). In questo caso si deve
ricorrere a speciali attrezzature, dette gateway (o router multiprotocollo), che
oltre ad instradare i pacchetti da una rete all'altra, effettuano le operazioni
necessarie per rendere possibili tali trasferimenti.
WAN 1
WAN 1
Router multiprotocollo
(gateway)
Interconnessione di reti
C'è molta confusione sui termini:
- sottorete (subnet), che nel contesto di una WAN è l'insieme dei
router e delle linee di trasmissione;
- rete (network), che altro non è che una subnet più tutti gli host
collegati;
- internetwork, che è una collezione di più network, anche non
omogenee, collegate per mezzo di gateway.
45
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Host
Host
Gateway
Subnet
Subnet
Network
Network
Internetwork
Relazioni fra subnet, network e internetwork
La diffusione crescente del World Wide Web e la capillare penetrazione della
tecnologia ad esso connessa sta generando notevoli cambiamenti nella gestione
ed organizzazione delle informazioni di moltissime attività, con un notevole
impatto sul sistema informativo di molte aziende. D’altra parte la crescente
affidabilità di strumenti e tecniche generati dalla “rivoluzione WEB” rende
sempre più conveniente basare lo sviluppo di nuove applicazioni su questa
tecnologia, soprattutto per i grossi vantaggi forniti in termini di scalabilità e
distribuzione.
46
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
2.2.2 Sicurezza
I
n una tipica realtà aziendale reti diverse vengono collegate per mezzo di
Router per consentire agli utenti interni ed esterni di accedere ai dati sotto
diverse forme e con diversi vincoli di sicurezza. La tecnica più diffusa è quella di
separare il traffico interno da quello esterno mediante un filtro (firewall).
Sarà compito dell'amministratore di sistema stimare il valore del dato da
proteggere, e scegliere di conseguenza il DBMS con le caratteristiche di security
più adatte.
Entrando nel merito della specifica tematica della pubblicazione per contenuto di
basi dati tramite un server WEB a livello di back-end (programma di supporto)
esistono due possibili sono soluzioni architetturali:
Architettura two tier (secondo ordine) in cui il server WEB accede direttamente
ai dati mediante protocolli standard (ODBC, JDBC) o protocolli proprietari per
applicazioni specifiche.
Architettura three tier (terz’ordine) in cui un application server fa da
intermediario fra le richieste di interrogazione dal server WEB è l'effettivo
accesso ai dati.
A livello di front-end (frontale) è ancora molto diffusa la consultazione mediante
l'invio da parte per Browser di script di interrogazione a tramite tag HTML
(etichette HTML) o per semplice invocazione di URL delle pagine contenitore
dei dati.
Nelle architetture di tipo two tier generalmente la protezione lato back-and
(posteriore) si attua direttamente sul flusso dati tra DBMS e server WEB; per
fare questo si ricorre a una coppia di moduli crittografici in modo da instaurare
47
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
un canale sicuro. Per quel che concerne il traffico di dati sull'atto front-end si
chiedono tecniche di canale sicuro unitamente a una protezione dei direttori del
server mediante script e degli accessi mediante applicazioni eseguibili (CGI
Common Gateway Interface, interfaccia d’entrata comune). Il livello di
protezione dal sistema di front-end può essere adeguato all'importanza dei dati
da proteggere.
Protezione fisica: i Firewall
La sicurezza delle transazioni è garantita anche dal cosiddetto Firewall (muro di
fuoco). Il firewall è un in grado di controllare l'accesso alle reti intercettando tutti
i messaggi in entrata e in uscita.
Il firewall, a seconda della configurazione e della tipologia, permette infatti il
passaggio solamente di determinati tipi di dati, da determinati PC e da
determinati utenti. Il firewall separa e protegge la rete interna, definendo e
rafforzando la sicurezza della rete.
I computer esterni alla rete devono attenersi a una specifica procedura per
ottenere l'accesso alle risorse, agli host e a tutte le altre informazioni. Se l'accesso
viene autorizzato l'utente può passare, a patto che si attenga alla procedura
definita dal firewall. Di solito sono configurati per proteggere la rete contro i
login non autenticati dall'esterno. I firewall sono importanti anche perché
possono provvedere alla sicurezza di singoli segmenti di rete laddove il controllo
si renda assolutamente necessario. Può capitare che un'azienda, per esempio,
desideri che le informazioni di tipo amministrativo (gestione paghe e contributi)
vengano isolate dalla rete a cui accedono i dipendenti, oppure un'università
potrebbe volere separare la rete degli studenti da quella dove sono memorizzate
48
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
le loro votazioni. Sia che gestisca il traffico tra segmenti diversi della rete, sia
che lo gestisca tra due reti differenti, un firewall deve trovarsi comunque in un
ambiente operativo sicuro.
Architettura dei Firewall
Si può strutturare la propria rete in molti modi per proteggere il proprio sistema
usando un firewall. Se si ha una connessione dedicata ad Internet attraverso un
router, si potrebbe collocare il router direttamente nel proprio sistema firewall.
Oppure si potrebbe passare attraverso un Hub ("concentratore") per fornire
server a pieno accesso fuori dal proprio firewall.
Architettura Dial-up
Probabilmente si sta facendo uso di un servizio Dial-up, quale una linea ISDN.
In questo caso si potrebbe utilizzare una terza scheda di rete per fornire un DMZ
filtrato. Questo dà il pieno controllo sui propri servizi Internet e li separa dalla
propria rete normale.
__________
_/\__/\_
|
|
_______________
| Sistema | (LAN) |
|
/ Internet \----| Firewall |--(HUB)--| Workstation/s |
\_ _ _ _/
|__________|
|_______________|
\/ \/ \/
|
(DMZ)
(HUB)
|
|
Architettura a Router singolo
Caso in cui è presente, tra voi ed Internet, un router o un modem. Se si possiede
il router si potrebbero impostare alcune rigide regole di filtraggio, altrimenti se il
router appartiene al proprio ISP, si potrebbe richiederne l'inserimento.
49
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
________
__________
| Router |
|
|
_______________
|
|
| oppure | (DMZ) | Sistema | (LAN) |
|
/ Internet \----| Modem |--(HUB)--| Firewall |--(HUB)--| Workstation/s |
\_ _ _ _/
|________|
|
|__________|
|_______________|
\/ \/ \/
|
(Server)
(esterno)
_/\__/\_
Server Proxy e Firewall
Se si vuole monitorare dove vanno gli utenti della propria rete e se la rete è
piccola, si può integrare un server proxy nel firewall. Gli ISP qualche volta lo
fanno per stilare una lista degli interessi dei propri clienti da poter rivendere ad
agenzie di marketing.
__________
| Proxy / |
_______________
|
|
| Sistema | (LAN) |
|
/ Internet \----| Firewall |--(HUB)--| Workstation/s |
\_ _ _ _/
|__________|
|_______________|
\/ \/ \/
_/\__/\_
Si può collocare il server proxy nella propria LAN come si vuole. In questo
caso il firewall dovrebbe però contenere delle regole che consentano la
connessione ad Internet, e per i servizi che intende fornire, solo al server proxy.
In questo modo gli utenti potranno accedere ad Internet solamente attraverso il
proxy.
__________
|
|
_______________
|
|
| Sistema | (LAN) |
|
/ Internet \----| Firewall |--(HUB)--| Workstation/s |
\_ _ _ _/
|__________|
|
|_______________|
\/ \/ \/
|
______________
|
|
|
+----| Server Proxy |
|______________|
_/\__/\_
50
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
2.3 GLI ASPETTI IMPLEMENTATIVI
2.3.1 ERD (Diagramma Entità Relazione)
G
li ERD sono oggi degli strumenti che modellano la realtà di interesse
specificando i dati e le relazioni che esistono tra di essi. La
modellazione è una tecnica ben diffusa nel settore informatico. Nel settore della
programmazione, un valido esempio è rappresentato dal DFD (diagramma di
flusso: rappresentazione in schema delle decisioni e delle sequenze di attività da
effettuare per eseguire una procedura).
Anche nell’analisi e nella progettazione di sistemi informatici dobbiamo
costruire dei modelli in modo da evidenziare o enfatizzare le caratteristiche
critiche del progetto (della soluzione o del problema), ponendone in secondo
piano altre meno importanti (o meno complesse da realizzare). Inoltre, qualora
risultasse che la nostra comprensione del problema (requisiti del progetto) non
sia corretta, o in ogni caso che i requisiti esposti dal committente non siano i reali
requisiti del progetto, potremo rettificare il solo modello, oppure "gettarlo" e
ridisegnarlo.
L’alternativa (metodo storico) sarebbe quella di realizzare il progetto senza
discussioni e rivisitazioni iniziali con il committente/utente, correndo il rischio di
accorgersi che, in fase di rilascio, il prodotto non soddisfa l’utente e che quindi lo
considera inaccettabile. Pertanto, l’analista deve utilizzare gli strumenti di
modellizzazione per:
51
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 focalizzare l’attenzione sulle caratteristiche importanti del sistema e
mettere in secondo piano gli aspetti poco rilevanti;
 discutere con il futuro utente le soluzioni, apportando le correzioni ai
requisiti funzionali e alle strutture solutive, con il minor costo ed impegno
possibile (si modificano disegni e non sistemi);
 verificare che i partecipanti all’analisi abbiano compreso nel modo
corretto il sistema dell’utente, e che tutte le relazioni del nuovo sistema
siano state valutate;
 rilevare in modo documentativo tutte le caratteristiche tecnico/funzionali
in modo da consentirne la realizzazione da parte dei progettisti e dei
programmatori.
Tra le tecniche più usuali per la modellazione si citano le seguenti:
 diagramma di entità relazioni (ERD, Entity Relation Diagram);
 diagramma di flusso di dati (DFD, Data Flow Diagram);
 diagramma di transizione di stato (STD, State Transition Diagram).
Il primo illustra le relazioni che intercorrono tra i dati e le relative modalità che
venne proposta nel 1976 da Peter S. Chen. Grazie alla sua semplicità ed efficacia
di rappresentazione, il diagramma ERD è oggi quello più ampiamente utilizzato
per rappresentare le strutture dati, anche se spesso con formalismi diversi da
quelli originali.
Il secondo illustra le funzioni che il sistema deve eseguire, e si presta al principio
della "scomposizione funzionale"; il terzo descrive il sistema in funzione del
tempo.
Ognuno di questi modelli consiste in strumenti grafici e testuali.
52
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Elementi di base dei DFD:
agente esterno
(external agent)
deposito
(data store)
processo
(process)
Esempio DFD:
Cliente
ordine
Ordini
Acquisisci
ordine
Esempio E_R
VENDITORE
Ordine
acquisto
CLIENTE
acquista
ORDINE
LIBRO
Un tipico diagramma entità-relazioni
53
flusso di dati
(data flow)
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Esempio STD
STATO1
STATO2
STATO3
Pur non possedendo lo stesso fascino dei diagrammi grafici quali ERD, DFD e
STD, il Dizionario Dati (DD, Data Dictionary). è di fondamentale importanza.
Senza di esso il sistema in progettazione risulterebbe solo una specie di
raffigurazione artistica.
Il DD è un elenco organizzato di tutti gli elementi di dati che riguardano il
sistema, con definizioni precise e rigorose in modo che ognuno possa
comprendere tutti gli input, gli output componenti di depositi, campi e calcoli
intermedi.
2.3.3 ASP (Application Service Provider)
C
on la sigla ASP (Application Service Provider) si intende un operatore
professionale che eroga servizi in un qualsiasi contesto di "rete".
54
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Rispetto ai tradizionali servizi offerti dall'ISP (Internet Service Provider), l'ASP
fornisce l'affitto di applicazioni software.
Queste applicazioni possono essere di diversa natura, dai tradizionali fogli
elettronici, editor di testi, data base ecc., alle videoconferenze, e, addirittura,
all'automazione di tutto il sistema aziendale (gestione ordini, magazzino,
contabilità). Per la realizzazione di tutto questo processo è necessario il
verificarsi di una condizione risolutiva, in pratica, l'introduzione di una
maggiore ampiezza di banda. Per lo svolgimento delle sue funzioni l'ASP deve
assicurarsi prodotti hardware e software di nuova tecnologia, in modo che la
protezione e la sicurezza siano adeguate agli standard che i clienti gli
richiederanno.
Dovrà essere evitato qualsiasi tipo di problema connesso con la stabilità del
sistema, con la sua scalabilità, o con l'autenticazione degli accessi da parte di
utenti remoti.
Software in affitto
Non è più necessario dotarsi di interi pacchetti applicativi, installarli sulla propria
rete locale, configurare il tutto e manutenerli in continuazione. E poi gestire gli
aggiornamenti, fare copie di back-up (riserva), rivedere periodicamente
l’hardware per controllare che non sia obsoleto. Con la modalità ASP è possibile
“affittare” il servizio che rende disponibile all’azienda i programmi di cui ha
bisogno, completi di manutenzione e di apparati hardware e software necessari al
loro corretto funzionamento. All’azienda resta solo “l’onere” di usare tali
programmi da qualunque postazione collegata ad Internet.
Diverso è il concetto di “asp” (active server page), la tecnologia che ci permette
di manipolare le informazioni che il server raccoglie per noi.
55
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
L’”asp” è un linguaggio di scripting (scrittura) con i seguenti vantaggi:
1) Le pagine “asp” sono completamente integrate con i file HTML
2)
Sono
facili
da
creare
e
non
necessitano
di
compilazione.
3) Sono orientate agli oggetti e usano componenti server ActiveX.
Un altro aspetto da tener presente nel portare un data base su rete sono le
transazioni e le diverse tecnologie usate per comunicare: ISDN, ADSL, ect.
2.3.4 JMS E XML
G
li
strumenti
progettuali
presentati
necessitano
all’atto
dell’implementazione di strumenti informatici adeguati che consentono
sia un’efficace interazione dell’utente, sia una strutturazione di documenti
trasmessi in modo da renderli il più possibili ai documenti tradizionali.
A questo scopo si adottano il linguaggio Java per la creazione delle interfacce
utente e lo scambio dei messaggi e il linguaggio XML per la strutturazione dei
documenti.
Il linguaggio più diffuso più diffuso per favorire l’interazione dell’utente
attualmente è Java, perché è quello che meglio si cala nell’ambiente aziendale. I
suoi punti di forza sono l’assoluta portabilità del codice, poiché Java è un
linguaggio interpretato e quindi multipiattaforma, la sua scalabilità e la
flessibilità: infatti, può essere utilizzato sia per lo sviluppo di semplici oggetti
d’esempio, sia per la creazione di applicativi GUI stand-alone o per il WEB (le
Applet).
56
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Java tuttavia offre le migliori prestazioni quando viene utilizzato come
linguaggio di programmazione per applicazioni complesse, perché permette di
utilizzare XML e XSL in maniera semplice e perché rende comoda e facile
l’integrazione di qualsiasi database relazionale.
Il linguaggio ha potenzialità indiscutibili se viene utilizzato per lo sviluppo di
applicazioni WEB, ma soprattutto è il migliore quando si ha la neccessità di
creare applicazioni distribuite, grazie all’infrastruttura fornita dagli application
server che permettono l’utilizzo degli Enterprise JavaBean (EJB). Inoltre
promette un insieme di nuove funzioni legate a CORBA e alla gestione delle
transazioni - come il Java Messaging Service (JMS).
JMS (Java Message Service): Si tratta di librerie API Java che forniscono una
piattaforma comune per lo scambio di messaggi fra computer collegati nella
stessa rete di comunicazione, utilizzando uno dei tanti sistemi diversi di
messaggistica, come MQSeries, SonicMQ od altri, con l'utilizzo di Java e XML.
PACKAGE
APPLICATION
FRONTED
APPLICATION
E-BUSINESS
MESSAGING
ASP
APPLICATION
FORNITORI
DISTRIBUTORI
IMPRESE
DISTRIBUITE
CONSUMATORI
57
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
All'interno di un’azienda abbiamo una parte Applicazioni Fronted e dall'altra
Applicazioni pacaged; il problema consiste nel far comunicare fra loro sistemi
diversi.
L'uso di XML e SONICMQ permette di soddisfare le richieste del mercato
fornendo, il primo, un linguaggio comune e, il secondo, uno strumento per il
trasporto dei dati.
Queste richieste consistono nella scalabilità, ossia 100 utenti con alta
disponibilità che devono poter lavorare sempre con processi attivi e il massimo
della sicurezza affidando tutto a un server che riceve i messaggi e li gestisce. In
tutto questo il ruolo della messaggistica è molto importante in quanto semplifica
lo sviluppo e l'integrazione delle applicazioni, permette una comunicazione
asincrona e singoli punti di integrazione.
Il JMS (servizio di messaggistica Java) è costituito di due modelli:
 PUNTO A PUNTO (Point-to-Point)
 DIVULGARE E SOTTOSCRIVERE (Publish-and-Subscribe)
Dove point-to-point è intesa come relazione 1 a 1 e Publish/subscribe come
relazione 1 a molti. I destinatari dei messaggi vengono chiamati clients (clienti)
mentre il mittente o sistema di messaggistica provider (fornitore).
- Nel modello Point-to-point si permette ai clienti JMS di spedire e ricevere
messaggi sincroni e asincroni attraverso un canale virtuale detto Queues (coda).
Questi vengono registrati su una coda prima di essere inviati automaticamente ai
destinatari. Una volta confermata la destinazione del messaggio questo viene
eliminato e non è più disponibile per altri utenti, per questo si parla di
corrispondenza uno a uno. Un tipico esempio è la gestione della vendita dei
biglietti aerei on-line.
58
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
- Nel modello Publish-subscrive un fornitore può spedire un messaggio a più
clienti attraverso un canale virtuale detto TOPIC (cuore, centro). Ogni utente ha
una copia del messaggio. I destinatari, che ricevono il messaggio, possono
scegliere se sottoscriverlo o no. Per questo si parla di relazione uno a molti.
SUBSCRIBER
PUBLISHER
TOPIC
SUBSCRIBER
PUBLISHER/SUBSCRIBER
DESTINATARIO
MITTENTE
CO D A
DESTINATARIO
POINT-TO-POINT
Architetture possibili:
 PEER to PEER
Tutte le architetture decentralizzate usano il protocollo Ip Multicast
(trasmissione contemporanea a un certo numero di stazioni di lavoro) al
59
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
livello rete. Il server per i messaggi non si trova al centro e ogni
messaggio viene ricevuto da tutti i client (clienti) attraverso l'indirizzo di
rete IP.
(peer-to-peer)
JMS
Clie
nt
JMS
Clie
nt
JMS
Clie
nt
JMS
Clie
nt
JMS
Clie
nt
JMS
Clie
nt
 A Bus
Attraverso un canale tutti gli utenti sono connessi al Bus. E' vantaggioso
per la ricezione dei messaggi ma se vi sono già due aziende, per esempio,
che comunicano fra loro può esserci il rischio di collisione.
JMS
Client
JMS
Client
JMS
Client
Message
Server
JMS
Client
JMS
Client
JMS
Client
60
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 A rigger (Hub and spoke)
Un sistema di messaggistica che usa un’architettura centralizzata fa
affidamento su un server di messaggi, chiamato anche router o broker, che
è responsabile della loro trasmissione da un utente a un altro. Tipicamente
un’architettura centralizzata usa la tipologia Hub-and spoke (a raggera),
con un server al centro e connessi ad esso tutti i client.
Non è molto vantaggiosa in quanto se “cade” la connessione al server
centrale i messaggi vengono persi. Per questo motivo è stata apportata la
modifica dei Cluster aggiungendo tanti server per evitare la perdita di
connessione.
Centralized message server
(cluster)
JMS
Client
JMS
Client
JMS
Client
S
S
Server Cluster
S
JMS
Client
JMS
Client
JMS
Client
61
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Anatomia del messaggio
1. headers (testata)
2. proprietà (definite dall'utente)
3. corpo
- L'headers fornisce informazioni sul messaggio stesso quali, chi ha creato il
messaggio, quando è stato creato, per quanto tempo è valido e sul percorso
per arrivare alla destinazione (coda o topic).
- Le proprietà costituiscono un'aggiunta alla testata e variano a seconda del
tipo del messaggio, vengono definite prima che il messaggio sia spedito
dall'utente stesso. Il valore di una proprietà può essere String (stringa),
boolean (vero/falso), byte, int, long, double o float.
- Il corpo, infine, contiene il messaggio vero e proprio.
Una sessione di transazione è caratterizzata in JMS da un Before commit () e da
un End Commit() per portare il messaggio da un mittente a un destinatario.
Se la connessione viene persa il messaggio verrà recuperato.
Uno strumento importante in questo contesto é SONICMQ per l'utilizzo dei
messaggi XML e della DEAD Messages QUEUE (coda dei messaggi morti).
Infatti, anche il messaggio “cade” non viene perso ma posto in una coda speciale
che viene periodicamente ricontrollata, in questo modo a seconda della sua
importanza questo viene eliminato o rispedito.
L’architettura di SonicMq è la DRA (Dynamic Routing Architecture,
Architettura di Avviamento dinamico); costituita da una sede centrale con i
server connessi ad altre sedi secondarie.
62
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Può far comunicare due sistemi in rete anche attraverso un DMZ (Client Side
Forward Proxy), utilizzando i classici protocolli di rete HTTP e TCP/IP, i
firewall per la sicurezza e un proxy server SonicMQ.
Viene usato per la sua alta disponibilità di utilizzo in numerose applicazioni.
Perché due sistemi differenti possano comunicare tra loro SonicMq introduce il
SERVER BRIDGE che fa da ponte tra l’uno e l’altro.
63
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
SonicMq presenta un insieme di interessanti caratteristiche: il supporto per
Brocker multipli consente la connessione simultanea di vari server di
messaggistica, i client collegati possono scambiare velocemente le informazioni
in un ambiente distribuito, una funzione di replicazione asincrona permette di
continuare i lavori attualmente in svolgimento, anche se in attesa di una risposta
e questa caratteristica risulta preziosa specialmente per gli utenti mobili o che
lavorano off-line. La consegna garantita assicura a tutti gli utenti la ricezione dei
messaggi inviati offrendo nello stesso tempo un adeguato livello di sicurezza.
SonicMQ supporta, infatti: l’identificazione, l’autenticazione, l’autorizzazione e
il controllo degli accessi tramite certificati digitali e la cifratura a 40 o 128 bit.
Per tutti questi punti di forza SonicMQ, legato all’XML e al JMS, costituisce un
valido strumento per permettere le comunicazioni operate da diverse
applicazioni tramite Internet.
L'HTML ha rivoluzionato il modo in cui le persone inviano e ricevono
informazioni, ma lo scopo principale per cui è stato realizzato è la
visualizzazione dei dati. Per questo motivo, l'HTML prende in considerazione
soprattutto il modo in cui le informazioni vengono presentate e non il tipo o la
struttura di tali informazioni, aspetti per i quali è stato sviluppato il linguaggio
XML (eXtensible Markup Language).
L'XML è un linguaggio di markup aperto e basato su testo che fornisce
informazioni di tipo strutturale e semantico relative ai dati veri e propri. Questi
"dati sui dati", o metadati, offrono un contesto aggiuntivo all'applicazione che
utilizza i dati e consente un nuovo livello di gestione e manipolazione delle
informazioni basate su WEB. Nasce dall'esigenza di portare nel World Wide
WEB lo Standard Generalized Markup Language (SGML), lo standard
64
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
internazionale per la descrizione della struttura e del contenuto di documenti
elettronici di qualsiasi tipo. Si caratterizza per la semplicità con cui è possibile
scrivere documenti, condividerli e trasmetterli nel WEB.
L'XML è importante in due classi di applicazioni WEB: la creazione di
documenti e lo scambio dei dati.
I server WEB attualmente utilizzati richiedono, per essere in grado di servire
documenti XML, minime modifiche di configurazione; inoltre il metodo
standard di collegamento e la connessione dei documenti XML, utilizza gli
URL, che vengono interpretati correttamente della maggior parte del software
per Internet.
L'XML non è limitato a un insieme fisso di tipi di elementi, ma permette di
definire e utilizzare elementi e attributi personalizzati; per far questo viene
fornita una sintassi con cui è possibile specificare gli elementi e gli attributi che
possono essere utilizzati all'interno dei documenti. In altre parole è possibile
creare un modello, chiamato Document Type Definition (DTD), che descrive la
struttura e il contenuto di una classe di documenti in cui vengono elencate le
regole della specifica stessa del linguaggio.
65
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Questo nuovo linguaggio avrà probabilmente un impatto deciso nel campo di
Internet nel prossimo futuro e cambierà completamente lo scenario a cui gli
utenti sono ora abituati.
66
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
3. UN CASO DI STUDIO
3.1 INTRODUZIONE
U
na Pubblica Amministrazione (nel seguito PA) è una complessa
macchina il cui funzionamento è determinato da persone, strutture
organizzative, procedure operative, strumenti informatici di supporto, modalità
di interazioni con altre entità dello Stato e della società civile. Tale macchina
opera, come ovvio, secondo principi e criteri che variano a seconda della PA
considerata e che tengono conto del ruolo che quella amministrazione svolge
all’interno della struttura dello Stato.
Tuttavia, esiste un tratto comune che lega amministrazioni anche assai diverse
tra loro. Ogni amministrazione consuma e produce un’enorme quantità di
informazioni. Tali informazioni si materializzano sotto forma di documenti che
hanno varia natura sia per ciò che concerne i contenuti (per esempio l’ordine di
trasferimento di un impiegato o la cartella esattoriale inviata ad un contribuente
67
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
non in regola) che la loro struttura fisica (per esempio un messaggio di posta
elettronica o una classica lettera su carta).
I documenti vengono prodotti, utilizzati, comunicati e mantenuti nell'esercizio
delle attività amministrative che ogni PA svolge per il raggiungimento degli
obiettivi stabiliti nel proprio mandato istituzionale. Tali attività sono articolate
per processi o, in alcuni casi, per veri e propri "procedimenti amministrativi",
caratterizzati da sequenze di atti governate da regole e procedure più o meno
complesse a seconda dello scopo e contesto del processo considerato. L'attività
di protocollo è quella fase del processo che certifica provenienza e data certa di
acquisizione del documento, mediante la sua identificazione univoca nell'ambito
di una sequenza numerica collegata con l'indicazione temporale.
La registrazione di protocollo svolge, quindi, un ruolo essenziale nella gestione
dei procedimenti prevista ai sensi della legge 241/1990 e, più in generale, in tutti
i processi amministrativi che prevedono fasi di attività e termini certi per la loro
conclusione.
Anche per le attività di protocollazione sono disponibili supporti informatici in
grado di creare e gestire il protocollo informatico, cioè l’insieme delle
registrazioni che vengono effettuate ogni qual volta un documento venga
ricevuto o prodotto. Tali sistemi possono essere modularmente integrati in un
sistema vero e proprio di supporto al lavoro cooperativo, oppure includere essi
stessi alcune forme di minime supporto ai processi e ai flussi amministrativi.
Alla luce di quanto detto, risulta evidente che il problema dell’automazione e
della creazione di un sistema informatico di protocollazione è strettamente legato
allo studio e all'automazione dei flussi e processi amministrativi.
68
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
3.2 ATTIVITA’ DI PROTOCOLLAZIONE
L
'attività di protocollazione, archiviazione e gestione del flusso dei
documenti costituisce l'asse portante dei procedimenti amministrativi
svolti all'interno della Pubblica Amministrazione. Tale attività è centrale nella
esecuzione dei processi operativi svolti nelle Amministrazioni e tra le
Amministrazioni, e può trovare nelle tecnologie della informazione un
significativo strumento abilitante ed un importante aiuto ai fini del
miglioramento della efficienza ed efficacia.
I processi di protocollo vengono generalmente considerati, oltre che a bassa
centralità rispetto ai compiti istituzionali degli uffici, anche a bassa difficoltà e
vengono amministrati con un livello di automazione solo parziale. Molte
amministrazioni
continuano
a
dare
limitata
rilevanza
all'attività
di
protocollazione mantenendo, in molti casi, un'impostazione organizzativa
frammentata su più uffici di protocollo e archivio.Anche per questo motivo,
finora, gli interventi di automazione sono consistiti, per lo più, nell'utilizzo della
tecnologia come semplice supporto alle attività ripetitive di tenuta del registro
protocollo. Alla radice di questo apparente paradosso tra le elevate potenzialità e
la scarsa applicazione di soluzione tecniche avanzate, c'è una valutazione diffusa
nell'Amministrazione pubblica che guarda alle attività di protocollo come
registrazioni "burocratiche" di riferimenti in entrata, archiviazione e uscita senza
riuscire a cogliere le valenze del protocollo in termini di snodo nella gestione dei
flussi di documenti e nella configurazione dei processi di servizio.
La CIRCOLARE 7 maggio 2001, n. AIPA/CR/28 Articolo 18, comma 2, del
decreto del Presidente del Consiglio dei ministri 31 ottobre 2000, recante regole
69
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
tecniche per il protocollo informatico stabilisce uno Standard, modalità di
trasmissione, formato e definizioni dei tipi di informazioni minime ed accessorie
comunemente scambiate tra le pubbliche amministrazioni e associate ai
documenti protocollati.
Lo sviluppo e la messa in esercizio dei primi sistemi di protocollo informatico,
realizzati a seguito dell’entrata in vigore delle recenti norme in materia e
destinati, in particolar modo, a sostituire le registrazioni su carta, hanno fatto
emergere questioni di carattere applicativo ed amministrativo, ad esempio
relativamente alle modalità di interconnessione tra diversi sistemi di protocollo
informatico e alla loro integrazione con la posta elettronica e la firma digitale.
In effetti, i sistemi di gestione informatica dei flussi documentali, orientati alla
trasparenza amministrativa ed all’efficienza interna, si collocano in una
dimensione più ampia nell’ottica della interconnessione e interoperabilità dei
sistemi informativi pubblici.
Per interoperabilità dei sistemi di protocollo informatico si intende la possibilità
di trattamento automatico, da parte di un sistema di protocollo ricevente, delle
informazioni trasmesse da un sistema di protocollo mittente, allo scopo di
automatizzare altresì le attività ed i processi amministrativi conseguenti.
Il sistema di protocollo informatico deve:
1.
Garantire sicurezza ed integrità dei dati.
2.
Garantire la corretta e puntuale registrazione del protocollo sui
documenti in entrata ed in uscita.
3.
Consentire l’assegnazione della pratica da parte del Dirigente Generale
tramite documento elettronico.
70
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
4.
Fornire informazioni sul collegamento esistente tra ciascun documento
ricevuto dall’Amministrazione e gli altri eventuali documenti inerenti il
medesimo procedimento.
5.
Consentire il reperimento delle informazioni riguardanti i documenti
registrati.
6.
Consentire, in condizioni di sicurezza, l’accesso alle informazioni ai
soggetti che ne hanno diritto.
7.
Garantire la corretta organizzazione dei documenti (fascicolo
elettronico) nell’ambito del sistema adottato.
3.1.1 Gestione dell’archivio
L
’archivio è un complesso di documenti aventi finalità pratico
giuridiche; nasce con rilevanza giuridica e successivamente diventa
bene culturale. L’archivio è composto da Documenti, che equivalgono alla
testimonianza di un evento, di dati, ect. E’ disciplinato dalla legge 30 settembre
1963, n.1409 sugli archivi.In tale legge non è definito che cosa è l’archivio in
quanto per questo si fa riferimento alla dottrina archivistica, ma viene
regolamentata la costituzione e la vita nel tempo dello stesso. A questa legge
fanno riferimento le gestioni degli archivi negli Enti Pubblici; definisce il
concetto di archivio nel tempo e l’Art.30 ne definisce la suddivisione in tre
parti:
 Archivio Corrente (in via di costituzione)
 Archivio di Deposito (transito per 40 anni)
71
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 Archivio Storico
Il passaggio da uno stato all’altro (versamento) è regolamentato dall’art.35 che
fissa le modalità per le autorizzazioni necessarie per procedere allo scarto dei
documenti, operazione che precede sempre il passaggio da uno stato all’altro
dell’archivio.
Sono soggetti Titolari di archivio (e pertanto soggetti alla predetta legge):
- Le Amministrazioni dello Stato;
- Gli Enti Pubblici diversi dallo stato;
- Gli Enti Ecclesiastici;
- I Privati cittadini.
Le disposizioni legislative sanciscono l’obbligo:
- della registratura (Protocollo)
- della classificazione nella suddivisione:
 TITOLO D’ARCHIVIO
 CLASSE
 SOTTOCLASSE
A tale suddivisione debbono sottostare tutti i documenti che vanno a formare
un Fascicolo.
Emerge molto chiaramente che il protocollo (entrata/uscita) è parte importante
della più ampia attività di gestione dell’archivio. Gestire l’archivio significa,
principalmente, disporre degli elementi atti a classificare in modo chiaro
l’archivio corrente che dovrà poi confluire nell’archivio di deposito dove
permarrà 40 anni prima di diventare archivio storico.
72
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
La classificazione è l’operazione prima, fatta (o che dovrebbe essere fatta)
all’atto della protocollazione del documento in entrata. Le modalità di
classificazione sono diversamente regolamentate a seconda del tipo di archivio.
L’attività di registrazione del documento è composta da tre fasi principali che
possono essere eseguite contestualmente o in momenti diversi secondo
l’organizzazione delle mansioni relative all’ufficio protocollo.

Memorizzazione: identificazione del documento, ovvero classificazione,
oggetto, mittenti, destinatari.

Protocollazione: Acquisizione automatica del numero di protocollo
generale, data e ora di attribuzione.

Assegnazione: Completate le operazioni di riconoscimento, si può procedere
all’assegnazione o alla spedizione del documento in oggetto al settore di
competenza o a funzionario.
Il documento può contenere degli allegati. Questi vengono gestiti o come
semplice informazione del documento (numero di allegati) o in qualità di
effettivi componenti del documento stesso, quindi classificati e riconosciuti e
comunque legati al documento principale del quale seguiranno il flusso.
L’eventuale identificazione degli allegati può essere effettuata in una fase
successiva alla registrazione, ossia durante la fase di accettazione da parte
dell’ufficio o funzionario assegnatario.
Quadro Normativo
Dal punto di vista normativo il periodo 1997-2000 è stato caratterizzato da
un’azione coordinata di interventi che definiscono un nuovo quadro di
riferimento per la gestione elettronica delle attività amministrative:
73
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 l’articolo 15, comma 2, della legge 15 marzo 1997, n. 59, che prevede che gli
atti, dati e documenti, formati dalla pubblica amministrazione e dai privati
con strumenti informatici e telematici, i contratti stipulati nelle medesime
forme nonché la loro archiviazione e trasmissione con strumenti informatici,
sono validi e rilevanti a tutti gli effetti di legge;
 il decreto del Presidente della Repubblica 10 novembre 1997, n. 513,
“Regolamento recante criteri e modalità per la formazione, l’archiviazione e
la trasmissione di documenti con strumenti informatici e telematici, a norma
dell’articolo 15, comma 2, della legge 15 marzo 1997, n. 59”;
 l’art. 4 della legge 16 giugno 1998, n.191, e il relativo regolamento emanato
con DPR 8 marzo 1999, n.70, in materia di telelavoro nelle pubbliche
amministrazioni;
 la delibera dell’AIPA del 30 luglio 1998, n.24, che definisce le regole
tecniche sull’archiviazione ottica;
 il decreto del Presidente della Repubblica 20 ottobre 1998, n. 428, recante
“Regolamento per la tenuta del protocollo amministrativo con procedura
informatica”, che fissa criteri e modalità per la gestione elettronica dei
documenti, consente la interoperabilità tra le amministrazioni pubbliche e
l’accesso esterno al sistema documentario, compatibilmente con le norme
sulla tutela dei dati personali;
 il decreto del Presidente del Consiglio dei ministri 8 febbraio 1999, recante le
“Regole tecniche per la formazione, la trasmissione, la conservazione, la
duplicazione, la riproduzione e la validazione, anche temporale, dei
documenti informatici ai sensi dell’articolo 3, comma 1, del decreto del
Presidente della Repubblica 10 novembre 1997, n.513”;
74
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 la circolare dell’Autorità per l’informatica nella pubblica amministrazione
(AIPA) 26 luglio 1999, n.22, che detta le modalità per presentare le domande
di iscrizione nell’elenco pubblico dei certificatori;
E’ da sottolineare, da ultimo, la Direttiva del Presidente del Consiglio dei
Ministri 28 ottobre 1999 sulla gestione informatica dei flussi documentali nelle
pubbliche amministrazioni, che fornisce un fondamentale stimolo alle
amministrazioni nella concreta attuazione del quadro normativo ora esistente,
sollecitando un profondo cambiamento di tipo organizzativo e culturale ancor
prima che un aggiornamento di tipo tecnologico.
Il quadro normativo e tecnico viene completato - a norma dell'art. 4, comma 4,
del DPR 20 ottobre 1998, n. 428 - con le regole e criteri relativi alle operazioni
di registrazione di protocollo. Tale provvedimento rappresenta l’elemento
conclusivo del quadro normativo e tecnico del nuovo sistema di gestione
elettronica delle attività amministrative.
3.1.2 Attuali implementazioni
L
a pubblica amministrazione è da tempo sensibile al tema dell'adozione
delle
tecnologie
telematiche
sia
per
favorire
i
processi
di
razionalizzazione interna che per ricostruire su basi nuove il rapporto con gli
utenti. Oggi sta attraversando un momento di intenso cambiamento grazie al
Piano d'Azione del Ministro Bassanini che individua e fornisce i finanziamenti
per raggiungere, nell'arco di un anno, tre obiettivi: il miglioramento
75
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
dell'efficienza operativa interna, l'offerta di servizi integrati e la garanzia
dell'accesso via Internet a informazioni e servizi per tutta la cittadinanza.
L’avvio di un programma di informatizzazione del protocollo che si estende
all’automazione dei processi e delle funzioni di gestione documentale non può
essere ridotto ad una questione di introduzione di tecnologia. Al contrario
l'introduzione dei nuovi strumenti tecnologici può portare ai risultati finali attesi
solo se coniugata ad un intervento organizzativo di grande profondità.
Tra le azioni più significative di analisi organizzativa spicca senz’altro la
rideterminazione degli ambiti dei nuovi sistemi di protocollo informatico, ossia
la individuazione delle Aree Organizzative Omogenee (nel seguito AOO)
previste dal DPR 428, nelle quali è da prevedersi un sistema unico di protocollo
e gestione documentale, gestito da una specifica struttura, il "Servizio per la
tenuta del protocollo informatico…". Questa individuazione consente di arrivare
ad una diminuzione e semplificazione dell'insieme dei sistemi di protocollo oggi
esistenti. Questi specifici "sotto-domini", non vanno ovviamente visti come aree
chiuse, ma al contrario ne andranno definite le interazioni con gli altri sistemi.
Esplicita indicazione di migliorare
l’efficienza dei processi di
gestione documentale attraverso
l’eliminazione della
frammentazione dei sistemi di
protocollo.
prima
dopo
76
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Come già evidenziato nel documento Gedoc del febbraio 1997 approvato
dall’Autorità per l’informatica, il fenomeno della frammentazione dei registri di
protocollo è una delle maggiori cause di inefficienze nella gestione dei
documenti delle pubbliche amministrazioni.
La tendenza ad utilizzare numerosi registri di protocollo, spesso corrispondenti
ad altrettanti uffici con strutture e personale dedicati, si è evoluta dalla duplice
esigenza di suddividere i documenti per tipologia di argomento e nello stesso
tempo di tenere traccia dell'iter dei documenti all'interno dell'amministrazione.
Tra le conseguenza negative derivanti da tale frammentazione va certamente
citata la ripetuta protocollazione del documento (con annesse le operazione di
registrazione di dati ridondanti) ad ogni passaggio anche tra strutture interne alla
stessa sede di una amministrazione, oltre alle notevoli difficoltà di reperimento
di un documento protocollato tali da rendere, paradossalmente, l'individuazione
della collocazione fisica di documento un problema secondario rispetto
all'individuazione del registro di protocollo in cui esso era stato registrato.
La nuova normativa, avvalendosi delle nuove tecnologie disponibili (scanner,
timbri elettronici, reti di telecomunicazione, posta elettronica, strumenti di
workflow e quant'altro), va nella direzione di una migliore organizzazione del
flusso e della archiviazione dei documenti all'interno delle amministrazioni. In
altri termini con l'attuazione del DPR 428/98 si andrà sempre più, sfruttando le
infrastrutture di rete, verso una deframmentazione degli uffici di protocollo e
quindi verso una diminuzione del numero dei registri di protocollo secondo
criteri di coesione interna dal punto di vista funzionale pur nel rispetto di
eventuali vincoli di tipo logistico e/o organizzativi.
77
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
3.2 ANALISI E PROGETTO
I
l nostro obbiettivo è quello di realizzare un progetto che preveda la
gestione del Protocollo per Enti Pubblici fruibile e condivisibile in rete.
Per realizzare l’interoperabilità dei sistemi di protocollo informatico gestiti dalle
pubbliche amministrazioni distribuite sul territorio, è necessario, in primo luogo,
stabilire una modalità di comunicazione comune, che consenta la trasmissione
telematica dei documenti sulla rete.
Oltre ad una modalità di comunicazione comune si richiede anche una efficace
interazione dei sistemi di gestione documentale. In questo senso, le regole
tecniche
suggeriscono
di
riportare
alcune
informazioni
archivistiche
fondamentali, per facilitare il trattamento dei documenti da parte del ricevente.
Tali informazioni sono incluse in ciascun messaggio protocollato e sono
codificate in formato XML. L’XML è nato per permettere agli utenti del Word
Wide Web di condividere le informazioni su sistemi differenti. Si utilizza in 3
categorie di applicazioni:
1. applicazioni che richiedono WEB client di mediare tra due o più database
eterogenei.
2. applicazioni che tentano di distribuire processi di caricamento di
informazioni dal WEB server al WEB client.
3. applicazioni che richiedono al WEB client di presentargli differenti viste
degli stessi dati a utenti differenti.
Lo scenario di riferimento abilitato dalle nuove norme sarà quello di una
progressiva sostituzione del supporto cartaceo nella gestione dei procedimenti
delle amministrazioni. Attraverso la trasmissione e lo scambio dei documenti
78
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
informatici, nel loro formato originario, attraverso la Rete unitaria si eviteranno
duplicazioni e accumuli di inutili copie cartacee e verrà favorita la
trasformazione graduale degli archivi cartacei della P.A. in sistemi informativi
automatizzati ad alto livello di sicurezza ed affidabilità. Le norme relative alla
gestione informatica dei documenti (DPR 428/98 e relative regole tecniche)
introducono alcuni adempimenti richiesti alle amministrazioni per la attuazione
di indispensabili misure organizzative.
Architettura e modalità di interazione
Il modello di riferimento è un’architettura client/server distribuita in rete, basata
su protocollo TCP/IP, con dati memorizzati su server e informazioni reperibili
dagli enti pubblici attraverso transazioni, in cui il Browser (Internet Explorer 5 o
successivi e Netscape) si sostituisce alle interfacce utente tradizionali. Il
programma prevede l’utilizzo in due modalità differenti: in modalità ASP e in
modalità Intranet.
Nella prima, gli enti pagano un canone di noleggio per accedere al DB che
risiede nel server centrale dell’azienda distributrice del servizio. Innovativo in
questo progetto è l’utilizzo dell’ASP (Application Service Provider), struttura in
grado di offrire ai propri clienti soluzioni applicative software in remoto senza
investimenti di capitale. Questo è possibile grazie a sofisticate soluzioni di rete
che rendono disponibili per l’uso via Internet di programmi progettati fin
dall’inizio secondo specifiche che ne consentono l’uso remoto, la gestione e
l’aggiornamento.
Nella modalità Intranet, invece, gli enti pubblici dovranno necessariamente
dotarsi dell’intero pacchetto applicativo, installarlo sulla propria rete locale,
79
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
configurare il tutto ed effettuare la manutenzione continuamente, gestire gli
aggiornamenti, fare copie di back-up e rivedere periodicamente l’hardware per
controllare che non sia obsoleto.
In entrambe le modalità, emergono esigenze tipiche del settore della base di dati:
da una parte quelle legate alla identificazione degli utenti e alla sicurezza,
dall’altra quelle legate all’affidabilità delle transazioni. La sicurezza, se si
utilizza l’ASP è garantita dalla presenza di un firewall software, mentre con
Intranet ogni ente vi provvederà in base alle proprie esigenze.
L’affidabilità delle transazioni è garantita da Progress, col quale il DB è stato
implementato. Progress utilizza delle query SQL tra il server e il client che
vengono inviate a WebSpeed, questo tramite WWS (Web Speed Scripts) genera
le pagine HTML che verranno visualizzate dal Browser. Se durante una
transazione si verifica una caduta di connessione prima della chiusura della
pagina, le informazioni non vengono salvate nel DB. Un’ulteriore garanzia sulla
sicurezza delle transazioni può essere l’utilizzo di SoniqMQ, sistema di
messaggistica che si basa su JMS che, installato sia su server che su client,
permette di avere più server a disposizione evitando la caduta della connessione
e quindi il fallimento della transazione.
L’implementazione del programma su Internet permette l’accesso simultaneo di
più operatori allo stesso DB e quindi bisogna gestire le transazioni con dei
blocchi (locking). All’interno del DB ci sono due tipi di blocchi: blocco alla
tabella (es. inserimento di due diversi protocolli) e blocco al record (es. modifica
di uno stesso protocollo); per entrambi è necessario che il salvataggio dei dati
avvenga in modo seriale per garantire l’integrità dei dati.
80
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Progetto del DB
A seguito di quanto detto nei paragrafi precedenti, è stato realizzato l’ERD,
mostrato in fig. 1 e fig. 2.
Esso tiene conto della normativa descritta in precedenza.
Come si vede dal disegno le entità sono:
 ENTI: l’insieme degli enti che possono gestire il protocollo. Essi vengono
classificati in base alla loro denominazione e ad un codice che li identifica.
 ESERCIZI: ogni ente gestisce i protocolli annualmente (01/01 – 31/12) e allo
scattare del nuovo anno l’esercizio viene chiuso. L’esercizio corrente è
l’unico aperto e raggruppa tutti i protocolli presentati.
 OPERATORI: gli enti autorizzano solo alcuni operatori all’accesso al
protocollo ma non tutti possono apportare modifiche alla struttura del DB. Il
controllo dell’accesso viene fatto tramite i campi password e firma
elettronica.
 SETTORI: in base alle funzioni da espletare gli enti si suddividono in settori.
Questi possono gestire un proprio protocollo tramite il campo ultimo
protocollo settoriale che ha una sua numerazione a parte.
 UFFICI: rappresenta un’ulteriore suddivisione dei settori in cui è diviso
l’ente.
 UFFICI PER CONOSCENZA: serve per tenere traccia dell’iter che la pratica
ha seguito tramite la data e l’ora in cui la copia del protocollo è entrata o
uscita dall’ufficio.
 ITER PRATICA TESTATA: contiene i dati principali cui fa riferimento il
protocollo (anno e numero del protocollo, dati dell’intestatario, data avvio e
sospensione) e il responsabile della pratica.
81
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 ITER PRATICA RIGHE: descrive la movimentazione del protocollo tra gli
uffici tramite i campi: durata, data carico e scarico.
 CATEGORIE: ogni ente contiene 15 categorie, non si può diminuire il
numero né variarne la materia. Si potranno aggiungere nuove categorie solo
per nuove necessità e gli affari relativi non possono essere riferiti alle prime
15, neppure per analogia.
 CLASSI: le categorie sono suddivise in classi. Il numero delle classi può
variare da ente ad ente secondo la quantità presumibile degli affari di
ciascuna categoria.
 SOTTOCLASSI: suddivisione delle classi, personalizzata per ogni ente.
 PROTOCOLLO: entità principale all’interno del DB. Contiene tutti i dati
obbligatori per legge che si riferiscono alla pratica. Il protocollo viene
classificato in base alla categoria, classe e sottoclasse.
 TIPO CORRISPONDENZA: è la modalità in cui il protocollo viene ricevuto
o spedito (es. raccomandata, posta ordinaria, ecc.).
 INTERLOCUTORI: contiene il mittente o destinatario del protocollo e i dati
ad esso riferiti.
 ELENCO INTERLOCUTORI: contiene i dati dei diversi interlocutori di uno
stesso protocollo.
 ALLEGATI: elenco degli allegati presentati in un protocollo.
 FASCICOLI: insieme di protocolli inerenti una medesima pratica. Ogni
apertura di una nuova pratica crea un nuovo fascicolo.
 REPERTORIO:
il repertorio contiene l’elenco di fascicoli con la loro
collocazione fisica in base all’anno e numero del protocollo.
82
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
 LEGAMI: tiene traccia dell’eventuale protocollo precedente o successivo a
quello corrente.
Tra queste entità esistono diversi tipi di relazioni:
0 o 1  0, 1 o molti: utilizzata
tra Settori e Uffici, Protocollo;
tra Classi e Fascicoli, Fascicoli e Protocollo, Protocollo ed Elenco interlocutori,
Repertorio e Protocollo, Sottoclassi e Protocollo, Tipo corrispondenza e
Protocollo.
0 o 1  1 o molti: utilizzata
tra Operatori e Protocollo, Uffici e Operatori.
1  0, 1 o molti: utilizzata
tra gli Enti e gli Esercizi, Categorie, Interlocutori, Repertorio, Tipo
corrispondenza;
tra Protocollo e Allegati, Uffici per conoscenza;
tra Uffici e Uffici per conoscenza, Iter pratica righe;
tra Categorie e Classi, Classi e Sottoclassi, Esercizi e Protocollo, Interlocutori
ed Elenco interlocutori, Iter pratica testata e Iter pratica righe.
1  1 o molti: utilizzata
tra Enti e Settori, Protocollo e Legami.
1  1: utilizzata
tra Protocollo e Iter pratica testata.
83
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
84
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
85
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
L’ERD è stato realizzato sia a livello logico (fig. 1) che a livello fisico (fig. 2).
In quello logico sono indicate le relazioni tra le tabelle, le chiavi primarie ed
esterne (FK), e i nomi dei campi. In quello fisico, invece, vengono specificati la
dimensione ed il tipo dei campi.
Quest’ultimo è stato la base per la creazione del Dizionario dei Dati (DD)
allegato e del Database vero e proprio.
Continuando nell’analisi sono stati creati dei DFD che illustrano la logica
sequenziale dei processi a partire dall’accesso al programma alla descrizione
delle procedure: inserimento, modifica, ricerca e stampa registro.
ACCESSO AL PROGRAMMA
Per accedere al programma bisogna inserire il codice di un ente valido e il codice
e password dell’operatore. Viene immediatamente effettuato il controllo dei dati
inseriti e la scelta dell’esercizio. Automaticamente l’anno e la data sono quelli
correnti, ma l’operatore può sceglierne uno diverso che sia esistente.
A questo punto si può effettuare la scelta delle procedure da seguire tra
inserimento, modifica, ricerca e stampa registro.
ACCESSO AL PROGRAMMA
Scelta ente
Ente
esistente?
si
codice e
password corretti?
Inserimento codice e
password operatore
Scelta esercizio
Data odierna
si
no
no
si
scelta procedura
inserimento
modifica
no
Ricerca
uscire dalla
procedura?
86
si
Stampa registro
fine
esercizio
esistente e
aperto?
no
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
INSERIMENTO
Descrive la procedura da seguire per l’inserimento di un nuovo protocollo.
Viene inserita automaticamente la data odierna, ma può essere modificata solo se
compatibile con l’esercizio
e non inferiore alla data dell’ultimo protocollo
inserito.
I dati dell’entità Protocollo come ora, tipo, tipo corrispondenza, codice settore,
non sono soggetti a controlli ma altri lo sono, quindi abbiamo previsto che il Db
sia in grado di effettuarli. I controlli possono essere di diversi tipi: ricerca di dati
già esistenti (nelle tabelle categoria, classe, sottoclasse, legami, fascicoli,
repertorio) e creazione di nuovi campi (nelle tabelle interlocutori, uffici, allegati,
repertorio, fascicolo, iter).
Ci sono anche dei cicli per l’inserimento di dati multipli come per gli
interlocutori, uffici, allegati e legami.
Dopo l’inserimento del protocollo si può decidere se inserirne altri o passare ad
un’altra procedura.
INSERIMENTO
data č compatibile con l'esercizio e
non inferiore alla data del protocollo
precedente?
inserisci data protocollazione
inserimento :
ora; tipo; tipo corrispondenza; codice settore; protocollo
settoriale; numero allegati; protocollo mittente; oggetto;
numero cartella; scarto; accompagnatoria; note.
si
no
inserisci
data atto
esistono nelle tabelle di
classificazione?
si
contiene atti?
si
no
atti soggetti a
scadenza?
inserimento:
categoria; classe; sottoclasse
no
inserisci interlocutore
(mittente o destinatario)
no
inserisci
ufficio per
conoscenza
si
altro
ufficio?
contiene
allegati?
no
inserisci
allegato
si
si
no
data scdenza
(ed eventuale
data evasione
in successiva
modifica)
si
inserisci nuovo
protocollo?
no
inserisci
legame
no
si
altro
intelocutore?
č una
pratica?
inserisci
protocollo in
fascicolo
ha dei
legami?
si
inserisci anno e
numero fascicolo
si
no
si
no
si
si
altro
legame?
no
č in un
repertorio?
si
crea
repertorio?
si
no
no
no
gestione iter
scelta
procedura
altro
allegato?
no
crea nuovo
fascicolo?
si
fa parte di un
fascicolo?
no
87
inserimento
del
protocollo in
repertorio
inserimento
anno e
numero
nuovo
repertorio
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
MODIFICA
La procedura prevede una ricerca del protocollo da modificare tramite
l’inserimento del suo numero. Una volta visualizzato è consentita solo la
modifica di alcuni dati. I dati non modificabili per legge sono: la data e l’ora di
protocollazione, l’oggetto e gli interlocutori. Tutti gli altri seguono i controlli
descritti nella procedura di inserimento (ricerca dati esistenti e creazione di nuovi
campi).
Solo con questa procedura è possibile gestire l’iter per aggiungere nuove
movimentazioni alla pratica.
La struttura ciclica permette di continuare con un’altra modifica o di cambiare
procedura.
MODIFICA
Inserimento
Numero
Protocollo
Protocollo
esistente?
inserimento :
tipo; tipo corrispondenza; numero allegati; protocollo
mittente; numero cartella; scarto; accompagnatoria; note.
si
inserimento:
categoria; classe; sottoclasse
no
data scdenza (ed eventuale
data evasione in successiva
modifica)
si
atti soggetti a
scadenza?
inserisci
data atto
si
no
contiene atti?
si
esistono nelle tabelle di
classificazione?
no
inserisci
ufficio per
conoscenza
altro
ufficio?
no
si
si
inserisci
legame
altro
legame?
no
no
si
ha dei
legami?
no
no
altro
allegato?
inserisci
allegato
contiene
allegati?
si
si
no
č in un
repertorio?
crea
repertorio?
si
altra
modifica?
fa parte di un
fascicolo?
si
no
no
si
si
inserimento
del
protocollo in
repertorio
inserimento anno e
numero nuovo
repertorio
no
č una
pratica?
no
si
scelta
procedura
gestione iter
no
inserisci
protocollo in
fascicolo
88
inserisci anno e
numero fascicolo
crea nuovo
fascicolo?
si
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
RICERCA
Un'altra importante procedura all’interno del Programma è la ricerca. Questa si
divide in ricerca Protocollo e in ricerca Stato Pratica.
La ricerca Protocollo prevede l’inserimento di uno o più criteri di ricerca, in
base ai quali il nostro DB può risalire ad un protocollo già inserito o ad un
insieme di protocolli. Si procede poi ad un controllo dei dati immessi e alla
visualizzazione dei protocolli stessi in caso di validità nei criteri.
La ricerca Stato Pratica è stata introdotta per controllare l’attuale situazione di
una pratica o l’iter che ha seguito (permanenza e passaggio nei vari uffici).
In questo modo noi possiamo visualizzare contemporaneamente i dati principali
del protocollo e il suo stato pratica. La ricerca viene sempre effettuata attraverso
inserimento di determinati criteri e controllo di validità di questi ultimi, fino alla
visualizzazione.
Più dati vengono inseriti, più la ricerca sarà dettagliata.
A questo punto è possibile iniziare una nuova ricerca o tornare alla scelta di una
nuova procedura.
RICERCA
Scelta ricerca
Ricerca
protocollo
Ricerca stato
pratica
no
Inserimento uno o piů
criteri di ricerca
no
I dati
immessi sono
validi?
<
I dati
immessi sono
validi?
si
si
Visualizza
Protocollo/i
e stato
pratica
Visualizza
Protocollo/i
si
Nuova
ricerca?
Inserimento uno o piů
criteri di ricerca
no
Scelta
procedura
89
no
Nuova
ricerca?
si
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
STAMPA
Il programma deve permettere la stampa giornaliera dei Protocolli secondo le
leggi vigenti quindi deve essere effettuata con un formato standard conforme ad
un tabulato già predisposto. Attraverso questa procedura è possibile quindi
inserire gli estremi (da numero a numero e da data a data) dei Protocolli per
inviarli al processo di stampa.
Dopo aver verificato che gli estremi siano validi la stampa viene eseguita. I dati
che devono essere obbligatoriamente visualizzati sono: numero, tipo, data
registro, data atto, protocollo mittente, interlocutore, oggetto, categoria e classe.
STAMPA REGISTRO
Inserimento estremi ( da
numero a numero e da
data a data)
Gli estremi
sono validi?
Stampa (numero,
tipo, data registro,
dataatto, protocollo
mittente, interlocutore,
oggetto, categoria e
classe)
si
Scelta
procedura
no
GESTIONE ITER
Questa procedura può essere eseguita sia durante l’inserimento sia durante la
modifica del protocollo. Per questo il DFD inizia con un controllo che ci
permette di inserire i dati se il protocollo è nuovo o di modificare l’attività della
pratica se già esistente. I dati necessari al nuovo inserimento sono: responsabile
pratica, indirizzo, località, codice fiscale, data avvio, data scadenza, data
sospensione, data riavvio, data scadenza.
A questo punto se la pratica è passata ad un altro ufficio, vengono inseriti il suo
codice, il responsabile, le attività, la durata, la data scarico e carico e le note,
altrimenti si torna all’inserimento o alla modifica del Protocollo. La struttura
90
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
ciclica della procedura ci consente di risalire all’intero iter della pratica e quindi
ad ogni ufficio in cui è passata fino al momento della ricerca.
GESTIONE ITER
Siamo in
inserimento
protocollo?
si
Inserimento (se si č in inserimento
protocollo): responsabile pratica;
indirizzo; localitŕ; Cod_fiscale; data
avvio; data scadenza; data
sospensione; data riavvio; data
evasione.
no
L'attivitŕ della pratica
č passata ad altro
ufficio?
si
Inserisci riga:
Codice ufficio; responsabile;
attivitŕ; durata; data carico;
data scarico; note
no
Torna ad
inserimento o
modifica del
protocollo
L’analisi è stata realizzata tramite l’utilizzo di diversi programmi:
1. ERWIN: E' lo strumento attraverso il quale è stata compiuta,
graficamente, l'analisi del database nonché la stesura dello stesso (ERD).
E' stato utilizzato anche per la documentazione del database (DD) e per le
relazioni tra le varie tabelle.
2. ABC: E’ il programma con cui sono stati realizzati i DFD per la
descrizione delle procedure.
3.3 IMPLEMENTAZIONE
L’analisi è stata la base per lo sviluppo realizzato dalla Ollsys Computer
(azienda che ha proposto il progetto e lo stage) con i seguenti strumenti:
91
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
1. Progress: Rappresenta il modulo principale dell'applicazione, infatti
permette la gestione del DB per il protocollo. In altre parole può essere
considerato “il motore dell'applicazione”.
2. WebSpeed: E' il tramite, attraverso il quale è possibile gestire il DB del
protocollo in Internet. Fornisce tutti i meccanismi con i quali si
possono inviare le “richieste a Progress” che a sua volta interagisce
con il database. Inoltre WebSpeed genera automaticamente le pagine html
che contengono i dati, una volta che questi sono stati presi dal DB e
debbono essere visualizzati nel browser.
3. Gimp: E' un programma di libero utilizzo con il quale sono state create e
ritoccate alcune delle immagini che si ritrovano all'interno delle
pagine html.
3.4 LA FASE DI TEST
Durante la fase di sviluppo dell’applicazione, sono stati effettuati dei controlli sul
suo funzionamento e sui limiti di utilizzo degli utenti.
Abbiamo verificato se l’accesso da parte di Enti diversi era indipendente.
Inoltre, se solo determinati operatori abilitati potevano accedere alla struttura
interna del DB (cancellazione di alcuni record, gestione degli operatori e relative
password, modifica di tabelle).
92
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Tutto questo è controllato dalla presenza di messaggi di errore visualizzati nelle
pagine WEB.
Nell’applicazione abbiamo testato l’inserimento e la modifica dei vari campi
all’interno delle tabelle e il funzionamento della procedura di ricerca.
93
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
GLOSSARIO
A
APPLET
Piccola applicazione per l’esecuzione di
attività delimitate o ridotte. Programma in
Java che gira all'interno di un Browser
come Netscape.
ASP
Application Service Provider: fornitore di
servizi per Applicazioni; centri di calcolo
che “affittano” macchine e programmi ad
aziende.
“asp”
Active Server Pages; Linguaggio per
sviluppare pagine attive per Internet e
gestire una comunicazione client/server.
Una pagina con estensione .asp deve
essere servita da un server (di solito
Microsoft IIS) che capisce le aggiunte al
normale HTML. Una delle possibilità
offerte da una pagina asp e' ad esempio
quella di interagire con un data base.
B
BROADCAST
Le reti Broadcast sono dotate di un unico
"canale" di comunicazione che è
condiviso da tutti gli elaboratori. Brevi
messaggi (spesso chiamati pacchetti)
94
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
inviati da un elaboratore sono ricevuti da
tutti gli altri elaboratori. Un indirizzo
all'interno del pacchetto specifica il
destinatario. Quando un elaboratore
riceve un pacchetto, esamina l'indirizzo di
destinazione; se questo coincide col
proprio indirizzo il pacchetto viene
elaborato, altrimenti viene ignorato. In
genere, consentono anche di inviare un
pacchetto a tutti gli altri elaboratori,
usando
un
opportuno
indirizzo
(broadcasting). In tal caso tutti prendono
in considerazione il pacchetto. Un’altra
possibilità è inviare il pacchetto ad un
sottoinsieme
degli
elaboratori
(multicasting).
BROWSER
Interfaccia grafica per la navigazione in
rete che permette la visualizzazione delle
pagine Web e l’utilizzo di tutti i servizi
offerti dal sito visitato.
In gergo sono i programmi cliente (che
consumano
l'informazione)
in
contrapposizione ai programmi server
(che forniscono l'informazione) nel
modello client-server del Web. Da notare
che mentre un server Web fornisce solo
materiali usando lo speciale protocollo
Web chiamato HTTP, il Browser fa uso
di tutti i protocolli possibili su Internet
scegliendo quello che serve attraverso
l'URL. Quindi un Browser Web può
collegarsi anche con server FTP, Usenet,
telnet, etc.
BUFFER
Memoria tampone; ’luogo’ temporaneo di
memorizzazione dei dati.
95
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
BUSINESS
Attività commerciali.
BYTE
Unità informativa di base formata da 8
bit.
C
CERN
Laboratorio europeo per la ricerca nella
fisica delle Alte Energie dove e' nato il
Web.
CGI
Common Gateway Interface. Interfaccia
standard tra HTTP servers e programmi
esterni (Gateways). In pratica permette a
un qualsiasi programma di essere attivato
dal server in risposta a un click su uno
speciale link su un documento HTML.
CLIENT/SERVER
Modello alla base del Web; viene usato in
tutti i casi in cui calcolatori di diversi tipi
devono condividere dei compiti. Un
programma/calcolatore client fa da
interfaccia con l'utente e quando questi
richiede un servizio distribuito fa la
richiesta al programma/computer server.
Client e server possono essere su
piattaforme diverse: l'importante e' che
rispettino il protocollo predefinito per le
richieste e la loro evasione. Nel caso del
Web tale protocollo si chiama http.
CLUSTER
Unità di immagazzinamento dati su disco.
CPU
Central Processing Unit; Unità centrale di
elaborazione di un computer.
96
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
CSMA/CD
Carrier Sense Multiple Access/Collision
Detection, accesso multiplo a rilevazione
di portante () con segnalazione di
collisione.
D
DATABASE
Base di Dati; Archivio di dati eterogeneo
gestito dal computer che memorizza e
organizza i dati per una loro veloce
gestione
(ricerca,
cancellazione,
inserimento).
DBMS
Data Base Management System; Sistema
centralizzato o distribuito che permette di
memorizzare, modificare ed estrarre
informazioni da un database. Se il
database e' relazionale si parla di
RDBMS. Se si basa sul modello ad
oggetti allora ODBMS.
DIAL-UP
Connessione tra un computer e la rete
Internet a mezzo di modem collegato a
cavo telefonico.
DMZ
Demilitarized Zone: Zona Demilitarizzata
(Client Side forward Proxy); Modalità di
invio messaggi al client tramite un Server
Proxy. E’ una zona di sicurezzaintermedia che isola l’applicazione a lato
client, mentre si accede ad Internet.
97
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
DORSALE
Parte di una rete che supporta il maggior
traffico e connessioni ad alta velocità. Le
dorsali
geografiche
permettono
connessioni anche intercontinentali.
DTD
Document Type Definition; Definizione
del tipo di documento XML.
E
E-BUSINESS
Commercio su Internet.
ERD
Entity Relation Diagram; Diagrammi di
entità relazione per la modellizzazione di
sistemi.
F
FIREWALL
Muro di fuoco; sistema di difesa in
Internet contro accesso Abusivo.
FTP
File transfer protocol; Protocollo di
trasferimento dei file su Internet. L'FTP é
il metodo convenzionale grazie al quale
ci si può collegare ad un computer nella
rete Internet e importare una copia dei
programmi in esso pubblici
98
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
G
GATEWAY
Viene chiamato con questo nome un
programma che facendo da tramite tra il
server HTTP e un database esterno, crea
a volo un documento HTML in seguito a
una richiesta da parte del server. Il
dialogo viene regolato dal protocollo
CGI.
Effettua,inoltre, la conversione degli
indirizzi di posta elettronica, oppure
converte un messaggio in codice ASCII
in un'altro non-ascii (utilizzato anche dai
Browser).
GUI
Graphical User Interface. Interfaccia
dell’Operatore Grafico.
H
HARDWARE
Struttura fisica dell’elaboratore.
HOST
Termine generico che identifica un
computer connesso ad una rete (p.e.
LAN, Internet) e quindi capace di
comunicare con altri computer della rete
(host).
HTML
HyperText
Markup
Language;
Linguaggio simbolico di ipertesto,
usato per la scrittura di fogli e siti su
Internet.
99
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
HTTP
Hypertext transport Protocol; Protocollo
per trasferire un ipertesto, usato per
leggere il WWW nella rete.
HUB
Termine che indica un’apparecchiatura
che collega client e server, ‘ripetendo’ i
segnali.
HYPERTEXT
Hypertesto. Particolare tipo di sistema di
database, nel quale gli oggetti (testo,
musica, programmi, etc.) possono essere
creativamente collegati l’uno all’altro.
HYPERMEDIA
Estensione dell’Hypertesto che supporta
collegamenti tra elementi grafici, sonori e
visivi in aggiunta ad elementi di testo.
I
IEEE
Acronimo per Institute of Electrical and
Electronics Engineers. Ente statunitense
con sede a New York che definisce i
modelli di rete e metodi di accesso per
opera di ingegneri, studenti e scienziati.
INTERNET
Rete mondiale di computer che consente
la comunicazione e lo scambio di dati tra
utenti collegati tramite essa.
INTRANET
Una rete privata di una organizzazione
realizzata usando i protocolli di
Internet.Essa permette al personale
dell'organizzazione (che potrebbe essere
una multinazionale sparsa in tutto il
mondo) di comunicare e accedere ai dati
100
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
della compagnia. Da un'intranet si può
accedere a Internet ma il viceversa e' reso
impossibile da programmi che realizzano
firewall un fossato per impedire l'accesso
dall'esterno all'Intranet.
IP
Protocollo
Internet;
regola
collegamento tra i computer
compongono la rete.
il
che
ISP
Internet Service Provider; Fornitore di
servizio Internet, società fornitrice di
connessione in Internet tramite cavi di cui
dispongono e in cambio di quota
mensile o oraria.
J
JAVA
Linguaggio di programmazione usato
nelle operazioni in rete, funzionanti nelle
pagine WWW di internet.
JDBC
Java DataBase Connectivity; interfaccia
in Java per eseguire comandi SQL.
L
LAN
Local Area Network; rete di
comunicazione locale, circoscritta ad un
ufficio o ad un palazzo.
LINK
Collegamento tra due file di dati in
101
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
modo da consentire l’aggiornamento
simultaneo di entrambi; parte di
documento di ipertesto.
M
MAINFRAME
Computer centrale tipico dei sistemi
centralizzati, permettono agli utenti
(centinaia o migliaia) che vi accedono di
eseguire molti processi.
MODEM
MODulatore-DEModulatore.
Apparecchio per la trasmissione e
ricezione seriale in forma analogica
anche a lunga distanza di informazioni in
formato digitale.
A causa dell'evoluzione tecnologica di
questi ultimi anni, che ha portato alla
realizzazione di reti di comunicazione
digitali estremamente estese (ISDN,
ADSL) la definizione di modem
dovrebbe essere leggermente modificata,
in quanto vengono a mancare la
modulazione
e
la
conseguente
demodulazione, cioè i processi di
interfacciamento tra rete digitale ed
analogica, e quindi esso diventa,
concettualmente, estremamente simile ad
una scheda di rete.
N
NETWORK
Rete di comunicazione.
102
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
O
ODBC
Open Database Connectivity; standard
sviluppato per lo scambio dei dati tra
database diversi. Uno standard per
l'accesso ai database relazionali che
capiscono il linguaggio SQL. Esso
richiede uno speciale programma l'ODBC
driver che intercetta le richieste esterne
fatte a un database e le trasforma in
comandi che il database capisce.
OFF-LINE
Non collegato, disconnesso da (computer
ad altro computer o da Internet).
ON-LINE
Connesso, in linea (collegamento a
Internet o da computer a computer).
P
PAWIS
Public Access Web Information System;
pubblico accesso al Sistema Informativo,
sistemi dove l’accesso è consentito a tutti
per utilizzare servizi
o documenti
pubblici.
PORTANTE
Segnale elettromagnetico a frequenza
fissa generato dai modem per trasmettere
dati che viene modulato in fase.
103
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
Q
QUERY
Interrogazione; Nei Data Base indica il
criterio in base al quale si effettua la
ricerca di un particolare record o insieme
di record.
R
RECORD
Insieme di file, archivio.
ROUTER
Dispositivo hardware che incanala le
informazioni
in
rete
al
destinatario. Uno speciale computer usato
per gestire la connessione tra 2 reti. Sono
i router che decidono dove istradare i vari
pacchetti di passaggio.
RSS
Relational Storage System; sistema di
gestione dei metodi di accesso ai
dati secondo la strategia definita
dall’ottimizzatore.
S
SCHEDULER
Pianificatore; stabilisce quale processo
può utilizzare la CPU.
SCRIPT
Sinonimo di programma. Di solito indica
però un programma scritto in un apposito
linguaggio (differente da piattaforma a
piattaforma) per eseguire dei compiti
104
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
legati al sistema operativo. Nel gergo
Web indica programmi attivati dal server
ogni volta il programma client manda una
speciale richiesta che oltre al nome di un
"file" contiene dopo il separatore ? dei
parametri per lo script. Inoltre si conviene
che dei documenti richiamati in una
speciale directory (quasi sempre /htbin/ o
/cgi-bin/) siano sempre associati a script
da attivare.
SERVER
Un programma che nel modello
client/server fornisce un servizio su
richiesta del client. Nel Web indica il
programma che fornisce un documento
ipertesto in formato Web oppure attiva
uno CGI script su richiesta di un
programma client.
SERVER PROXY
Nodo di Internet compreso do software di
gestione che si interpone fra l’host
dell’utente e il resto della rete. Appena
riceve una richiesta tipo URL cerca il file
nella cache locale o lo preleva dal sito
associato ad essa.
STD
Diagram Transation state; Diagramma di
transizione di stato, rappresenta i
cambiamenti e le condizioni per i
passaggi da uno stato all’altro di un
sistema.
SQL
Structured Query Language; linguaggio
di interrogazione utilizzato in base di dati
per la configurazione della ricerca.
105
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
T
TAG
Indicatore, etichetta. In HTML i tag sono
i comandi che definiscono il documento e
il formato dello stesso. Ogni tag e'
contenuto fra il simbolo di minore (<) e
quello
di
maggiore
(>).
Sono molti i comandi HTML (tag) ed
ognuno ha una determinata funzione.
Esistono tag per creare collegamenti
ipertestuali, modificare le dimensioni del
testo, il colore dei caratteri, il loro
allineamento rispetto al bordo della
pagina o p.e. rispetto ad un immagine. Ci
sono poi tag per arricchire le pagine web
di immagini, suoni ed altre risorse.
TCP/IP
Trasmission Control Protocol /Internet
Protocol. Principale protocollo per la
trasmissione
di
informazione
su
Internet:in effetti si tratta di due
protocolli.
TCP: Protocollo per il controllo della
trasmissione; garantisce la trasmissione
tra mittente e destinatario. Indica come
dividere un'informazione da spedire (ad
es. un'immagine) in pacchetti ognuno con
l'indirizzo del destinatario e un numero
d'ordine.
IP: protocollo Internet. Indica come dare
un indirizzo a ogni computer in Internet.
Ogni pacchetto viene smistato attraverso
cammini differenti stabiliti sulla base
della disponibilità al momento dai routers
o computers di internet che effettuano la
trasmissione. A destinazione i pacchetti
106
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
sono ricomposti per ridare l'informazione
originale.
TELNET
Programma che permette la connessione
ad un sistema remoto tramite account.
Con il termine si intende in egual misura
il protocollo (operante con il TCP/IP) che
permette ad un utente di sfruttare le
risorse di un altro calcolatore remoto
(CPU, hard disk, programmi, ecc.), come
se fossero quelle del proprio sistema. Se
si intende l'applicazione Telnet, inviando
p.e.
il
comando
telnet
nome.della.macchina.it, si accede ad una
sessione remota e richiedente l'account.
Aperta la sessione di lavoro, il computer
su cui si sta operando funge solo da
console con l'unico incarico di inviare i
comandi tramite tastiera al sistema
remoto (input) e di visualizzare le
informazioni prodotte dal sistema remoto
sul monitor locale (output).
THREE TIER
In inglese 3 strati o 3 piani. Un database
pubblicato sul Web viene di solito servito
con un'implementazione three tier perché
tra l'utente e il database c'e' un piano
intermedio (middle tier) formato dal
server Web. Questo in contrapposizione
al modo normale di servire i database
basato sui 2 strati:client e server.
TOKEN RING
Anello a gettone, IEEE 802.5. Rete a
diffusione IBM token ring da 4 a 16
Mbps. Il gettone o token, costituito da
una serie di bit speciali, circola nella rete
locale fino a quando non se ne
impossessa il nodo che vuole trasmettere
107
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
dei dati, ponendo in questo modo gli altri
in attesa. Con questo arbitraggio si
evitano le collisioni.
U
URL
Uniform Resource Locator; Identificatore
Uniforme di risorse, metodo standard per
comunicare con un server in rete e
passargli indirizzi per raggiungere una
pagina Web o dei comandi FTP.
W
WEB
Da World Wide Web (grande ragnatela
mondiale); Rete di programmi di
computer collegati tra loro e situati in
luoghi diversi.
WORKSTATION
Stazione di lavoro. Calcolatore potente
usato
generalmente
in
ambiente
distribuito o per calcoli scientifici.
WORLD WIDE WEB
Rete mondiale; sistema di strutturazione
dell’informazione e delle risorse in
modalità ipertestuale con visualizzazione
di immagini, filmati, suoni. Si basa sul
modello client-server.
WWW
Acronimo di World Wide Web.
WIS
Sistema Informativo basato sul Web.
108
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
X
XML
eXtensible Markup Language; linguaggio
simbolico estensibile, norma per
creazione e progettazione di documenti
HTML.
XSL
eXstensible Style Language; linguaggio
proprietario dell’XML, permette la
trasformazione in formati differenti oltre
l’HTML.
109
Metodi e strumenti per l’implementazione di SI basati su WEB: il caso del protocollo
informatico nelle Pubbliche Amministrazioni
___________________________________________________________________________
ALLEGATI
DIZIONARIO DEI DATI (DD)
110