Introduzione alla progettazione di database e al Modello Entità-Relazione

Slide di Università sulla progettazione di database e il Modello Entità-Relazione. Il Pdf, utile per studenti universitari di Informatica, illustra il ciclo di vita dei sistemi informativi, la raccolta dei requisiti, l'implementazione e la validazione, con esempi di schemi E-R e dizionari dei dati.

Mostra di più

61 pagine

Introduzione: Progettazione - Modello E-R
2019-2020
1. Studio di fattibilità: scelta delle alternative possibili e delle priorità di
realizzazione delle componenti del sistema
2. Raccolta ed analisi requisiti, ossia interagendo con gli utenti si devono
definire
dati
ed
operazioni
su
di
essi,
e
i
requisiti
hw/sw
La Progettazione del DB è una delle fasi di creazione di un sistema
informativo. Il ciclo di vita di un sistema informativo ha 6 fasi:
Ciclo di vita dei Sistemi Informativi
definire
dati
ed
operazioni
su
di
essi,
e
i
requisiti
hw/sw
3. Progettazione: progettazione del db e progettazione delle
applicazioni
4. Implementazione: creazione del prototipo, sia per db sia per applicazioni
5. Validazione e collaudo, verifica della correttezza (informatica) e della
coerenza con i requisiti del cliente, e test di tutte le condizioni di lavoro
6. Funzionamento a regime, ossia manutenzione ed estensione
Le fasi possono ricominciare, da cui il termine ciclo (raffinamenti successivi).

Visualizza gratis il Pdf completo

Registrati per accedere all’intero documento e trasformarlo con l’AI.

Anteprima

Ciclo di vita dei Sistemi Informativi

La Progettazione del DB è una delle fasi di creazione di un sistema informativo. Il ciclo di vita di un sistema informativo ha 6 fasi:

  1. Studio di fattibilità: scelta delle alternative possibili e delle priorità di realizzazione delle componenti del sistema
  2. Raccolta ed analisi requisiti, ossia interagendo con gli utenti si devono definire dati ed operazioni su di essi, e quindi i requisiti hw/sw
  3. Progettazione: progettazione del db e progettazione delle applicazioni
  4. Implementazione: creazione del prototipo, sia per db sia per applicazioni
  5. Validazione e collaudo, verifica della correttezza (informatica) e della coerenza con i requisiti del cliente, e test di tutte le condizioni di lavoro
  6. Funzionamento a regime, ossia manutenzione ed estensione

Le fasi possono ricominciare, da cui il termine ciclo (raffinamenti successivi).

Progettazione di un database

La progettazione è suddivisa in tre fasi:

  • Progettazione concettuale
  • Progettazione logica
  • Progettazione fisica

Progettazione Concettuale

