Progettazione Concettuale: Il modello Entità-Relazioni

Slides:



Advertisements
Presentazioni simili
La progettazione concettuale
Advertisements

Informatica II – Basi di Dati (08/09) – Parte 1
Corso di Laurea in Biotecnologie Informatica (Basi di Dati)
Il raffinamento dello schema e la normalizzazione nei database relazionali Eugenio Di Sciascio.
Creazione di archivi tramite Data Base
IL MODELLO ENTITÀ-RELAZIONE Gli altri costruttori
IL MODELLO ENTITA’ - RELAZIONE I costruttori di base
LA PROGETTAZIONE LOGICA Seconda parte
Progettazione concettuale
Progettazione concettuale
Le base di dati database.
1 Progettazione Concettuale: Entity/Relationships (E/R) Esigenza di strumenti efficaci, chiari e sintetici per rappresentare i dati di interesse e le loro.
1 Progettazione Concettuale: Entity/Relationships (E/R) Esigenza di strumenti efficaci, chiari e sintetici per rappresentare i dati di interesse e le loro.
1 Progettazione logica: Il modello relazionale Eugenio Di Sciascio.
4 – Progettazione – Introduzione e Modello E-R
Basi di Dati prof. A. Longheu 4 – Progettazione – Introduzione e Modello E-R Cap. 5 Basi di dati Atzeni – Ceri – Paraboschi - Torlone.
Relazioni Relazione: Associazione o legame logico esistente tra due o più entità Socio Prenota Campo.
Basi di dati - Modelli e linguaggi di interrogazione- Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone Copyright © The McGraw-Hill.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
Archivio Cé necessità di immagazzinare in modo permanente grandi quantità di dati. Esempio: anagrafe dei cittadini di un comune.
L’uso dei database in azienda
ENTITÀ - RELAZIONE MODELLO ENTITÀ E ATTRIBUTI DOMINI RELAZIONI
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
Corso di Informatica (Basi di Dati)
LA PROGETTAZIONE LOGICA
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Metodologie e Modelli di Progetto
Basi di dati 2002 EER Vogliamo aumentare lespressività degli Entity Model EER: Entity Model Esteso.
Modello E-R Generalizzazioni
Progettazione di una base di dati
Normalizzazione Le forme normali certificano che la base di dati soddisfa criteri di qualità che mirano ad evitare le ridondanze e i conseguenti effetti.
Partizionamento/accorpamento di concetti
Modello E-R Generalizzazioni
Modello Relazionale Proposto agli inizi degli anni ‘70 da Codd
Basi di dati Claudia Raibulet
Esercitazione di Basi di Dati
TECNOLOGIE DELLINFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
LA PROGETTAZIONE DELLE BASI DI DATI
Il modello ER Proposto da Peter Chen nel 1976 rappresenta uno standard per la progettazione concettuale (in particolare per le basi di dati) Ha una rappresentazione.
Progettare un database
Basi di Dati e Sistemi Informativi
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
MODELLO E/R.
DB- Sistemi Informativi
Modellazione dei Dati Fabio Scanu a.s. 2012/2013.
Progettazione di una base di dati Progettazione logica (modello relazionale)
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Informatica Introduzione alle basi di dati Lezione 2 Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Progettazione concettuale di basi di dati: introduzione e modello ER
Progettazione Logica Il prodotto della progettazione logica è uno schema logico che rappresenta le informazioni contenute nello schema E-R in modo corretto.
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Progettazione di una base di dati Ciclo di vita di un sistema informativo Studio di fattibilità definisce le varie alternative possibili, i relativi costi.
Basi di dati e Relazioni Uno schema di relazione R(X) è costituito da un simbolo (nome della relazione) R e da una serie di attributi X={A 1, A 2, …, A.
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Progettazione di una base di dati relazionale Terza forma normale.
S. Costantini 06/05/2006 (parte del materiale è tratto da slide del 2001 di Ceri-Atzeni) Normalizzazione di Schemi.
Sistemi di Elaborazione delle Informazioni
Descrizione del modello EA con uno schema (parziale) EA Compito 1 di laboratorio: Progetto e realizzazione di una base dati per gestire la documentazione.
Metodologie e modelli per il progetto. 2 Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti.
1 Esami Esame scritto: Tra 21 e 25 domande: 20 domande chiuse (20 punti),  5 domande aperte (10 punti) 1½ ore Esame orale/applicativo: Esercizi usando.
Eprogram informatica V anno.
Cloud informatica V anno.
NORMALIZZAZIONE ESERCIZI. INTRODUZIONE La modellazione E-R ci ha consentito di descrivere schemi relazionali Lo strumento base per la modellizzazione.
Normalizzazione. Introduzione Nell’organizzazione tradizionale degli archivi, si verificano alcuni problemi, quali: Ridondanza dei dati (gli stessi dati.
Il modello relazionale. Modello Relazionale 2 Dal modello concettuale a quello logico Una volta stabilita la rappresentazione concettuale della realtà.
Basi di dati - 09Marco Maggini1 Forme normali forme normali  Le forme normali verificano la qualità di uno schema di una base di dati relazionale  Presenza.
Progettazione Concettuale: Il modello Entità-Relazioni
Transcript della presentazione:

Progettazione Concettuale: Il modello Entità-Relazioni Eugenio Di Sciascio Modello E-R

Lo schema concettuale Cosa è: una rappresentazione di alto livello dei requisiti sui dati raccolti nello URD. Cosa contiene: una descrizione dettagliata dei dati, delle relazioni e dei vincoli Cosa non contiene: dettagli implementativi Come si definisce: tipicamente mediante il modello Entità – Relazioni (Entity-Relationship) Modello E-R

Primi elementi del Modello E-R Entità: Una classe di oggetti (astratti o tangibili) della realtà di interesse (mini mondo) distinguibili dagli altri Attributi: le particolari proprietà che caratterizzano ciascuna entità nel contesto di interesse NOME COGNOME MATR. STUDENTE Modello E-R

Gli elementi di una entità L’occorrenza di una entità (1 singolo esemplare della classe) sarà caratterizzata da valori assunti dagli attributi. s1 Nome=Mario Cognome=Rossi Matr.=119310 s2 Nome=Laura Cognome=Petrarca Matr.=507412 Modello E-R

Gli attributi Tipi particolari di attributo: Civico CAP Via Città Attributo Composto: è suddivisibile in parti più piccole che hanno ancora una propria specificità. Es.: Indirizzo Via, Civico, CAP, Città, Stato. Utile quando preveda di riferirmi a a singole parti dell’attributo (via e civico). Attributo Multivalore: può assumere più di un singolo valore per ciascuna occorrenza di una entità. Es. Telefoni, titoli_di_studio, sedi. Indirizzo Civico Via CAP Città Stato Telefoni s1 Nome=Mario Cognome=Rossi Telefoni=080555333, 03481122345, 0335663452 Modello E-R

Gli attributi (cont.d) Ancora sugli attributi: Età Attributo derivato: attributo che è possibile o conveniente determinare a partire da altri attributi immagazzinati. Es.: Età è derivabile da data di nascita (è anche conveniente?). Il dominio di un attributo: L’insieme dei valori che possono essere assegnati ad un attributo di una entità. Es. età: 16-65, nome: insieme delle stringhe di caratteri . Def.: un attributo A di una entità E il cui insieme di valori è V è definibile come: A : E -> P(V). Dove P(V) è l’insieme dei sottoinisemi di V. Sui valori nulli: quando per un attributo in un esemplare di entità non sia possibile determinare un valore viene creato il valore Null. Il suo significato può essere duplice: 1-Ignoto; 2- Non applicabile. Es.: 1- Voto_di_maturità=null (non è noto il valore, ma la maturità è stata conseguita). 2- Civico=null (non esiste una numerazione poiché l’urbanizzazione non è completa). Età Modello E-R

La chiave di una entità Attributi chiave: Come distinguere tra occorrenze di una stessa entità? Assumiamo l’esistenza di un vincolo di unicità sugli attributi. Vincolo di chiave: esiste un sottoinsieme di attributi (che può ridursi ad uno) di una entità la cui combinazione di valori è distinta per ciascuna occorrenza di una entità. Chiamiamo Chiave qs. sottoinsieme. STUDENTE NOME COGNOME MATR. Modello E-R

Note sul vincolo di chiave La proprietà di unicità è un vincolo sullo schema dell’entità, non su un particolare insieme di occorrenze di entità. Essa pertanto vale sempre. La chiave va determinata quindi sulla base delle proprietà del mini mondo che la base di dati rappresenta. Una entità può avere più di un insieme di attributi che verificano il vincolo di chiave. Es.: Numero di telaio e numero di targa per l’entità “autovettura”. Modello E-R

Esempio Utilizzando una rappresentazione tabellare: Studente Nome La chiave non deve dipendere dal particolare “stato” Studente Nome Cognome Mario Rossi Piero Bianchi Nome Cognome Mario Rossi Piero Bianchi Fabio Matr. 119310 514222 125234 432541 Fabio Bianchi Piero Bianchi Modello E-R

Esempio La proprietà di un attributo di essere chiave dipende dal contesto: Esami superati La Matricola da sola non è in grado di individuare una occorrenza di “esami superati” Data Votazione 19/09/99 27 19/09/00 19/06/00 30 14/07/00 28 Matr. 119310 514222 Corso AnalisiI AnalisiII FisicaII Modello E-R

Relazioni Relazione: Associazione o legame logico esistente tra due o più entità Socio Prenota Campo Modello E-R

Grado di una relazione Grado di una relazione: numero di entità partecipanti Socio Campo Prenota Grado=2 Fornitura Prodotto Fornitore Grado=3 Beneficiario Modello E-R

Relazioni ricorsive Una entità può essere in relazione con se stessa. In tal caso si utilizzano esplicitamente nomi di ruolo per chiarire la partecipazione L’entità impiegato partecipa alla relazione sovrintende sia nel ruolo di responsabile che in quello di subordinato. Impiegato sovrintende responsabile subordinato Modello E-R

Un esempio di progetto Vogliamo progettare il modello E-R per un database di una azienda. Supponiamo di aver raccolto ed analizzato i requisiti in una fase precedente. I principali requisiti sono qui elencati: L’azienda è organizzata in dipartimenti. Ogni dipartimento ha un identificativo e un nome univoco; un impiegato gestisce il dipartimento. Il dip. Può avere più sedi dislocate sul territorio. Un dipartimento gestisce un numero variabile di attività identificabili univocamente; ciascuna attività ha inoltre un nome e si svolge in un unico luogo. Per ciascun impiegato si desidera tenere traccia di varie informazioni anagrafiche. Si desidera tenere traccia dei rapporti gerarchici del personale. Da un punto di vista organizzativo ciascun impiegato è assegnato ad un dip. Può lavorare su vari progetti, non necessariamente gestiti dal suo dip. E’ necessario inoltre tenere traccia dei famigliari di ciascun dipendente per motivi fiscali. Modello E-R

Lo schema E-R del database aziendale 1 Lavora_in Nome_Dip Ndip Nome Stip Sedi Cognome Impiegato Dipartimento Data_n 1 1 Dirige CF Indirizzo Data_ini 1 Sovrintende età Controlla Resp. N 1 Subord. N 1 Lavora_su M imparentato N N Ore_lav Progetto Famigliare Sede Nprog Nome_Prog Nome Sesso N_data Grado_p Modello E-R

Vincoli strutturali sulle relazioni Le relazioni possono avere vincoli che limitano le combinazioni delle entità partecipanti. I vincoli dipendono dal contesto, cioè dal minimondo che la relazione rappresenta. Cardinalità: specifica il numero di occorrenze di relazione cui le occorrenze di entità possono partecipare. Partecipazione:specifica se l’esistenza di una occorrenza di entità dipende dal suo essere in relazione con un’altra occorrenza di entità. Modello E-R

Cardinalità Le cardinalità vengono espresse normalmente come 1:1, 1:N, M:N. 1:1(uno a uno), alla relazione partecipa una singola occorrenza di entità per ciascuna delle 2 entità partecipanti 1:N(uno a molti), alla relazione possono partecipare, per una singola occorrenza di entità di una delle entità partecipanti, svariate occorrenze dell’altra entità. M:N(molti a molti), vale anche il viceversa della precedente definizione E1 E2 E1 E2 E1 E2 Modello E-R

Cardinalità: Impiegato Dipartimento 1 N M Progetto Famigliare CF In un Dipartimento possono lavorare svariati impiegati 1 Impiegato Lavora in 1 solo Dipartimento Cardinalità: Impiegato Dipartimento Progetto Famigliare CF Data_n Nome Cognome Indirizzo Ndip Nome_Dip Nprog Nome_Prog Sede Sovrintende Resp. Subord. Controlla Lavora_in Dirige imparentato Lavora_su 1 N M Sesso N_data Grado_p Stip Data_ini Ore_lav età 1 impiegato dirige 1 dip. Ad 1 progetto possono lavorare svariati impiegati 1 impiegato può lavorare su vari progetti Modello E-R

Linea spessa: partecipazione totale Si considerano due tipi di partecipazione: totale e parziale. Partecipazione totale -> dipendenza esistenziale. Ogni occorrenza di entità partecipa alla relazione Es.: I requisiti dichiarano che un progetto (una occorrenza della entità Progetto) deve essere gestito da un dipartimento, altrimenti non ha senso che esista. Partecipazione parziale -> Una occorrenza di entità può partecipare alla relazione. Es.: Un impiegato può essere direttore di un dipartimento, ma non necessariamente. Dipartimento Progetto Controlla 1 N Linea spessa: partecipazione totale Modello E-R

Osservazioni sulla notazione Esistono notazioni alternative per la rappresentazione dei vincoli. Si possono rappresentare per ogni entità il numero minimo e massimo di entità partecipanti. N.b. (min=0 partecipazione parziale, min >0 partecipazione totale). Dipartimento (0,N) Controlla (1,1) Progetto Modello E-R

Relazioni con grado > 2 Possono esistere relazioni ternarie (>3 molto improbabili). Molti sistemi reali non consentono di “mappare” relazioni con grado > 2. E’ pertanto necessario rappresentare la relazione ternaria utilizzando relazioni binarie. Questa operazione però può causare perdita di informazione se non condotta con attenzione. Modello E-R

Relazioni con grado > 2 (2) F_nome Quantità Id_prod Fornitura Prodotto Fornitore Id_prod Beneficiario F_nome Quantità N 1 N 1 B_nome Fornitore FF SP Prodotto Fornitura N FB 1 Beneficiario Modello E-R B_nome

Gerarchie ISA Rappresentano legami logici tra una entità E (padre) e una o più entità E1, E2, ..,EN (figli). Il padre è più generale dei figli che sono considerabili specializzazioni. ISA : IS-A -> “è un” Es.: Un liceale è uno studente; un universitario è uno studente. Impiegato ISA Stip_annuo Costo_orario Dipendente Contrattista Modello E-R

Parziale e sovrapposta Gerarchie ISA (2) Generalizzazione totale  ogni occorrenza della classe padre è una occorrenza di almeno una delle figlie Generalizzazione esclusiva  ogni occorrenza della classe padre è al più una sola occorrenza di una classe figlia Persona Parziale e sovrapposta Persona Totale ed esclusiva ISA ISA Lavoratore Studente Uomo Donna Studente lavoratore Modello E-R

Considerazioni finali sul modello E-R Va costruito dopo una adeguata attività di raccolta di requisiti. Consente una descrizione ad alto livello dei dati. Aiuta a chiarire ulteriormente i requisiti Consente di esplicitare numerosi vincoli E’ soggettivo: numerose scelte sono possibili e vanno adeguatamente ponderate. Se costruito in modo adeguato consente la mappatura immediata nel modello logico relazionale. N.b. E’ comunque necessario procedere a raffinamenti e verifiche (normalizzazione). Modello E-R