IV
Descrivendo architetture, linguaggi d’interrogazione e naturalmente
la loro evoluzione nel tempo.
Nel secondo capitolo, viene descritta un’altra componente essenziale,
che può definirsi un ‘complemento’ dei moderni sistemi informativi
aziendali: ‘la rete’. E’ un complemento perché riesce a collegare, in
posti più o meno remoti, vari sistemi e quindi assolvere ad un compito
importante: la condivisione delle informazioni.
Partendo da quella che oggi è considerata universalmente la rete delle
reti, cioè Internet, si giunge a descrivere come si è utilizzata la
tecnologia e i protocolli di quest’ultima, per costruire delle ‘sottoreti’
aziendali, che risolvono il problema della comunicazione e assolvono il
compito di condividere informazioni, tra utenti della stessa azienda, esse
prendono il nome di Intranet.
Il terzo capitolo è dedicato invece ai problemi di sicurezza (fisica e
logica). Per il primo tipo si sono descritte le regole da rispettare, che non
vanno molto al di là del buon senso e della logica, proteggere il sistema
da danni ‘fisici’ significa evitare che il sistema possa subire danni da
calamità naturali e non, quali incendi, allagamenti, terremoti e perfino
attentati. L’altra faccia della sicurezza invece è quella logica, cioè quella
che deve evitare intrusioni e/o manomissioni, per introdurre l’argomento
V
abbiamo dato la definizione di ‘protezione’, elencate quali sono le
esigenze di sicurezza e descritto in maniera più o meno esaustiva le
minacce a cui è soggetta, tramite le parti vulnerabili di un sistema e i vari
tipi di attacchi che si possono portare ad un sistema informativo,
spaziando da quelli volti alla negazione di un servizio, come ad esempio
l’oscuramento di un sito internet, oppure quelli volti all’intercettazione
di informazioni o di email che viaggiano in rete, per arrivare agli attacchi
più pericolosi, quelli intrusivi, volti alla penetrazione del sistema, per
impossessarsi di dati riservati (es. numeri di carte di credito, o qualunque
tipo d’informazione riservata).
Il quarto capitolo invece è dedicato a due sistemi di protezione, la
crittografia e i firewall. Il primo deriva da un’antica ‘arte’ (era usata già
ai tempi dei romani), quella cioè di usare un ‘codice’ per scrivere una
qualunque cosa e solo chi possedeva la ‘chiave’ poteva decifrarla, in
modo da proteggersi da gli occhi indiscreti durante il viaggio. Oggi, le
tecniche di crittografia si basano su complessi algoritmi, oggetto di
studio di scienziati matematici, basta pensare che un algoritmo di
codifica si basa su milioni di iterazioni, e basta rompere un anello di
questa complessa catena, per renderla inservibile. La crittografia è altresì
usata per garantire la firma digitale, cioè per garantire che il mittente di
VI
un messaggio sia realmente chi dice di essere, un’operazione che non
potrebbe essere effettuata se non con la firma digitale. Con la diffusione
capillare di internet, e con la sempre maggiore esigenza di far viaggiare
dati importanti in rete, è facilmente comprensibile lo sviluppo a cui sarà
soggetto il meccanismo della firma digitale nei prossimi anni.
Il secondo meccanismo di sicurezza è il firewall, che tradotto
letteralmente significa ‘muro taglia fuoco’ e applicato ai sistemi
informativi, serve a proteggere una rete interna dalla rete esterna e quindi
a tenere fuori eventuali malintenzionati. Ci siamo soffermati su i
componenti di un firewall e su vari tipi di architetture, alcune largamente
implementate, altre meno conosciute, ma non meno valide.
Il quinto capitolo è dedicato ad un’indagine statistica, volta a
verificare, in un campione di aziende italiane medio-piccole, in che
considerazione esse tengono i problemi relativi alla sicurezza
informatica, nonché il grado di conoscenza del problema stesso.
Il mezzo per svolgere l’indagine è un questionario, composto da
undici domande, e inviato agli interessati tramite posta elettronica, che
gentilmente, hanno provveduto a riempirlo e rispedirlo al mittente.
1
1. Sistemi informativi ed organizzazione
1.1 Introduzione ai sistemi informativi
Il sistema informativo rappresenta una componente fondamentale e
sempre più importante di ogni organizzazione. Alla definizione di
sistema informativo si può arrivare esaminando la missione e gli
obiettivi di un’organizzazione, le risorse disponibili, i processi di
gestione delle risorse. Recentemente il concetto di processo inteso come
insieme di attività fra loro interrelate e finalizzate alla realizzazione di un
risultato definito e misurabile, che coinvolge più risorse e che attraversa
più strutture, è considerato elemento di omogeneizzazione
dell’organizzazione.
Di conseguenza i sistemi informativi devono essere coerenti con i
processi identificati. Secondo un’accezione più tradizionale, i processi si
distinguono in direzionali, gestionali e operativi; anche i sistemi
informativi che li supportano risentono di questa classificazione e
devono essere realizzati secondo ottiche differenti. L’evoluzione dei
sistemi informativi ha visto affrontare prima l’automazione dei processi
operativi, poi quella delle attività gestionali, infine quelle direzionali; il
percorso di crescita dei sistemi ha comportato una loro graduale
2
integrazione ed il passaggio dell’informatica da tecnologia di
produzione, con obiettivi principalmente di efficienza, a leva di governo
delle aziende.
In un sistema informativo è importante stabilire quali tipologie di dati
e di attività si debbano trattare; la loro identificazione guida nella scelta
delle migliori tecnologie e metodologie per lo sviluppo.
A proposito dello sviluppo, lo studio dei sistemi informativi ha
portato alla formulazione di un gran numero di proposte metodologiche,
che prevedono diverse fasi ed attività, al fine di strutturare e migliorare i
processi di produzione.
1.2 Evoluzione nel tempo dei sistemi informativi
La continua evoluzione dei sistemi di gestione dati, iniziata negli anni
’60. ha ormai affermato la tecnologia dei DBMS (data base management
system) come una componente essenziale nella realizzazione di qualsiasi
sistema informativo.
I primi sistemi informativi (anni ’60) erano basati sull’uso di archivi
separati gestiti da un sistema operativo, erano i mainframe, spesso grossi
calcolatori centrali isolati, usavano un’architettura basata sul modello
gerarchico.
3
A partire da questa tecnologia si è passati ad un approccio in cui i dati
venivano organizzati in un unico insieme logicamente integrato, detto
base di dati, gestito dal DBMS implementati da prima sul modello
reticolare e poi su quello relazionale.
La base di dati è una raccolta di dati correlati, condivisa tra più
applicazioni, che deve soddisfare il fabbisogno informativo di tutte le
applicazioni.
Il DBMS è un sistema hardware e software, centralizzato o
distribuito, che fornisce gli strumenti necessari a memorizzare e ricercare
le informazioni interattivamente o mediante programmi applicativi.
Parallelamente all’evoluzione hardware dei DBMS si sono evoluti
anche i linguaggi d’interrogazione, il più conosciuto è l’SQL(Structured
Query Language).
4
1.3 I moderni DBMS: I data warehouse
Un contenitore unitario dei dati dell'intera azienda, o di una sua area
specifica. In esso i dati vengono integrati e preparati in modo tale da
poter essere analizzati, manipolati, trasformati, combinati per scoprire
correlazioni, trend e regolarità che danno loro un maggiore valore.
I dati in un data warehouse sono:
1. Separati dai sistemi di gestione operativa dell'azienda, ma da questi
generati.
2. Disponibili interamente per rendere le informazioni accessibili ai
business users.
3. Integrati sulla base di un modello standard di impresa.
4. Datati e associati con periodi definiti di tempo, per esempio esercizi
fiscali o intervalli di calendario.
5. Orientati al soggetto, di solito al soggetto 'cliente'.
6. Non volatili, nel senso che gli aggiornamenti non avvengono su base
individuale.
7. Accessibili agli utenti che hanno una limitata conoscenza di
elaboratori elettronici o strutture dati.
5
Nonostante il termine data warehouse - DWH sia diventato molto di
moda negli ultimi anni ed un gran numero di aziende stia implementando
o per implementare sistemi di DWH, non esiste un’unanime definizione
di magazzino di dati.
Secondo alcuni autori il DWH è semplicemente un sinonimo di
database fisico (relazionale o multidimensionale) che contiene dati;
secondo altri, il DWH può essere definito come un ambiente con
strutture dati finalizzate al supporto delle decisioni, fisicamente separato
dai sistemi operazionali. Entrambe le definizioni, tuttavia, sembrano
abbastanza limitanti e non in grado di spiegare a fondo il concetto.
Inmon1, che per primo ha parlato esplicitamente di data warehouse,
invece, lo definisce come una raccolta di dati integrata, subject oriented,
time variant e non-volatile di supporto ai processi decisionali. Quindi,
l’integrazione dei dati di un DWH costituisce una delle premesse
necessarie che ne consentono una progettazione adeguata e che lo
distinguono da ogni altro sistema di supporto alle decisioni.
Secondo Inmon la raccolta di dati è:
1
Inmon W.H., "Building the data warehouse", Wiley J. & Sons, 1993
6
• integrata
Requisito fondamentale di un data warehouse è l'integrazione della
raccolta dati. Nel data warehouse confluiscono dati provenienti da più
sistemi transazionali e da fonti esterne.
L’obiettivo dell'integrazione può essere raggiunto percorrendo
differenti strade: mediante l’utilizzo di metodi di codifica uniformi,
mediante il perseguimento di una omogeneità semantica di tutte le
variabili, mediante l’utilizzo delle stesse unità di misura (p.e. giorno-
mese-anno);
• subject oriented:
Perché il DWH è orientato a temi specifici dell’azienda (p.e. clienti,
prodotti, etc.) piuttosto che alle applicazioni o alle funzioni (quali ad
esempio in un contesto bancario ad applicazioni transazionali). In un
DWH i dati vengono archiviati in modo che possano essere facilmente
letti o elaborati dagli utenti. L'obiettivo, quindi, non è più quello di
minimizzare la ridondanza mediante la normalizzazione ma quello di
fornire dati che abbiano una struttura in grado di favorire la produzione
di informazioni.
7
Si passa dalla progettazione per funzioni alla modellazione dei dati al
fine di consentire una visione multidimensionale degli stessi;
• time variant:
I dati archiviati all’interno di un DWH hanno un orizzonte temporale
molto più esteso rispetto a quelli archiviati in un sistema operazionale.
Nel DWH sono contenute una serie di informazioni relative alle aree
d’interesse che colgono la situazione relativa ad un determinato
fenomeno in un determinato intervallo temporale piuttosto esteso. Ciò,
tuttavia, comporta che i dati contenuti in un DWH sono aggiornati fino
ad una certa data, che nella maggior parte dei casi, è antecedente a quella
in cui l’utente interroga il sistema.
Situazione del tutto differente, al contrario, si manifesta in un
transazionale in cui i dati corrispondono sempre ad una situazione
costantemente aggiornata che tuttavia non fornisce un quadro storico del
fenomeno analizzato;
• non-volatile:
Tale caratteristica indica la non modificabilità dei dati contenuti nel
DWH che consente accessi in sola lettura. Comporta, inoltre, una
maggiore semplicità di progettazione del database rispetto a quella di un
database relazionale che supporta una applicazione transazionale.
8
In tale contesto non si fronteggiano le possibili anomalie dovute agli
aggiornamenti e tanto meno si ricorre a strumenti complessi per gestire
l’integrità referenziale o per bloccare record a cui possono accedere altri
utenti in fase di aggiornamento.
Il data warehouse, quindi, descrive il processo di acquisizione,
trasformazione e distribuzione di informazioni presenti all’interno o
all’esterno delle aziende come supporto ai decision maker.
Esso si differenzia, però, in modo sostanziale dai normali sistemi
gestionali che, al contrario, hanno il compito di automatizzare le
operazioni di routine.
I DataMart (DM) sono un sottoinsieme del DWH che contiene solo
una visione dei dati utile ad una determinata applicazione verticale (o ad
un gruppo di esse). Il DM può avere una struttura ed eventualmente,
adottare una tecnologia differente dal DWH.
In tabella 1 sono riportate le differenze fondamentali tra sistema
transazionale ed un DWH.
9
Tabella 1 – Differenze tra data warehouse e sistema transazionale (da Inmon
W.H., "Building the data warehouse", Wiley J. & Sons, 1993 )
DATA WAREHOUSE SISTEMA
TRANSAZIONALE
Utilizzo query-intensive transaction-intensive
Utenti non molto numerosi abbastanza numerosi
Storicità dei dati dati storici e attuali dati attuali
Integrazione dati integrati per soggetto dati aggregati per limitate
attività o per processo
qualità dei dati qualità intesa in termini di
consistenza del dato
qualità intesa in termini di
integrità dei dati
database dati aggiornati ad intervalli
predefiniti, perciò non-
volatile
dati aggiornati
continuamente e quindi
volatile
modello dei dati dati in genere
denormalizzati; il modello è
conforme alle dimensioni di
un soggetto
dati normalizzati; il modello
è conforme alle esigenze
che derivano dalle
transazioni da supportare
dominio
applicativo
i progetti di data warehouse
forniscono un'infrastruttura
di supporto ai sistemi di
supporto alle decisioni con
caratteristiche di scalabilità,
di ampliamento e flessibilità
i sistemi transazionali sono
definiti per un limitato
dominio applicativo che si
riferisce a una specifica
applicazione
sviluppo i criteri di sviluppo
rispondono a principi
evolutivi e iterativi
sistemi OLTP sviluppati
seguendo i requisiti del
sistema esplicitati dagli
utenti e il metodo di
sviluppo a cascata
Sponsorship un progetto di data
warehouse richiede una forte
sponsorizzazione a causa
dell'ampiezza organizzativa
dello stesso
i sistemi operazionali
tendono ad essere
sponsorizzati seguendo un
chiaro processo che
consente di individuare il
responsabile che individua a
sua volta anche le gerarchie
organizzative
10
1.4 L’accesso alle basi di dati: OLAP e OLTP
Gli accessi alla base di dati possono essere effettuati secondo due
distinte modalità: la prima basata su concetto di transazione (oltp: On
Line Transaction Processing) e la seconda basata sul concetto
d’informazione (olap: On Line Analytical Processing).
Le transazioni sono usate per immettere nella base di dati le
informazioni relative alla gestione operativa dell’organizzazione.
L'affermazione dell' OLAP, per l'analisi multidimensionale dei dati,
che si contrappone al tradizionale OLTP implementato nei data base
relazionali classici di tipo operativo, ci viene descritta da Sean Kelly2
Egli sostiene che quando negli anni ‘90 il concetto del data
warehousing è emerso dalle sperimentazioni operate inizialmente dalle
‘Fortune 500’, la conseguenza è stata che un'altro trend dell' IT, i sistemi
EIS (Enterprise Information System), era giunto alla fine della sua era.
I sistemi EIS avevano avuto un certo successo, ma il modo in cui i
dati venivano raccolti e assemblati per convogliarli nel sistema era
2
Sean Kelly "Data Warehousing in Action" (Wiley, 1997)
11
troppo spesso inelegante, inefficiente, incongruo, incompleto, rigido e
inaccurato.
I primi progettisti di sistemi data warehouse hanno invece cominciato
ad affrontare alla base i problemi che prima erano associati a definizioni
dei dati in conflitto, sincronizzazioni, inquinamento dei dati,
frammentazione, scarsità di risorse computazionali, trasformazione dei
dati, gestione dei dizionari dati , ecc. che si verificavano nei sistemi EIS
collegati a basi dati OLTP.
Il data warehousing e i produttori di componenti per data warehouse
sembravano quindi voler completamente accantonare e rimpiazzare i
sistemi EIS. A questo punto (nel 1994) quattro produttori di sistemi EIS,
a cui poi si sono associati molti altri, hanno adottato una strategia
difensiva che ha portato alla formazione del consorzio OLAP nel 1995, il
quale ha definito le caratteristiche di un database multidimensionale in
un white paper del 1993 ad opera di E.F. Codd, S.B. Codd e C.T. Salley.
Il white paper identifica in 12 punti i componenti fondamentali e i criteri
definitori di OLAP.