Title: Progettazione di Basi di Dati
1Basi di Datiprof. A. Longheu
4 Progettazione Introduzione e Modello
E-R Cap. 5 Basi di dati Atzeni Ceri
Paraboschi - Torlone
2Ciclo di vita dei Sistemi Informativi
La Progettazione del Db è una delle fasi di
creazione di un sistema informativo, la cui
progettazione è il ciclo di vita dei sistemi
informativi, che ha 6 Fasi
- Studio di fattibilità scelta delle alternative
possibili e stabilimento delle priorità di
realizzazione delle componenti del sistema - Raccolta ed analisi requisiti, ossia interagendo
con gli utenti si devono definire dati ed
operazioni su di essi, e quindi i requisiti hw/sw - Progettazione progettazione del db e
progettazione delle applicazioni - Implementazione creazione del prototipo, sia per
db che applicazioni - Validazione e collaudo, ossia verifica della
correttezza (informatica) e della coerenza con i
requisiti del cliente, e test di tutte le
condizioni di lavoro - Funzionamento a regime, ossia manutenzione ed
estensione - Le fasi possono ricominciare, da cui il ciclo
(raffinamenti successivi).
3Progettazione
- La progettazione di un DB consta di tre passi
- Progettazione concettuale
- Progettazione logica
- Progettazione fisica
4Progettazione Concettuale
- Serve a tradurre la descrizione informale della
realta ,descritta nei requisiti del DB
tipicamente sottoforma di documenti e moduli di
vario genere, in uno schema formale e completo
(usando ad esempio i diagrammi entita-relazione)
ma indipendente dai criteri di rappresentazione
del DBMS usato il prodotto si chiama schema
concettuale.
5Progettazione Logica
- Consiste nella traduzione dello schema
concettuale in termini di un determinato modello
logico (ad esempio il modello relazionale) di
dati usato dal DBMS che si intende utilizzare.Il
risultato e lo schema logico. - Include anche lottimizzazione della
rappresentazione in funzione delle operazioni
eseguite (es. normalizzazione)
6Progettazione Fisica
- Si completa lo schema logico con la specifica
dei parametri fisici di memorizzazione dei dati.
Si produce lo schema fisico che fa riferimento ad
un certo modello fisico dei dati che dipende dal
DBMS scelto.
7Il modello Entita-Relazione
- Il modello Entita-Relazione (E-R) e un modello
concettuale di dati che contiene alcuni costrutti
atti a descrivere la realta in maniera semplice,
indipendente dalla organizzazione dei dati nel
computer. - I costrutti sono Entita, Relazione, Attributo,
Cardinalita, Identificatore, Generalizzazione,
Sottoinsieme.
8Costrutti dei diagrammi E-R
9Altri costrutti dei diagrammi E-R
10Entità
- Entita sono classi di oggetti (cose,persone) che
hanno proprieta comuni ai fini dellapplicazione
di interesse che si intende modellare. - Unoccorrenza (o istanza) di unentita e un
oggetto della classe (concetto diverso dalle
t-uple nel modello relazionale qui non ci sono
attributi)
11Relazioni
- Le Relazioni (o Associazioni) rappresentano
legami logici fra due o piu entita della nostra
applicazione. - Naturalmente possono esserci piu relazioni fra
le stesse entita, relazioni ricorsive
12Attributi
- Descrivono proprieta di entita o relazioni.
Associa ad ogni occorrenza di unentita (o di
una relazione) un elemento del dominio
dellattributo.
13Cardinalita delle Relazioni
- Ci da il numero minimo e massimo di istanze di
relazione per ogni istanza di un entita cui
quella relazione si riferisce - Ad esempio sopra si afferma che ad ogni impiegato
si possono assegnare da 1 a 5 incarichi ed ogni
incarico puo essere assegnato ad al piu 50
impiegati - In base alla cardinalità esistono relazioni uno a
uno (1-1), uno a molti (1-N) e molti a molti
(M-N).
14Cardinalita di Attributo
- Specifica il numero minimo e massimo di valori di
un attributo per un data occorrenza di un entita
o relazione. Ad esempio nella figura si esprime
che ogni persona ha al piu una patente ma puo
avere piu di unauto. (N indica un intero gt 1)
15Identificatori interni delle entita
- Specificano quei concetti (attributi e/o entita)
che servono ad identificare univocamente le
occorrenze di unentita. Generalmente sono uno o
piu attributi della stessa entita (chiave
interna)
16Identificatori esterni delle entita
- Un identificatore esterno (foreign key) per un
entita e un identificatore che include unaltra
entita legata alla prima da una relazione uno a
molti . Cosi ogni studente e identificato dalla
matricola e dallUniversita a cui e iscritto
17Generalizzazioni
- Unentita (padre) si dice generalizzazione di
altre se queste sono casi particolari della prima - Cosi Professionista e una generalizzazione di
Avvocato,Ingegnere e Medico - La generalizzazione è totale se ogni occorrenza
della classe padre è occorrenza di almeno una
delle figlie (persona-gt uomo, donna è totale) - La generalizzazione è esclusiva se ogni
occorrenza della classe padre è occorrenza al più
di una sola delle figlie (persona-gtstudente,
lavoratore è sovrapposta)
18Documentazione di schemi E-R
- E sempre bene corredare un diagramma E-R con
una documentazione spesso non esprimibile nel
diagramma. Due sono gli elementi di questa
documentazione - Un dizionario delle entita e relazioni con
relativi attributi. - Un elenco di vincoli dintegrita dei dati non
esprimibili nel diagramma. - Un elenco di derivazioni, ossia di concetti che
possono essere calcolati da altri (ad esempio, i
campi costo intero, costo scontato e sconto sono
legati fra loro). - Vincoli di integrità e derivazioni sono note con
il nome di business rules
19ESEMPIO
20ESEMPIO
21ESEMPIO