Il Modello Concettuale Enità-Relazione (ER)

Documenti analoghi
Progettazione concettuale usando il modello Entità-Relazione (ER)

IL MODELLO ENTITÀ-RELAZIONE

Lezione 2. Il modello entità relazione

IL MODELLO RELAZIONALE

LA PROGETTAZIONE LOGICA

Unità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione

LABORATORIO di INFORMATICA

Progettazione concettuale usando il modello Entità-Relazione (ER) e Progettazione Logica

Lezione 4. Dallo schema ER al relazionale

Il modello Entità/Relazioni (ER)

Basi di Dati e Sistemi Informativi. Progettazione Concettuale: Il modello Entità-Relazioni

Basi di Dati. Il Modello Entità-Relazione. Il Modello Entità-Relazione

Progettazione di Basi di Dati

Corso di Laurea in Informatica Basi di Dati a.a

ESERCITAZIONE ER-1. a.a Basi di Dati e di Conoscenza. Basi di dati

Progettazione di basi di dati

Database. Cos è un database? Intro Tipi di entità Mapping ER/EER à Relazionale

Il modello Relazionale.

Progettazione di basi di dati

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a

Modello Entità-Relazione

Modello Entità - Relazione. Basi di dati. Elena Baralis 2007 Politecnico di Torino D B M G D B M G2 D B M G4 D B M G6. Progettazione di basi di dati

Corso di Basi di Dati

D B M G D B M G 2. Sistemi informativi. Progettazione di basi di dati

Progettazione logica relazionale (1/2) Progettazione logica. Progettazione logica relazionale (2/2) Introduzione. Progettazione logica

Progettazione di basi di dati

Generalizzazione. Docente : Alfredo Cuzzocrea Tel. : Informatica

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

Ciclo di vita di un sistema informativo

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione logica. Dati di ingresso e uscita

Il modello Entity-Relationship: elementi avanzati

Prima di iniziare. Diamo qualche definizione :

Strategie top-down. Primitive di trasformazione top-down. Primitive di trasformazione top-down

Il modello Entity-Relationship: elementi avanzati

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione logica. Dati di ingresso e uscita

Introduzione alle basi di dati e ai DBMS

Progettazione logica: criteri di ottimizzazione

CAPITOLO IV. DATABASE: definizione e progettazione. Definizioni

Progettazione di basi di dati

Basi di dati. Progettazione di basi di dati: Metodologie e modelli

Esercitazione di Basi di Dati

Corso di Basi di Dati

Progettazione logica Fase 2: Traduzione nel modello relazionale. adattato da Atzeni et al., Basi di dati, McGrawHill

Progettazione logica: criteri di ottimizzazione

La progettazione logica Traduzione dal modello Entità-Associazione al modello relazionale Anno accademico 2008/2009

Il modello concettuale dei dati

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014

Progettazione di basi di dati

Gerarchia di Generalizzazione. Esempio. Rappresentazione grafica. Cap. 4 - Modello E/R avanzato: Gerarchie di Generalizzazione/ specializzazione

Metodologie e Modelli di Progetto

SISTEMI INFORMATIVI E DATABASE

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Obiettivo della progettazione logica. Dati di ingresso e uscita

TRADUZIONE DI SCHEMI

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Esercizi su Modello Entità-Relazioni

Cap. 3 - Il modello ER

diagrammi entità-relazioni

Le basi di dati. Lez. 2: Progettazione di un DB. Laboratorio di informatica gestionale

BASI DATI INFORMATICA

SISTEMI INFORMATIVI TERRITORIALI DATABASES -LEZIONE 3

Modello logico dei dati utilizzato nell ambito delle basi di dati, introdotto da Codd nel 1970.

Atzeni, Ceri, Paraboschi, Torlone Basi di dati

Le Basi di dati: progettazione concettuale

Basi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER

Programmazione con Java

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 20 ottobre Corso di laurea in Economia

IL MODELLO RELAZIONALE (CAPITOLO 2)

Progettazione di Basi di Dati. Dr. C. d'amat

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

MODELLO e RAPPRESENTAZIONE

Progettazione logica

Progettazione Logica. ISProgLog 1

Traduzione dal modello E/R al modello relazionale

2.2a: MODELLO RELAZIONALE. (1 Struttura)

Metodologie e modelli di progetto

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, La normalizzazione

SISTEMI INFORMATIVI GEOGRAFICI (GIS)

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA LOGICO e SCHEMA FISICO Costruzione delle tabelle

Basi di dati Modelli e linguaggi di interrogazione

TECNOLOGIE DELL INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE

I database. Introduzione alla teoria delle basi di dati

IL MODELLO RELAZIONALE (CAP 2) R. Basili, aa. 2011/2012

SQL QUERY: Le interrogazioni del database

Progettare una base di dati. Progettare una base di dati

Basi di Dati. Progettazione di una Base di Dati. Progettazione di una Base di Dati

Forme normali. Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill. La normalizzazione. Normalizzazione. Una relazione con anomalie.

