Capitolo 1
Sistemi informativi, Informazioni e Dati
Ogni organizzazione dotata di un informativo, che organizza e gestisce le informazioni necessarie
per perseguire gli scopi dell'organizzazione stessa.
Le informazioni vengono rappresentate sottoforma di "DATI" , che hanno bisogno di essere
interpretati per fornire informazioni.
Deferenza tra DATO e INFORMAZIONE
DATO:
I dati da soli non hanno alcun
significato, ma una volta
interpretati danno origine a
informazioni.
INFORMAZIONE
Notizia,dato o elemento che consente di
avere conoscenza pi o meno esatta dei fatti
GRANDI :
possono essere enormi;
CONDIVISE:
applicazioni e utenti diversi devono poter accedere a dati comuni;
PERSISTENTI:
tempo di vita non limitato a quello delle singole esecuzioni dei programmi;
DBMS :
AFFIDABILITA':
la capacit del sistema di conservare, sostanzialmente intatto , il contenuto della base
di dati , in caso di malfunzionamento Software or Hardware;
PRIVATEZZA:
ogni utente viene abilitato a svolgere solo determinate azioni sui dati, attraverso
meccanismi di autorizzazione;
EFFICENZA:
capace di svolgere operazioni utilizzando un insieme di risorse che sia accettabile
per gli utenti;
EFFICACIA :
sono efficaci , in quanto sono capaci di rendere produttive le attivit dei loro
utilizzatori;
2
Modelli di Dati
Un modello di dati uni insieme di concetti per organizzare i dati di interesse e descriverne la
struttura, in modo che essa risulti comprensibile a un elaboratore.
Ogni modello di dati fornisce meccanismi di strutturazione analoghi ai costruttori di tipo , dei
linguaggi di programmazione. Il modello relazionale dei dati permette di definire tipo per pezzo
del costruttore relazionale, che consente di organizzare i dati in insiemi di record a struttura
fissa.
Una relazione spesso rappresenta per mezzo di una tabella, le cui righe rappresentano specifici
record e le cui colonne corrispondono a campi del record.
Passiamo ora a vedere altri 4 tipi di modelli di dati:
1. Modello gerarchico :
basato sull'uso delle strutture ad albero;
2. Modello reticolare:
basato sull'uso dei grafi;
3. Modello a oggetti :
evoluzione del modello relazionale;
4. Modello XML:
rivisitazione del modello gerarchico, i cui dati presentati insieme a un'unica struttura
logica (Auto-descrittivo, Semi_strutturato);
Schemi e istanze
Lo schema della base di dati invariato nel tempo, ed costituita dalle caratteristiche dei
dati;
L'istanza o stato della base di dati variabile nel tempo, ed costituita dai valori effettivi;
Capitolo 2
Modello relazionale
Modelli logici nei sistemi di basi di dati
Il modello relazionale si basa su 2 concetti:
Relazione
Tabella
In matematica una relazione R il sottoinsieme del prodotto cartesiano di 2 insieme , AxB.
La tabella serve a riportare e a rappresentare in maniera ordinata un relazione.
Rappresentazione di una tabella :
Squadra | Punti | Posizione
Inter
95
1
Milan
37
2
Juventus
0
3
<---- Relazione
|------> Tupla
Vincolo di Integrit
Ogni vincolo pu essere visto come un predicato che associa a ogni istanza "vero" o "falso";
se il predicato assume valore vero allora si dice che l'istanza soddisfa il vincolo.
Vincoli:
Vincolo intrarelazionale:
vincolo applicato su una sola relazione e all'interno della stessa;
Vincolo Interrelazionale :
vincolo applicato su pi relazioni;
Vincolo di Tupla :
vincolo applicato sulla singola tupla.
Chiavi
Ogni relazione ci garantisce l'identificazione di una "chiave". Per chiave si intende la scelta di un
valore di attributo o da un insieme di valori di attributi , tali che garantiscano l'unicit della
relazione, dove ogni elemento deve essere diverso dall'altro, assicurandosi che anche in una futura
modifica la chiave sia sempre vera.
Superchiave :
un chiave superchiave se usa il minimo numero possibile di attributi.
Vincoli di integrit referenziale
Un vincolo di integrit referenziale fra un insieme di attributi X , di una relazione R1 e una
relazione R2, soddisfatto se i valori su X di ciascuna tupla di R1 compaiono come valori nella
chiave di R2.
Algebra Relazionale
Ridenominazione :
Selezione e Proiezione :
Join
Join naturale
un operatore che correla dati in relazioni diverse, sulla base di valori uguali in attributi con lo
stesso nome.
Simbolo :
Il risultato del join costituito da una relazione sull'unione degli insiemi di attributi degli operandi e
le sue tuple sono ottenute combinando le tuple degli operandi con valori uguali sugli attributi
comuni.
Formula del Join naturale =
Se il join completo, contiene almeno un numero di tuple pari al massimo fra r1 e r2;
Se x1 intersezione x2 contiene una chiave per r2, il join di r1(x1) e r2(x2) contiene al pi r1
tuple;
Se x1 intersezione x2 coincide con una chiave per r2 e sussiste il vincolo di riferimento fra
x1 intersezione x2 in r1 e la chiave di r2, allora il join di r1(x1) e r2(x2) contiene
esattamente r1 tuple.
Join esterno :
prevede che tutte le tuple diano un contributo al risultato, ed eventualmente con valori Nulli
ove non vi siano controparti opportune.
Theta-Join ed EquiJoin
Theta-Join :
il prodotto cartesiano seguito da una selezione.
2. "Trovare nome e stipendio dei capi degli impiegati che guadagnano pi di 40mila euro"
3."Trovare gli impiegati che guadagnano pi dei rispettivi capi, mostrando matricola, nome e
stipendio di ciascuno di essi e del capo"
4."Trovare matricola e nome dei capi , i cui impiegati guadagnano tutti pi di 40 mila euro"
Vista
E' possibile che la relazione derivata sia funzione di un altra relazione derivata, a condizione che
esiste un ordinamento con relazione base e relazione derivata.
Possono esistere 2 tipi di relazione derivata :
1. Vista materializzata:
Relazioni derivate effettivamente memorizzate nella base di dati.
2. Relazione virtuale:
Relazione derivata per mezzo di funzioni non memorizzate nella base di dati.
Calcolo Relazionale
Calcolo relazionale su domini
Le espressioni del calcolo relazionale su domini hanno la forma
{A1:X1,.......,Ak:Xk|f}
dove:
A sono attributi distinti
X sono variabili
F una formula, secondo le seguenti regole:
- Vi sono formule atomiche, di 2 tipi :
R(A1:X1,..........,Ap:Xp}, dove R(A1,.....,Ap) uno schema di relazione e X sono le
variabili;
x*y o x*c, con x e y variabili, e costante c , * operatore di confronto;
- Se f1 e f2 sono formule,allora f1vf2 , f1^f2 e f1 Negato(f2) sono formule;
-Se f una formula e x una variabile, allora x(f) e x(f) sono formule.
La lista di coppie A1:X1,....Ak:Xk chiamaya Targhet List.
Esempio :
"Trovare matricola, nome, et e stipendio degli impiegati che guadagnano pi di 40mila euro"
In algebra relazionale:
t la target list
la range list, che indica le variabili libere della formula f con i relativi range;
f una formula con:
-Atomi del tipo x,A*c o (x1,A1*x2,A2) che confront il valore di x sull'attributo A
con la costante c e il valore di x1 su A1 con x2 su A2;
-Connettivi come nel calcolo del dominio;
-Quantificatori che associano i range alle relazioni variabili:
x(R)(f) e x(R)(f)
10
Capitolo 7
Metodologie modelli per il progetto
Il ciclo di vita di un sistema informativo comprende :
Studio di fattibilit
Serve a definire i costi e valutare i valori;
Raccolta e analisi dei requisiti
Consiste nella individuazione e nello studio delle propriet e delle funzionalit che il
sistema informativo dovr avere;
Progettazione
Si divide generalmente in progettazione dei dati e progettazione delle applicazioni;
Implementazione
Consiste nella realizzazione del sistema informativo secondo la struttura e le
caratteristiche definite nella fase di progettazione;
Validazione e collaudo
Serve a verificare funzionamento e qualit del sistema;
Funzionamento
In questa fase il sistema informativo diventa operativo.
Studio di fattibilit
Progettazione
Implementazione
Validazione e collaudo
Funzionamento
11
una decomposizione dell'intera attivit di progetto in passi successivi indipendenti tra loro;
una serie di strategie da eseguire nei vari passi e alcuni criteri per la scelta in caso di
alternative;
alcuni modelli di riferimento per descrivere i dati di ingresso e uscita delle varie fasi;
12