Basi di Datiprof. A. Longheu
4 – Progettazione – Introduzione e Modello E-RCap. 5 “Basi di dati” Atzeni – Ceri – Paraboschi - Torlone
Progettazione
La progettazione di un DB avviene attraverso 3 passi:
• Progettazione concettuale• Progettazione logica• Progettazione fisica
Progettazione 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.
Progettazione 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 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
• 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.
Costrutti dei diagrammi E-R
Entita' Relazione
Attributo semplice
(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à
STUDENTE CORSO PROFESSORE
• Entita’ sono classi di oggetti (cose,persone) che hanno proprieta’ comuni ai fini dell’applicazione di interesse che si intende modellare.
• Un’occorrenza (o istanza) di un’entita’ e’ un oggetto della classe (concetto diverso dalle t-uple nel modello relazionale qui non ci sono attributi)
Relazioni
STUDENTE CORSOESAMI
• 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
Attributi
Corso Esame Studente
Indiriz
Nome
TelefVia
Numero
CAP
MatricolaData Voto
Nome
Anno
• Descrivono proprieta’ di entita’ o relazioni. Associa ad ogni occorrenza di un’entita’ (o di una relazione) un elemento del dominio dell’attributo.
Identificatori interni delle entita’
AUTOMOBILE
TARGA
Modello
Colore
PERSONA
Nome
Cognome
Data di nascita
Indirizzo
• Specificano quei concetti (attributi e/o entita’) che servono ad identificare univocamente le occorrenze di un’entita’. Generalmente sono uno o piu’ attributi della stessa entita’ (chiave interna)
Identificatori esterni delle entita’
STUDENTE ISCRIZIONE UNIVERSITA'(1,1) (1,N)
Matricola
Anno
Nome
Nome
Citta'
Indirizzo
• Un identificatore esterno (foreign key) per un entita’ e’ un identificatore che include un’altra entita’ legata alla prima da una relazione uno a molti . Cosi’ ogni studente e’ identificato dalla matricola e dall’Universita’ a cui e’ iscritto
Documentazione 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 d’integrita’ 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
ESEMPIO
ESEMPIO
Top Related