Modello Entità-Relazione (E-R)

Basi di Dati. Concetti e Principi Generali. Maria Mirto

Elena Baralis, Claudio Demartini

LA NORMALIZZAZIONE. Seconda parte

Le basi di dati. Base di dati = dati + DBMS.

Conversione Modello ER in Modello Relazionale. A.Bardine - Conversione Modello ER in Modello Relazionale

Introduzione Concetti Generali Pratica su Access Link utili. ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 1

Corso di Informatica

Sistemi di Elaborazione delle Informazioni. Basi di dati. Tullio Facchinetti 29 ottobre :26

IL MODELLO ENTITÀ- RELAZIONE. Gli altri costruttori

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

Atzeni, Ceri, Paraboschi, Torlone Basi di dati. Progettazione logica. Attenzione

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA LOGICO Regole di derivazione

Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia. Università degli Studi di Salerno

Transcript:

Il Modello Concettuale Enità-Relazione (ER) (Capitolo 5 della versione italiana) Obbiettivo: Introdurre la progettazione concettuale Definire il linguaggio E-R Discuterne i costrutti principali Esempi 1

Fasi di sviluppo di una BD Analisi dei Requisiti Progettazione Concettuale Progettazione Logica (scelta del DBMS) Raffinamento dello Schema Progettazione Fisica e ulteriore raffinamento dello schema Progettazione delle Applicazioni e della Sicurezza 2

Analisi dei requisiti Consente di determinare quali dati devono essere memorizzati e quali applicazioni (distinte) insisteranno su di essi Requisiti utente Processo informale 3

Progettazione Concettuale Il modello concettuale serve descrivere tutte le informazioni che popoleranno la futura base di dati e le relazioni che nel dominio applicativo sussistono tra loro. Tali proprietà sono formalizzate attraverso un linguaggio molto generale (alto potere espressivo) che e detto linguaggio ER e il risultato della descrizione e detto schema ER (Entita -Relazioni) 4

Progettazione logica Dipende dal DBMS sottostante Nei DB relazionali, coincide con la definizione dello schema logico 5

Raffinamento dello schema Analisi dello schema logico iniziale Determinazione dei problemi: incompletezza ridondanze La normalizzazione è un processo formalizzato che garantisce, tramite una teoria algebrica rigorosa, alcune proprietà importanti 6

Progettazione Fisica Analisi dei carichi Definizione degli indici o ristrutturazione Obbiettivo: massimizzare le prestazioni rispetto alle applicazioni previste 7

Progettazione Applicazioni e Sicurezza Definizione dei processi applicativi Determinazione di (classi di) processi simili Creazione di gruppi di utenti, privilegi e regole di accessibilità 8

Progettazione Concettuale Obbiettivi Quali sono le entità e le relazioni dell organizzazione? Quali informazioni su queste entità e relazioni dovrebbero essere memorizzate nella base di dati? Quali sono i vincoli di integrità o le business rules in vigore? Uno schema di base di dati nel modello ER può essere rappresentato graficamente (diagrammi ER) Si può tradurre un diagramma ER in uno schema relazionale 9

Progettazione Concettuale Conseguenze Raffinamento dello schema (normalizzazione): controllo dello schema relazionale per trovare ridondanze e relative anomalie. Progettazione fisica e ulteriore raffinamento dello schema: si considerano il carico di lavoro e le prestazioni del sistema per effettuare ulteriori modifica sullo schema. 10

Elementi del modello ER Mtr Dal rid d budget Dipendenti LavoraIn Reparti Entità è un oggetto del mondo reale distinguibile da altri oggetti. E descritta in un modello ER da un insieme di attributi e dal loro dominio. Insieme di Entità: Una collezione di entita simili, per esse definisco un attributo chiave che le distingue. Dipendenti(Mtr:char(20),Nome:char(20),:char(20)) 11

Elementi del modello ER Mtr Dal rid d budget Dipendenti LavoraIn Reparti Entità è un oggetto del mondo reale distinguibile da altri oggetti. E descritta in un modello ER da un insieme di attributi e dal loro dominio. Insieme di Entità: Una collezione di entita simili, per esse definisco un attributo chiave che le distingue. Dipendenti(Mtr:char(20),Nome:char(20),:char(20)) Relazione: Un associazione tra due o piu entità Insieme di Relazioni: Una collezione di associazioni Ogni relazione e individuata solo dalle entita che vi partecipano Gestisce={(m,r) m Dipendenti.Mtr,r Reparti.rid} 12

Entità e Chiavi Una chiave è un sottoinsieme degli attributi di una classe di entità che, se completamente instanziato (cioe assegnato ad un valore costante), consente di individuare univocamente una istanza della classe ES: Numero Matricola (oppure Codice Fiscale) 4-pla: (Nome,Cog,DataNasc,LuogoNasc) 13