Traduzione della descrizione informale della realtà, cioè i requisiti del DB sottoforma di documenti e moduli di vario genere, in uno schema formale, completo (usando ad esempio il modello entita'-relazione) e indipendente dai criteri di rappresentazione del DBMS usato: il risultato si chiama schema concettuale.

Progettazione Logica

  • Consiste nella traduzione dello schema concettuale in termini di un determinato modello logico di dati (ad esempio il modello relazionale) usato dal DBMS che si intende utilizzare
  • Il risultato e' lo schema logico.
  • Include l'ottimizzazione della rappresentazione in funzione delle operazioni eseguite (es. normalizzazione)

Progettazione 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.

Il modello Entita'-Relazione (E-R)

  • e' un modello concettuale di dati che contiene alcuni costrutti per descrivere la realtà in maniera semplice, indipendente dalla organizzazione dei dati nel computer
  • i costrutti sono: Entità, Relazione, Attributo, Cardinalità, Identificatore, Generalizzazione, Sottoinsieme

Costrutti dei diagrammi E-R

Attributo semplice Entita' Relazione (a,A) (b,B) Attributo composto Cardinalita' di relazione (m , M) Cardinalita' di attributo Sottoinsieme Generalizzazione

Altri costrutti dei diagrammi E-R

Identificatore Interno ed Esterno

Entità (1)

STUDENTE CORSO PROFESSORE

  • Entita': classe di oggetti (fatti, cose, persone) che hanno proprietà comuni ai fini dell'applicazione di interesse che si intende modellare
  • Una occorrenza o istanza di un'entità e' un oggetto della classe
  • nello schema concettuale si rappresentano - le entità, non le singole istanze

Entità (2)

  • Classe di oggetti (fatti, persone, cose) dell'applicazione di interesse con proprietà comuni e con esistenza "autonoma" ai fini dell'applicazione
  • Esempi: - impiegato, città, conto corrente, ordine, fattura
  • Ogni entità ha un nome che la identifica univocamente nello schema: - nomi espressivi - opportune convenzioni (es. singolare)

Relazioni

Studente Esame Corso

  • Le relazioni o associazioni rappresentano legami logici fra due o piu' entita'
  • Possono esserci più relazioni fra le stesse entità, relazioni ricorsive
  • Relationship, viene tradotto con associazione o relazione (da non confondere con la relazione, da relation, nel modello relazionale)

Occorrenze di relazioni

  • Una occorrenza di una relazione binaria è una coppia di occorrenze di entità, una per ciascuna entità coinvolta
  • Una occorrenza di una relazione n-aria è una n-upla di occorrenze di entità, una per ciascuna entità coinvolta
  • Nell'ambito di una relazione non ci possono essere occorrenze (coppie, ennuple) ripetute

Esempi di occorrenze

E1 Rossi E2 Algebra E3 Verdi Bianchi Fisica E4 Pepi Analisi Studente Corso

Istanze di una associazione

  • Per definizione l'insieme delle istanze di un'associazione è un sottoinsieme del prodotto cartesiano dell'insieme delle istanze di entità che partecipano all'associazione
  • Non possono esserci istanze ripetute nell'associazione
  • Se s è uno Studente e c un Corso, la coppia (s,c) può comparire un'unica volta nell'insieme delle istanze di Esame Studente Esame Corso

Due associazioni sulle stesse entità

Sede di lavoro Impiegato Residenza Città

Attributo

Matricola Nome Data Voto Nome Telef Via Anno Corso Esame Studente Numero Indiriz CAP

  • Proprietà elementare di un'entità o di una associazione, di interesse ai fini dell'applicazione
  • Ad ogni occorrenza di entità o relazione associa un valore appartenente ad un insieme detto dominio dell'attributo (insieme di valori ammissibili per l'attributo)

Rappresentazione grafica degli attributi

Cognome Nome Data Voto Titolo Studente Esame Corso Matricola Codice data e voto non sono proprietà né di uno Studente né di un Corso, ma del legame Studente-Corso che si crea in occasione di un esame

Identificatore esterno

Cognome Matricola Nome (1,1) (0,N) Studente Iscrizione Università Anno di corso Indirizzo Un'occorrenza di entità è identificata dalla chiave di una o più entità collegate ad essa da associazioni, più eventuali attributi dell'entità stessa

Alcune osservazioni

  • ogni entità deve possedere almeno un identificatore, ma può averne in generale più di uno
  • un identificatore può coinvolgere uno o più attributi, ognuno dei quali deve avere cardinalità (1,1)
  • una identificazione esterna è possibile solo attraverso una associazione a cui l'entità da identificare partecipa con cardinalità (1,1) Modello Nome . AUTOMOBILE CASA COSTR. COSTR. (1,1) (1,N)

Identificatori: esempi da non seguire

Errore !! A1 K B1 E1 E2 R (1,1) (1,N) Attenzione al formalismo grafico usato per gli identificatori esterni. Titolo Nome (1,N) FILM RECITA ATTORE (1,N) Errore !! Non si può usare l'entità ATTORE per identificare l'entità FILM: la cardinalità (FILM, RECITA) dovrebbe essere (1,1), ma ciò è in netto contrasto con la semantica del problema.

