Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati...

21
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 “Basi di dati” Atzeni – Ceri – Paraboschi - Torlone

Transcript of Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati...

Page 1: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

Basi di Datiprof. A. Longheu

4 – Progettazione – Introduzione e Modello E-RCap. 5 “Basi di dati” Atzeni – Ceri – Paraboschi - Torlone

Page 2: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

1. Studio di fattibilità: scelta delle alternative possibili e stabilimento 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 che applicazioni

5. Validazione e collaudo, ossia 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 ciclo (raffinamenti successivi).

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:

Ciclo di vita dei Sistemi Informativi

Page 3: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

Progettazione

La progettazione di un DB consta di tre passi:

• Progettazione concettuale• Progettazione logica• Progettazione fisica

Page 4: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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.

Page 5: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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)

Page 6: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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.

Page 7: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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.

Page 8: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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

Page 9: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

Altri costrutti dei diagrammi E-R

Identificatore Interno ed Esterno

Page 10: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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)

Page 11: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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

Page 12: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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.

Page 13: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

Cardinalita’ delle Relazioni

IMPIEGATO ASSEGNAINCARICO(1,5) (0,50)

• 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).

Page 14: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

Cardinalita’ di Attributo

PERSONATarga Auto

Nome

Numero Patente

(0 , N)

(0 , 1)1)

• 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 un’auto. (N indica un intero > 1)

Page 15: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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)

Page 16: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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

Page 17: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

Generalizzazioni

AVVOCATO INGEGNERE MEDICO

Professionista

Specializzazione

Part. IVA

Nome

• Un’entita’ (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-> uomo, donna è totale)

• La generalizzazione è esclusiva se ogni occorrenza della classe padre è occorrenza al più di una sola delle figlie (persona->studente, lavoratore è sovrapposta)

Page 18: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

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

Page 19: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

ESEMPIO

Page 20: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

ESEMPIO

Page 21: Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.

ESEMPIO