Ruoli e Relazioni Ternarie Mtr Dipendenti Supervisore Subordinato DipendeDa Le Relazioni possono coinvolgere anche entita appartenenti allo stesso Insieme di Entita. In tal caso vengono per definiti dei RUOLI Mtr rid d budget Sono lecite relazioni tra più entità. La relazione e individuata dalle chiavi delle entita coinvolte. Dipendenti LavoraIn Reparti Durata Dal Al 14

Vincolo di CHIAVE 1-a-1 1-a-Molti Molti-a-1 Molti-a-molti Mtr Dal rid d budget VINCOLO DI CHIAVE: Ogni Reparto può essere gestito al più da un dipendente. Dipendenti Dirige Reparti 15

Esempi di Vincoli di Chiave Molti a uno: GiocatoreSerie_A gioca_per - Squadra Album contiene Canzone_originale Uno-a-Molti Scrittore scrive libro SalaCinema Contiene Posto Molti-a-Molti Studente segue Corso Compilation contiene - Canzone 16

Vincolo di PARTECIPAZIONE Mtr Dal rid d budget Definisco un VINCOLO DI PARTECIPAZIONE TOTALE Se voglio esprimere che: Dipendenti Dirige Reparti LavoraIn Per ogni Reparto vi deve essere esattamente un responsabile Ogni Dipendete lavora in almeno un Reparto Ogni Reparto ha almeno un Dipendente Altrimenti la partecipazione e detta PARZIALE. 17

Esempi di Vincoli di Partecipazione Totale Totale Scrittore vs. scrive-libro. Libro vs. scritto_da - Scrittore Presidente vs. dirige Azienda Azienda vs. diretta_da Presidente Album vs. scritto_da - Musicista Parziale Studente vs. segue Corso (nessun corso) Album vs. prodotto_da Produttore (se Autore = Produttore) 18

Entità Deboli (Weak Entity set) Mtr costo p età Dipendenti Polizza Familiari Un Entità Debole puo essere identificata solamente considerando la chiave primaria di un altra entità (proprietario) L insieme entità debole deve partecipare ad una relazione con l insieme entità proprietario con vincolo di chiave e di partecipazione totale 19

Gerarchie ISA Legame logico tra un insieme entità E detto padre e più insiemi entità E 1,E 2, E n dette figlie. Si dice che: E è GENERALIZZAZIONE Dipendenti di E1,E2, En E1,E2, En sono ad Ore SPECIALIZZAZIONI di E Ei ISA E, ogni entità di Ei deve essere considerata anche un entità di E Paghe_Orarie Mtr ore_lav. Dipendenti ISA ID_contr Dipendenti a Contratto Vincolo di Sovrapposizione: sono permessi overlap tra le entità presenti negli insiemi entità figlie E1,E2, En Vincolo di Copertura: ogni entità in E deve essere presente in almeno un insieme delle entità figlie 20

Aggregazione Mtr Utilizzata per descrivere una relazione che coinvolge (insieme di entita ) un insieme di relazioni Dipendeti Controllori Fino_al pid Iniziato_il pbudget rid r budget Progetti Sponsors Reparti Ci permette di trattare un insieme di relazioni come un insieme di entità allo scopo di permetterne la partecipazione in (altre) relazioni 21

Attributi oppure Entità? Mtr Dal All rid d budget Indirizzo Dipendenti LavoraIn Reparti L informazione dell indirizzo del Dipendente deve essere modellato come un attributo oppure come un insieme entità? Modellerò indirizzo come un insieme entità (collegata da relazione a Dipendenti) ad esempio se: Ho diversi indirizzi per ogni Dipendente. Se l attributo definito sull insieme relazione deve distinguere le associazioni tra le entità coinvolte nella relazione (ad es: CV) Se molte interrogazioni richiedono informazioni in base a tale Attributo (ad es: tutti i dipendenti che vivono in una data città) 22

Entità o Relazioni? Se il direttore non ha un budget discrezionale separato per ogni Reparto che gestisce, l attributo dbudget sulla relazione Dirige e adatto? Mtr Se il direttore ha un budget unico, con la rappresentazione descritta sopra avrei i seguenti problemi: Ridondanza del dato dbudget su tutti i Reparti gestiti da ogni dirigente. E ingannevole perche suggerisce che il budget e legato alla relazione del dirigente con un determinato Reparto. Dipendenti Dirige Reparti Mtr Dal dbudget rid d budget Dipendenti Dirige Reparti codinc Incarico rid d dbudget Dal 23 budget

Relazioni Binarie o Ternarie? Se ogni Polizza è posseduta da un solo Dipendente: Un vincolo di chiave su Polizze significherebbe che una polizza può coprire solo un familiare! La mancanza di un vincolo di chiave consentirebbe a due Dipendenti di intestarsi la stessa Polizza Quali sono i vincoli aggiuntivi nel secondo diagramma? mtr Dipendenti Brutto progetto p età Copre Familiari Polizze polizzaid costo p età mtr Familiari Dipendenti Progetto migliore Intestatario Beneficiario Polizze polizzaid costo 24