Note sugli attributi di una associazione (1)

  • È importante fare attenzione all'uso di attributi in un'associazione! R a1 b1 A a2 b2 B [1, 12, ... ,rs ... an bm d
  • Ogni istanza rk dell'associazione R è dotata di un proprio valore per l'attributo d; inoltre la semantica dell'E-R impedisce di usare d per identificare le istanze di R.

Note sugli attributi di una associazione (2)

(0, N) (0, N) UOMO DONNA MATRIM. Non possono esserci due istanze dell'associazione (U¡,Di,d1) e (Ui,Di,d2), dunque un uomo e una donna non possono risposarsi. data (0, N) (0, N) UOMO DONNA MATRIM. Un uomo può risposare la stessa donna più volte (1, N) C data

Note sugli attributi di una associazione (3)

Se gli attributi sono più di uno e ripetuti, la soluzione più elegante consiste nell'introduzione di una nuova entità. MEDICO (0)\N) esito VISITA data (0, N) PAZIENTE un medico può visitare una sola volta un paziente: ASSURDO ! MEDICO (0) N) O esito (1, N) VÌSITA (1, N) data (0, N) + PAZIENTE' - ERRATO: non è possibile associare l'esito della visita alla data in cui è stata effettuata

Note sugli attributi di una associazione (4)

MEDICO MEDICO (0, N) (0, N) FA_VISITA (1, 1) VISITA (1, N) VISITA esito O data (0, N) esito PAZIENTE Odata (0, N) PAZIENTE CORRETTO ma poco leggibile (1, 1) IN_VISITA

Associazione ricorsiva

coinvolge "due volte" la stessa entità Conoscenza Persona

Associazione ricorsiva con "ruoli"

Successione Sovrano Successore Predecessore

Cardinalità di relazione (1)

(1,5) (0,50) Impiegato Assegnamento Incarico

  • Fornisce il numero minimo e massimo di istanze di relazione per ogni istanza di un entità cui quella relazione si riferisce
  • Nell'esempio si afferma che ad ogni impiegato si possono assegnare da 1 a 5 incarichi, ed ogni incarico può essere assegnato ad al più 50 impiegati
  • In base alla cardinalità esistono relazioni uno a uno (1:1), uno a molti (1:N) e molti a molti (N:N)

Cardinalità di relazione (2)

per semplicità si usano solo tre simboli: - 0 e 1 per la cardinalità minima: - 0 = "partecipazione opzionale" - 1 = "partecipazione obbligatoria" - 1 e "N" per la cardinalità massima: - "N" non pone alcun limite

Cardinalità di relazione (3)

(1,N) (0,N) Impiegato Assegnamento Incarico (1,1) (0,N) Studente Residenza Città

Cardinalità di relazione (4)

  • Coppia di valori (x,y) associati a ogni entità che partecipa a una relazione
  • Per ogni entità E che partecipa a una relazione R i numeri (x,y) specificano il numero minimo e massimo di occorrenze di R cui ciascuna occorrenza di E può partecipare

Tipi di relazioni

I tipi di relazioni si individuano facendo riferimento alle cardinalità massime. Abbiamo pertanto le relazioni: - uno a uno (x,1) - (x,1); - uno a molti (x,1) - (x,N); - molti a molti (x,N) - (x,N), dove x può valere 0 oppure 1

Cardinalità di attributo

(0.N) Targa Auto PERSONA Nome (0,1) Numero Patente

  • Specifica il numero minimo e massimo di valori di un attributo per un data occorrenza di una entità' o relazione.
  • Ad esempio nella figura si esprime che ogni persona ha al più una patente ma può avere più di un'auto. N indica un intero > 1

Perché cardinalità di attributi ?

  • Si associa la cardinalità anche agli attributi, con due scopi: - indicare opzionalità ("informazione incompleta") - indicare attributi multivalore

Attributo opzionale

codice_fiscale persona (1,1) (0,N) C telefono Quale significato all'opzionalita ? codice_fiscale telefono aaabbb00c11d222e 011123456 aaabbb00c11d222e 011123457 fffggg00h12i3331 NULL mmmnnn00010p444q NULL rrrsss00t13u555v NULL NULL per tutti i casi di non informazione

Chiave primaria

  • "strumento" per l'identificazione univoca delle occorrenze di una entità
  • "minimale": nessun sottoinsieme proprio dell'identificatore deve a sua volta essere identificatore
  • costituito da: - attributi dell'entità: identificatore interno - (attributi dell'entità +) entità esterne attraverso relazione: identificatore esterno

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.