Maria Mirto
1
Modellazione dei dati
Modello concettuale
Rappresenta la realtà dei
Modello logico dati e le relazioni tra essi
attraverso uno
Rappresenta schema
il modo
(Modello
attraverso E/R)
cui i dati sono
Modello fisico
organizzati
Rappresentanegli archivi
l’effettiva
elettronici.degli
installazione Descrive
archivi
quindi la composizione
elettronici ed
il formato dei dati nel loro
aspetto di struttura logica
dei dati.
2
Modellazione dei dati
Il modello concettuale si definisce tramite lo SCHEMA
dei dati, cioè una rappresentazione INDIPENDENTE da:
• dai valori assegnati ai dati
• dalle applicazioni che useranno i dati
• dalle viste parziali dei dati da parte degli utenti
Il modello E/R
Il modello entità/associazioni (Entity/Relationship)
Relationship
strumento utilizzato per costruire un modello
concettuale dei dati indipendente dalle applicazioni.
3
L’entità
L’entità è un oggetto (concreto o astratto) che ha un
significato anche quando viene considerato in modo isolato
ed è di interesse per la realtà che si vuole modellare.
Esempi di entità:
una persona,
un modello di automobile,
un movimento contabile,
una prova sostenuta da uno studente.
L’entità
Le entità possono essere classificate secondo un certo
criterio di omogeneità definendo il tipo di entità attraverso
un nome.
Es.:
• gli studenti di una scuola sono classificabili nel tipo
entità Studente.
• i diversi modelli di automobile sono classificabili nel
tipo entità Automobile.
4
L’entità
L’associazione
L’associazione (relationship) è un legame che stabilisce
un’interazione tra le entità.
PERSONA AUTOMOBILE
5
L’associazione
Posseduta da
PERSONA AUTOMOBILE
Possiede
L’associazione
6
Gli attributi
Le proprietà delle entità e delle associazioni vengono descritte
attraverso gli attributi.
attributi
AUTOMOBILE
PrezzoListino
Cilindrata
Produttore
Modello
Gli attributi
Le caratteristiche di ogni attributo sono :
7
Gli attributi
L’insieme dei possibili valori assunti da un attributo si chiama
dominio dell’attributo. I valori appartenenti al dominio sono
omogenei tra loro, cioè sono dello stesso tipo.
Oss. Età deriva da Data Nascita => definire solo gli attributi
elementari e non quelli derivati
Gli attributi
Nel caso del formalismo con il rombo si possono rappresentare gli
attributi dell’associazione:
DataAcquisto PrezzoAcquisto
8
Gli attributi
Si indica con il termine chiave o chiave primaria (primary key)
l’insieme di uno o più attributi che consentono di distinguere
un’istanza dall’altra per la stessa entità.
Nella descrizione grafica, gli attributi chiave vengono sottolineati
(oppure se ne colora il cerchietto)
Esempi:
STUDENTE PRODOTTO
DataNascita Prezzo
Matricola
Cognome Descrizione
NOME Codice
9
Le associazioni tra entità (2)
Il grado di un verso dell’associazione indica quante istanze
dell’entità di arrivo si associano all’istanza di partenza.
Il grado può essere a uno oppure a molti e pertanto le associazioni
tra due entità si classificano nei seguenti tipi:
Ogni istanza della prima entità è associata ad una sola istanza della
seconda entità e viceversa.
1 Rilasciato 1 Attestato di
STUDENTE
Possedere DIPLOMA
10
Le associazioni tra entità (3)
Rappresentazione alternativa
(0,1) (1,1)
Possi Attestato di
STUDENTE
ede DIPLOMA
(0,1) (1,1)
Possi Attestato di
STUDENTE
ede DIPLOMA
Un Attestato è posseduto
da almeno 1 studente ed al
più da 1 studente (uno e
uno solo)
11
Le associazioni tra entità
b. Associazione 1:N (uno a molti) o semplice
ad un elemento di E1 possono corrispondere più elementi di
E2, mentre ad ogni elemento di E2 deve corrispondere uno e un
solo elemento di E1.
E1 E2
Ogni istanza della prima entità si può associare a uno o più istanze
della seconda entità, mentre ogni istanza della seconda entità si deve
associare ad una sola istanza della prima.
Riferito a
CONTOCORRENTE 1 MOVIMENTO
Movimentato da N
12
Le associazioni tra entità
il verso Movimentato da (opzionale) è di grado a molti,
mentre il verso Riferito a (obbligatorio) è di grado a uno.
Riferito a
CONTOCORRENTE 1 MOVIMENTO
Movimentato da N
(0,N) (1,1)
Riferi
CONTOCORRENTE MOVIMENTO
to
13
Le associazioni tra entità
Rappresentazione alternativa
(0,N) (1,1)
Riferi
CONTOCORRENTE MOVIMENTO
to
Un Movimento deve
riferirsi a 1 solo Conto
Corrente
E1 E2
Ogni istanza della prima entità si può associare a uno o più istanze
della seconda entità e viceversa.
14
Le associazioni tra entità
Per esempio
nell’associazione tra l’entità Studente e l’entità Materia, uno studente
può essere verificato su una o più materie, e una materia può essere
oggetto di verifica da parte di uno o più studenti.
OSS. 2
L’associazione N:M può essere facilmente scomposta in due
associazioni 1:M,
1:M anche per consentire di rappresentare gli attributi
dell’associazione (maggiore chiarezza).
15
Le associazioni tra entità
Dal precedente esempio:
Il modello diventa più chiaro introducendo una terza entità Prova,
avente come attributi la data e il voto della verifica.
Infatti data e voto ottenuto non sono attributi nè di STUDENTE e nè
di MATERIA ma di PROVA
Data
1 Sostenuta da
STUDENTE PROVA
Verificato con N Voto
N Riferita a
1 Control.con
MATERIA
(1,1)
riferit
a
(0,N)
MATERIA
16
REGOLE DI LETTURA
Servono a controllare la bontà dello Schema E/R prodotto.
Ogni
<nome entità Partenza> può/deve essere
<nome verso Associazione> un solo / uno o più
<nome entità Arrivo>
1 Fornito da
FORNITORE PRODOTTO
Abbinato a N
17
Le associazioni tra entità
Gruppo Esercizi 1: Rappresentare con uno Schema E/R indicando il
grado dei versi e l’obbligatorietà o l’opzionalità delle associazioni.
Applicare anche le regole di lettura
18
Le regole di derivazione del modello logico
Dal modello concettuale dei dati è possibile ottenere il modello
logico dei dati => si può definire la struttura degli archivi adatti per
organizzare i dati.
Le strutture dati scelte per il modello logico devono rendere facili le
operazioni di manipolazione e veloci le attività di ritrovamento dei
dati richiesti.
Il modello logico si ricava applicando le Regole di Derivazione:
Derivazione
1. ogni entità diventa un archivio;
19
Le regole di derivazione del modello logico
ESEMPIO associazione 1:1
Associazione tra l’entità CodiceFiscale e l’entità Cittadino: è
un’associazione uno a uno in quanto ad ogni cittadino è assegnato
uno ed un solo codice fiscale.
20
Le regole di derivazione del modello logico
ESEMPIO associazione 1:N
Associazione tra l’entità Contratto e l’entità Dipendente è una
relazione uno a molti, in quanto ogni contratto può essere sottoscritto
da uno o più dipendenti, e ogni dipendente è regolato da un solo
contratto di lavoro.
CONTRATTO 1 DIPENDENTE
N
21
Le regole di derivazione del modello logico
Agli attributi dell’entità Dipendente (a molti) è stata aggiunta come
chiave esterna CodiceContratto, cioè la chiave primaria dell’entità
Contratto (a uno).
DOCENTE CLASSE
22
Le regole di derivazione del modello logico
Se vengono considerati anche gli attributi dell’associazione, questo
nuovo archivio di legame contiene, oltre alle chiavi delle due entità
anche gli attributi assegnati all’associazione: il numero delle ore di
insegnamento del docente in una classe non è attributo né di Docente,
né di Classe, ma dell’associazione; esso diventa un campo nel nuovo
archivio Insegna.
23
Le regole di derivazione del modello logico
24