Tecnologie dell'informazione e della Comunicazione. Sistemi per la gestione di basi di Dati
|
|
- Giuseppe Frigerio
- 5 anni fa
- Visualizzazioni
Transcript
1 Tecnologie dell'informazione e della Comunicazione Sistemi per la gestione di basi di Dati Prof. Mauro Gaspari gaspari@cs.unibo.it Rielaborazione delle slide del Dott. Matteo Magnani e dell Dott. Nicola Dragoni 1 1
2 Basi di Dati Progettazione concettuale L obiettivo della progettazione concettuale è quello di rappresentare la realtà di interesse ad un alto livello di astrazione. 2
3 Progettazione concettuale I modelli concettuali dei dati 3
4 I modelli concettuali dei dati Modello: l insieme delle regole e strutture che permettono la rappresentazione della realtà di interesse Schema: la rappresentazione di una specifica realtà secondo un determinato modello Regole di costruzione e di descrizione Realtà percepita Modello Il modello fornisce le regole per la costruzione della rappresentazione La rappresentazione è data da un insieme di simboli posti in corrispondenza con la realtà di interesse Rappresentazione (schema) La realtà di interesse è una porzione di mondo reale così come è percepita da chi costruisce la rappresentazione 4
5 I modelli concettuali dei dati Astrazione: è un procedimento mentale che si adotta quando si evidenziano alcune proprietà e caratteristiche di un insieme di oggetti altre proprietà, giudicate non rilevanti, vengono trascurate Primitive di astrazione comuni a tutti i modelli: classificazione generalizzazione aggregazione 5
6 I modelli concettuali dei dati Classificazione: astrazione che conduce alla definizione di una classe a partire da un insieme di oggetti caratterizzati da proprietà comuni Esempio: i membri della classe SETTIMANA sono Lunedì,... Giovedì,..., Domenica Relazione IS_MEMBER_OF: esiste tra un elemento della classe e la classe stessa (esempio: Giovedì IS_MEMBER_OF SETTIMANA) gli stessi oggetti possono essere classificati in modi diversi TAVOLO sedia nera x SEDIA MOBILE NERO sedia bianca y tavolo nero w MOBILE BIANCO tavolo bianco k 6
7 I modelli concettuali dei dati Generalizzazione: astrazione che definisce una relazione di sottoinsieme tra una classe (superclasse) e altre classi (sottoclassi) Esempio: la classe PERSONA è una generalizzazione delle classi UOMO e DONNA PERSONA UOMO DONNA La generalizzazione stabilisce una corrispondenza (mapping) tra gli elementi di una classe (superclasse) e gli elementi delle classi generalizzate (sottoclassi) Per tale mapping si definiscono delle proprietà di copertura 7
8 I modelli concettuali dei dati Copertura totale o parziale totale (t): ogni elemento della classe generica è in relazione con almeno un elemento delle classi generalizzate parziale (p): esistono alcuni elementi della classe generica che non sono in relazione con alcun elemento delle classi generalizate Copertura esclusiva o sovrapposta esclusiva (e): ogni elemento della classe generica è in relazione con al massimo un elemento delle classi generalizzate sovrapposta (o): esistono alcuni elementi della classe generica che sono in relazione con elementi di due o più classi generalizzate Animali Maschio Femmina Veicoli Auto Moto Persone Maschio Impiegato Giocatori Calciatori Tennisti totale, esclusiva parziale, esclusiva parziale, sovrappostatotale, sovrapposta 8
9 I modelli concettuali dei dati Aggregazione: astrazione mediante la quale si giunge alla definizione di un concetto a partire da altri concetti che ne rappresentano le parti componenti Esempio: il concetto BICICLETTA è la classe i cui componenti sono RUOTA, PEDALE e MANUBRIO Relazione IS_PART_OF: esiste tra un concetto componente e il concetto composto (es: PEDALE IS_PART_OF BICICLETTA) L aggregazione stabilisce una corrispondenza (mapping) tra gli elementi di una classe componente e gli elementi della classe composta Un associazione binaria tra classi PERSONA (e' un tipo di aggregazione): corrispondenza stabilita fra 2 classi p1 Esempio: p2 USA è un'associazione binaria delle classi PERSONA e CASA, che stabilisce un mapping tra gli elementi delle due classi p3 CASA c1 c2 USA c3 c4 9
10 Cardinalità delle associazioni Sia A una relazione tra C1 e C2 Cardinalità minima di C1 in A (min-card(c1, A)): è il minimo numero di corrispondenze nell'associazione A alle quali ogni membro di C1 deve partecipare Cardinalità massima di C1 in A (max-card(c1, A)): è il massimo numero di corrispondenze nell'associazione A alle quali ogni membro di C1 può partecipare Se min-card(c1, A) = m1 e max-card(c1, A) = M1, allora la cardinalità di C1 in A è (m1, M1), ovvero card(c1, A) = (m1, M1) Partecipazione opzionale (min-card(c1, A) = 0): alcuni elementi di C1 possono non essere aggregati tramite l'associazione A a elementi di C2 Partecipazione obbligatoria (min-card(c1, A) > 0): ad ogni elemento di C1 deve essere aggregato, tramite A, almeno un 10 elemento di C2
11 Cardinalità delle associazioni Uno a uno (one-to-one) Uno a molti (one-to-many) Molti a uno (many-to-one) Molti a molti (many-to-many) max-card(c1, A) = 1 max-card(c2, A) = 1 C1 C2 max-card(c1, A) = 1 max-card(c2, A) = n C1 C2 max-card(c1, A) = n max-card(c2, A) = 1 C1 C2 max-card(c1, A) = n max-card(c2, A) = n C1 C2 11
12 Esempio di associazione binaria PERSONA USA p1 p2 p3 CASA c1 c2 c3 c4 Ogni persona usa almeno una casa: min-card(persona, USA) = 1 Ogni persona può usare un generico numero di case: max-card(persona, USA) = n Alcuni case non sono abitate: min-card(casa, USA) = 0 Ogni casa può ospitare molte persone: max-card(casa, USA) = n Cardinalità di PERSONA in USA: card(persona, USA)= (1,n) Cardinalità di CASA in USA: card(casa, USA)= (0,n) 12
13 Altri esempi di associazioni binarie PERSONA POSSIEDE CASA Alcune persone non possiedono una casa: min-card(persona, POSSIEDE) =0 p1 p2 p3 c1 c2 c3 c4 Ogni persona può possedere un generico numero di case: max-card(persona, POSSIEDE) = n Ogni casa deve essere posseduta da una e una sola persona: min-card(casa, POSSIEDE) = 1 max-card(casa, POSSIEDE) = 1 Cardinalità di PERSONA in POSSIEDE: card(persona, POSSIEDE)= (0,n) Cardinalità di CASA in POSSIEDE: card(casa, POSSIEDE)= (1,1) 13
14 Progettazione concettuale Il modello Entity Relationship (E/R) 14
15 Elementi Base Entità: rappresenta un insieme di oggetti della realtà di cui si individuano proprietà comuni Rappresentazione grafica: Associazione: rappresenta un legame logico tra due o più entità Rappresentazione grafica: Attributo: rappresenta proprietà elementari di entità o associazioni Rappresentazione grafica: 15
16 Esempio STUDENTE e CORSO sono entità ESAME è un' associazione tra STUDENTE e CORSO N_MATRICOLA e NOME sono attributi di STUDENTE DATA e VOTO sono attributi di ESAME N_CORSO e TITOLO sono attributi di CORSO 16
17 Associazioni Le associazioni sono caratterizzate in termini di cardinalità Un corso può esistere Uno studente può aver sostenuto indipendentemente dal fatto che vi zero, uno o più esami. siano o meno studenti che abbiano già Con cardinalità minima 0 si afferma sostenuto esami relativi a quel corso che uno studente esiste anche se non ha sostenuto esami: min-card(studente, ESAME) = 0 max-card(studente, ESAME) = n min-card(corso, ESAME) = 0 max-card(corso, ESAME) = n card(corso, ESAME) = (0, n) card(studente, ESAME) = (0, n) 17
18 Anelli Un anello è un'associazione binaria tra un entità e se stessa Il ruolo di un entità è indicato tramite una label Esempio Ogni capo può dirigere (CAPO_DI) più dipendenti Ogni dipendente è direttamente SUBORDINATO_A un solo capo 18
19 Associazioni n-arie Un'associazione n-aria connette più di due entità Esempio SI_TIENE è una relazione ternaria che connette le entità CORSO, GIORNO e AULA, con le seguenti cardinalità:_ card(corso, SI_TIENE) = (1,3) card(giorno, SI_TIENE) = (0,n) card(aula, SI_TIENE) = (0,40) 19
20 Attributi Dominio dell attributo: insieme di valori legali per l attributo Un attributo è detto semplice se è definito su un solo dominio Sie E un entità o una relazione e A un attributo di E: Cardinalità minima: min-card(a,e) è il minimo numero di valori dell attributo associati a ogni istanza dell entità o relazione E Cardinalità massima: max-card(a,e) è il massimo numero di valori dell attributo associati a ogni istanza dell entità o relazione E 20
21 Attributi Opzionale: min-card(a,e) = 0 può essere non specificato il nome dell attributo Obbligatorio: min-card(a,e) = 1 almeno un valore dell attributo deve essere specificato Valore-singolo: max-card(a,e) = 1 Valore-multiplo: max-card(a,e) > 1 Una persona ha esattamente un nome Una persona può avere al massimo un indirizzo NB. Se non è specificato si sottointende (1,1) Una persona può avere più laure 21
22 Attributi composti Rappresentazione grafica: Un attributo composto è costituito da un gruppo di attributi che hanno affinità nel significato e nell uso. Esempio: INDIRIZZO denota il gruppo di attributi VIA, CITTA, REGIONE, NAZIONE e CAP. Con la cardinalità dell attributo composto INDIRIZZO si dice che una persona può avere più indirizzi, ciascuno dei quali composto da via, città, regione, nazione e cap (opzionale) Se invece si fossero usati 5 attributi semplici si poteva solo stabilire la cardinalità di ciascuno di essi indipendentemente da quella degli altri. 22
23 Gerarchie di Generalizzazione Un entità E è una generalizzazione di un gruppo di entità E1, E2,..., En se ogni oggetto delle classi E1, E2,..., En è anche un oggetto della classe E E E1 E2... En Proprietà di copertura della generalizzazione: totale ed esclusiva: (t, e) parziale ed esclusiva: (p, e) parziale e sovrapposta: (p, o) totale e sovrapposta: (t, o) 23
24 Esempio di generalizzazione La generalizzazione delle persone basate sul sesso è (t, e) Vi sono persone che non sono nè impiegati, nè segretari e nè manager: la generalizzazione basata sull impiego è (p, e) Gli impiegati possono avere più di un lavoro, anche diverso da quelli rappresentati in figura: tale generalizzazione è (p, o) Tutti i manager ricoprono il ruolo tecnico e/o amministrativo: la generalizzazione basata sul ruolo manageriale è (t, o) 24
25 Ereditarietà delle proprietà Nell astrazione di generalizzazione tutte le proprietà dell entità generica sono ereditate dalle entità generalizzate. Nel modello E/R ogni attributo, associazione e generalizzazione definita per l entità generica E è ereditata automaticamente da tutte le entità generalizzate E1, E2,..., En L attributo NOME della classe PERSONA è anche attributo delle classe STUDENTE e PROFESSORE, pertanto essi possono essere eliminati da tali classi ottenendo il secondo schema semplificato. 25
26 Subset Un subset è una gerarchia di generalizzazione con una sola entità generalizzata. La copertura di un subset è parziale. ESEMPIO STUDENTE ha, oltre agli attributi ereditati da PERSONA, l attributo addizionale MATRICOLA 26
27 Identificatori (chiave) Un identificatore (chiave) di un entità E è una collezione di attributi o di entità in associazione con E che individua in modo univoco tutte le istanze di E Sia E un entità A1,..., An: attributi a valore singolo ed obbligatori per E E1,.., Em: entità diverse da E e connesse ad E tramite associazioni binarie R1,..., Rm obbligatorie (min-card(e, Ri) = 1) e uno-a-uno o molti-a-uno (max-card(e, Ri) = 1) Possibili identificatori I = {A1,..., An, E1,..., Em}, ν 0, m 0, n+m 1. Valore dell identificatore di un istanza di E: l insieme di tutti i valori degli attributi Ai, i = 1,..., n e di tutte le istanze Ej, j= 1,..., m 27
28 ...continua I è un identificatore di E se: non ci sono due istanze di E con lo stesso valore dell identificatore eliminando un attributo Ai oppure un entità Ej da I, la proprietà a. non è più valida Classificazione degli identificatori semplice se n+m = 1 interno se m = 0 mixed se n > 0 e m > 0 composto se n+m > 1 esterno se n = 0 Ogni entità deve avere almeno un identificatore Gli identificatori interni sono preferibili rispetto a quelli esterni Gli identificatori semplici sono preferibili rispetto a quelli composti 28
29 Esempi di Identificatori Esempi di identificatori IDENTIFICATORE SEMPLICE ED INTERNO I = {NOME} IDENTIFICATORE COMPOSTO ED INTERNO I = {NOME, DATA_DI_NASCITA, NOME_GENITORE, RESIDENZA} (il nome dell identificatore ID_PERSONA è opzionale) 29
30 Esempi di Identificatori IDENTIFICATORE COMPOSTO E MIXED I = {NUM_IMPIEGATO_NEL_DIPARTIMENTO, DIPARTIMENTO} 30
31 Simboli Grafici del modello E/R 31
32 Progettazione concettuale Metodologie per il progetto concettuale 32
33 Metodologie per il progetto concettuale La costruzione di uno schema E/R è un processo incrementale: la nostra percezione della realtà è progressivamente raffinata e arricchita e lo schema concettuale è gradualmente sviluppato Primitive di raffinamento: trasformazioni che applicate allo schema iniziale producono lo schema finale Strategie di progetto: top-down bottom-up mixed Primitive di raffinamento + =Metodologie di progetto Strategie di progetto 33
34 Primitive per il progetto concettuale Il progetto di uno schema concettuale è un processo iterativo durante il quale, partendo da uno schema iniziale, si effettuano delle trasformazioni di schema per produrre lo schema finale Esempio Schema iniziale Schema finale Trasformazio ne 34
35 Caratteristiche delle trasformazioni dello schema Ogni trasformazione si applica ad uno schema iniziale e produce uno schema finale. Nell esempio lo schema iniziale è un entità (LUOGO) e lo schema finale è uno coppia di entità (CITTA e STATO) connesse da una relazione (VIVE_IN). Trasformazione Ogni trasformazione mappa nomi di concetti dello schema iniziale in nomi di concetti dello schema finale. Nell esempio al nome iniziale LUOGO corrisponde l insieme di nomi CITTA, IN, STATO. I concetti dello schema finale devono ereditare tutte le connessioni logiche definite per i concetti dello schema iniziale. Nell esempio l associazione VIVE_IN tra PERSONA e LUOGO è ereditata dall entità CITTA. 35
36 Trasformazioni Primitive Le trasformazioni primitive sono trasformazioni che non possono essere decomposte in altre più semplici Due tipologie: Primitive top-down Primitive bottom-up 36
37 Primitive top-down Hanno una struttura semplice: lo schema iniziale è un concetto semplice e lo schema finale consiste in un piccolo insieme di concetti Tutti i nomi sono raffinati in nuovi nomi che descrivono il concetto originale ad un livello di astrazione più basso Le connessioni logiche dovrebbero essere ereditate da un singolo concetto dello schema risultante. 37
38 Elenco delle Primitive Top-Down Un entità è trasformata in un'associazione tra due o più entità Esempio L entità LUOGO è raffinata nella relazione VIVE_IN tra le entità CITTA e STATO Un entità è trasformata in una gerarchia di generalizzazione o in un subset Esempio L entità PERSONA è trasformata in una generalizzazione che include MASCHIO e FEMMINA 38
39 Elenco delle Primitive top-down Un entità è trasformata in un insieme di entità indipendenti. L effetto di questa trasformazione è di introdurre nuove entità, non di stabilire associazioni o generalizzazioni tra di esse Esempio L entità PREMIO è divisa in due entità, PREMIO_NOBEL e OSCAR e nessuna associazione è stabilita tra di esse in quanto sono due modi indipendenti e differenti di classificare gli elementi di PREMIO 39
40 Elenco delle Primitive top-down Un associazione è trasformata in una o più associazioni tra le stesse entità Esempio L associazione VIVE_A tra PERSONA e CITTA è raffinata in due associazioni, VIVE_A e NATA_A, tra le stesse entità. 40
41 Elenco delle Primitive top-down Un associazione è trasformata in un cammino di entità e associazioni. Questo corrisponde a riconoscere che un associazione tra due entità deve essere espressa tramite una terza entità, che era nascosta nella prima rappresentazione. Esempio L associazione LAVORA_IN tra DIPENDENTE e DIPARTIMENTO è raffinata in un aggregazione più complessa che include l entità DIRIGENTE e due nuove associazioni. 41
42 Elenco delle primitive top-down Un entità o associazione è trasformata introducendo i suoi attributi Esempio Per l entità PERSONA sono introdotti gli attributi NOME, SESSO e ETA. Un entità o associazione è trasformata introducendo un attributo composto Esempio Per l entità PERSONA è introdotto l attributo composto INDIRIZZO. 42
43 Elenco delle primitive top-down Elenco delle primitive top-down Un attributo semplice è trasformato in un attributo composto o in un gruppo di attributi Esempio L attributo DATA è raffinato in un attributo composto dagli attributi GIORNO, MESE e ANNO. 43
44 Primitive bottom-up Introducono nuovi concetti e proprietà che non comparivano nelle precedenti versioni dello schema oppure modificano alcuni concetti esistenti Sono usate quando alcune caratteristiche del dominio di applicazione non sono rappresentate nelle versioni precedenti dello schema Sono applicate per integrare schemi differenti in uno schema globale più comprensivo (integrazione di schemi) 44
45 Elenco delle Primitive bottom-up Genera una nuova entità. E usata per introdurre un concetto nuovo nello schema. Genera una nuova associazione tra entità precedentemente definite. Esempio La nuova associazione VIVE_IN è stabilita fra le entità PERSONA e LUOGO. 45
46 Elenco delle Primitive bottom-up Genera una nuova entità come generalizzazione di entità esistenti Esempio Si forma una gerarchia di generalizzazione introducendo la classe PERSONA. Genera un nuovo attributo e lo connette ad un entità o associazione precedentemente definita Esempio Gli attributi CITTA e STATO sono connessi a LUOGO. 46
47 Elenco delle Primitive bottom-up Genera un attributo composto e lo connette ad un entità o associazione esistente Esempio L attributo composto INDIRIZZO è connesso a PERSONA. 47
48 Strategie per il Progetto Concettuale Top-down Lo schema è ottenuto applicando solo le primitive top-down. Il processo finisce quando tutti i requisiti sono stati rappresentati. Bottom-up Lo schema è ottenuto applicando solo le primitive bottom-up, iniziando da concetti elementari e costruendo concetti più complessi. I concetti vengono progressivamente integrati nello schema finale. Mixed Utilizzo sia delle strategie top-down che di quelle bottom-up. niziando da concetti elementari e costruendo concetti più complessi. I concetti vengono progressivamente integrati nello schema finale. 48
49 Esercizio Si vuole costruire una base di dati che rappresenta persone e luoghi. Requisiti: Per le persone sono considerate le seguenti proprietà: nome, cognome, sesso, età, luogo di nascita e di residenza, durata della residenza, posizione militare per gli uomini e il nome da nubile per le donne. Un luogo può essere uno stato ester o una città nazionale; ognuno di essi ha un nome e una popolazione. Per uno stato estero deve essere indicato il continente e per una città nazionale il nome della regione. 49
50 Tecnologie dell'informazione Progettazione logica relazionale Con il termine progettazione logica relazionale si intende la traduzione di uno schema disegnato tramite un modello concettuale (es. schema E/R) in uno schema disegnato tramite un modello relazionale. Dipende dal modello dei dati relazionale: basi di dati relazionali. Un modello dei dati alternativo e' quello ad oggetti. Esempi di basi di dati relazionali: mysql, access, postgress, openoffice database, etc... 50
51 Passi progettazione DB Progettazione concettuale Schema E/R: tecnica generale Progettazione logica. Specifica per diversi modelli dei dati Necessita ottimizzazioni Viste Interrogazioni Applicazioni 51
52 Il modello dei dati relazionale Una base di dati e' organizzata in relazioni dette anche tabelle. Si tratta del modello attualmente più utilizzato. Buoni meccanismi di ottimizzazione (forme normali). Interrogazioni espresse tramite un algebra relazionale. Linguaggio di interrogazione SQL (Structured Query Language) Supporto per transazioni: sequenze di operazioni sui dati che devono essere eseguite completamente per avere effetto, se una transazione non viene eseguita completamente l'effetto delle operazioni eseguite viene annullato. 52
53 Generazione dello Schema Relazionale Schema E/R Relazioni (tabelle)... 1.Eliminazione degli identificatori esterni 2.Eliminazione di attributi composti e/o ripetuti 3.Traduzione delle entità 4.Traduzione delle associazioni 53
54 Eliminazione degli Identificatori Esterni Se la chiave primaria di un entità E1 è data (completamente o parzialmente) dalla chiave primaria di E2, questa viene importata in E1. L associazione tra E1 e E2 viene così automaticamente tradotta e può essere eliminata. Esempi o 54
55 Eliminazione degli Attributi Composti Ci sono due alternative: Eliminare l attributo composto e considerare i suoi componenti come attributi semplici Eliminare i componenti e considerare l attributo come semplice Esempio 55
56 Traduzione Standard: Entità Ogni entità è tradotta con una relazione con gli stessi attributi La chiave primaria della relazione è quella dell entità stessa Esempio PERSONA(NOME, VIA, CITTA, NAZIONE) 56
57 Traduzione standard: associazioni Ogni associazione R tra le entità E1, E2,..., En è tradotta con una relazione con gli stessi attributi, cui si aggiungono le chiavi primarie di tutte le entità che essa collega ogni chiave primaria di un entità Ei tale che max-card(ei, R) = 1 è una chiave (candidata) della relazione R; altrimenti la chiave della relazione è composta dall insieme di tutte le chiavi primarie delle entità collegate le chiavi primarie delle entità collegate sono chiavi straniere (FK) riferite alle corrispondenti entità N.B.: La traduzione standard è praticamente l unica possibilità per le associazioni in cui tutte le entità partecipano con molteplicità maggiore di 1, ovvero max-card(ei, R) > 1, per ogni i 57
58 Esempio di traduzione standard Studente(Matricola, Nome) Corso(Codice, Denominazione) Esame(Matricola, Codice, Anno, Voto) FK: Matricola REFERENZIA Studente FK: Codice REFERENZIA Corso 58
59 Associazione binaria uno a uno tradotta con una relazione E12(K1, A1,..., K2, B1,..., C1,...) Vediamo alcuni casi particolari... 59
60 Associazione binaria uno a uno tradotta con un'associazione Se l associazione è obbligatoria per entrambe le entità la chiave primaria può essere indifferentemente K1 o K2 Direttore(Codice, Nome, Dipartimento, Tel, Data_inizio) FK: Dipartimento REFERENZIA DIPARTIMENTO 60
61 Associazione binaria uno a uno tradotta con una relazione Se l associazione è parziale per una entità obbligatoria per l altra (E2) la chiave deve essere K1 (E1) e Saranno possibili valori nulli per gli attributi di E2 e R Uomo(CF, Nome, Matricola, Corpo, Data) 61
62 Associazione binaria uno a uno tradotta con una relazione Se l associazione è parziale per entrambe, occorre che entrambe le entità abbiano lo stesso identificatore; la chiave può essere indifferentemente K1 o K2 Saranno possibili valori nulli per gli attributi di E1, di E2 e di R Persona(CF, Nome, CFConsorte) FK: CFConsorte REFERENZIA Persona 62
63 Associazione binaria uno a uno tradotta con due relazioni L associazione si può compattare in una delle entità, diciamo E1, includendo in E1 gli attributi di R e la chiava primaria di E2 come foreign key E1(K1, A1, A2,..., K2, C1, C2,...) FK: K2 REFERENZIA E2 E2(K2, B1, B2,...) 63
64 Associazione binaria uno a uno tradotta con due relazioni Per evitare i valori nulli, è preferibile compattare l associazione in un entità che partecipa obbligatoriamente op Uomo(CF, Nome) e r u Corpo, CF, Data) pservizio_militare(matricola, FK: CF REFERENZIA Uomo Uomo(CF, Nome, Matricola) FK: Matricola REFERENZIA Servizio_militare 64
65 Associazione binaria uno a uno tradotta con tre relazioni E preferibile se l associazione è parziale per entrambe le entità. Praticamente forzata se, oltre alla parzialità, le due chiavi primarie delle entità hanno domini distinti Tastiera(CodTas, Tipo) PC(CodPC, Descrizione) oppure Collega(CodTas, CodPC, Cavo) Collega(CodPC, CodTas, Cavo) FK: CodPC REFERENZIA PC FK: CodTas REFERENZIA Tastiera 65
66 Associazione binaria uno a molti: traduzione con due relazioni L associazione può essere compattata nell entità che partecipa con molteplicità unitaria, diciamo E1, includendo in E1 gli attributi di R e la chiave primaria di E2 come foreign key E2(K2, B1, B2,...) E1(K1, A1, A2,..., K2, C1, C2,...) Provincia(Nome-P, Regione) Persona(CF, Nome, Nome-p, Dal) FK: Nome-P REFERENZIA Provincia 66
67 Associazione binaria uno a molti: traduzione con tre relazioni Se la partecipazione di E1 è parziale, per evitare i valori nulli si pò optare per la traduzione standard con tre relazioni Venditore(Nome, Telefono) Ordine(Numero, Data) Scrive(Numero, Nome, Sconto) FK: Numero REFERENZIA Ordine FK: Nome REFERENZIA Venditore 67
68 Associazioni unarie Un associazione unaria può dar luogo ad una o due relazioni, dipendentemente dalle molteplicità in gioco Anello molti a molti Anello uno a molti 68
69 Associazioni unarie: anello molti a molti E tradotto con due relazioni, una per l entità e una per l associazione La chiave della relazione che modella l associazione è composta da due attributi, i cui nomi riflettono il diverso ruolo dell entità Ognuno di questi due attributi è anche foreign key Stato(Sigla, Nome) Confina(Sigla, Sigla-Confinante, Lung-Conf) FK: Sigla REFERENZIA Stato FK: Sigla-Confinante REFERENZIA Stato 69
70 Associazioni unarie: anello uno a molti E possibile tradurlo con 1 o 2 relazioni Una relazione Impiegato(Codice, Nome, Responsabile) FK: Responsabile REFERENZIA Impiegato Impiegato(Codice, Nome) Due relazioni Dipendenza(Dipendente, Responsabile) FK: Dipendente REFERENZIA Impiegato FK: Responsabile REFERENZIA Impiegato 70
71 Progettazione logica relazionale Associazione n-aria Segue la traduzione standard Prodotto(CodProd, Nome) Fornitore(CodForn, Telefono) Parte(CodPart, Descrizione) Fornitura(CodPart, CodProd, CodForn, Quantità) FK: CodPart REFERENZIA Parte FK: CodProd REFERENZIA Prodotto FK: CodForn REFERENZIA Fornitore 71
72 Progettazione logica relazionale Esempi o Proviamo a tradurre uno schema
73 Progettazione logica relazionale Studente(Matricola, Nome, Cognome) Corso(Codice, Nome) Frequenta(Matricola, CodiceCorso)
74 Progettazione logica relazionale Docente(Id, Nome, Cognome, Dipartimento) Corso(Codice, Nome, Docente)
75 Progettazione logica relazionale Esempio: schema finale Docente(Id, Nome, Cognome, Dipartimento) Corso(Codice, Nome, Docente) Studente(Matricola, Nome, Cognome) Frequenta(Matricola, CodiceCorso)
76 Progettazione logica relazionale Esempio Proviamo a tradurre uno schema complesso
77 Progettazione logica relazionale
78 Progettazione logica relazionale
79 Progettazione logica relazionale Impiegato(Codice, Cognome, Dipartimento, Data) Dipartimento(Nome, Città, Telefono, Direttore)
80 Esempio: schema finale Impiegato(Codice, Cognome, Dipartimento, Data) Dipartimento(Nome, Città, Telefono, Direttore) Sede(Città, Via, Cap) Progetto(Nome, Budget) Partecipazione(Impiegato, Progetto)
MODELLO ENTITY-RELATIONSHIP
MODELLO ENTITY-RELATIONSHIP Elementi di base Nome Significato Rappresentazione grafica ENTITË ASSOCIAZIONE insieme di oggetti della realtˆ di cui si individuano proprietˆ comuni. legame logico tra due
DettagliInformatica per l'impresa. Sistemi per la gestione di basi di Dati
Informatica per l'impresa Sistemi per la gestione di basi di Dati Prof. Mauro Gaspari gaspari@cs.unibo.it 1 1 Sistema Informativo Insieme degli strumenti, risorse e procedure che consentono la gestione
DettagliElena Baralis, Claudio Demartini
Progetto concettuale Il progetto concettuale 1 Obiettivo: produrre lo schema concettuale Strumenti: meccanismi di astrazione forniti dal modello Entità-Relazione Specifiche iniziali: descrizioni in linguaggio
DettagliIl modello Entità-Relazioni (entity-relationship)
Il modello Entità-Relazioni (entity-relationship) Introduzione alla progettazione Problema: progettare una base di dati a partire da requisiti sulla realtà di interesse Progettare=definire struttura caratteristiche
Dettagli2 - Metodologie e modelli per la progettazione di BD. Informatica II Basi di Dati (08/09) Parte 1. Introduzione alla progettazione
Informatica II Basi di Dati (08/09) Parte 1 Gianluca Torta Dipartimento di Informatica dell Università di Torino torta@di.unito.it, 0116706782 2 - Metodologie e modelli per la progettazione di BD Introduzione
DettagliVincoli. In ogni schema E/R sono presenti dei vincoli Alcuni sono impliciti, in quanto dipendono dalla semantica stessa dei costrutti del modello:
Vincoli In ogni schema E/R sono presenti dei vincoli Alcuni sono impliciti, in quanto dipendono dalla semantica stessa dei costrutti del modello: ogni istanza di relazione deve riferirsi ad istanze di
DettagliModello Entità-Relazione
Modello Entità-Relazione Modelli concettuali, perché? servono per ragionare sulla realtà di interesse, indipendentemente dagli aspetti realizzativi permettono di rappresentare le classi di dati di interesse
DettagliModello Entità-Relazione
Modello Entità-Relazione Modelli concettuali, perché? servono per ragionare sulla realtà di interesse, indipendentemente dagli aspetti realizzativi permettono di rappresentare le classi di dati di interesse
DettagliIl modello Entity-Relationship: elementi avanzati
Il modello Entity-Relationship: elementi avanzati Sistemi Informativi T Versione elettronica: 06.2.ER.avanzato.pdf Identificatori esterni Oltre a poter identificare un entità E mediante uno o più attributi
DettagliProgetto concettuale delle basi di dati
Progetto concettuale delle basi di dati Gian Pietro Picco Dipartimento di Elettronica e Informazione, Italy picco@elet.polimi.it http://www.elet.polimi.it/~picco Il progetto dei dati Specifiche dei dati
DettagliMa: progettazione dei dati. progettazione delle applicazioni. Progettazione di basi di dati
di basi di dati E. Giunchiglia Basi di dati 1 (trasparenze basate su Atzeni,, Ceri, Paraboschi, Torlone: : Basi di dati, Capitolo 6) di basi di dati: Metodologie e modelli 05/10/2004 È una delle attività
DettagliInformatica Industriale Modello funzionale: Informazione Modello Entità-Relazione
DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/
DettagliIl modello Entity-Relationship: elementi avanzati
Il modello Entity-Relationship: elementi avanzati Sistemi Informativi T Versione elettronica: 06.2.ER.avanzato.pdf Identificatori esterni Oltre a poter identificare un entità E mediante uno o più attributi
DettagliIL MODELLO ENTITÀ- RELAZIONE. Gli altri costruttori
IL MODELLO ENTITÀ- RELAZIONE Gli altri costruttori Sommario Cardinalità Identificatori Generalizzazioni Costruzione di schemi E-R E R con tutti i costruttori Cardinalità delle relazioni Coppia di valori
DettagliProgettazione concettuale di una base di dati
Progettazione concettuale di una base di dati Progettazione concettuale Analisi dei requisiti I requisiti devono innanzitutto essere acquisiti Le fonti possono essere molto diversificate tra loro: utenti,
DettagliINTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a
INTRODUZIONE ALLA PROGETTAZIONE Patrizio Dazzi a.a. 2017-2018 COMUNICAZIONI Lezione odierna e successive Metodologia di progetto Progettazione concettuale Progettazione logica Fondamentali per il secondo
DettagliPerché preoccuparci?
Perché preoccuparci? Proviamo a modellare una applicazione definendo direttamente lo schema logico della base di dati: da dove cominciamo? rischiamo di perderci subito nei dettagli dobbiamo pensare subito
DettagliIl Modello Entity-Relationship
Il Modello Entity-Relationship Sistemi Informativi L Corso di Laurea in Ingegneria dei Processi Gestionali A.A. 2003/2004 Docente: Prof. Wilma Penzo Modello Entity-Relationship Uno standard de facto per
DettagliUnità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione
Obiettivi Unità A2 Progettazione concettuale Imparare ad astrarre i dati per definire entità. Saper distinguere tra astrazione per classificazione, per aggregazione e per generalizzazione. Saper distinguere
DettagliProgettazione di basi di dati
Progettazione di basi di dati Sistemi Informativi L Corso di Laurea in Ingegneria dei Processi Gestionali A.A. 2003/2004 Docente: Prof. Wilma Penzo Progettazione di basi di dati È una delle attività del
DettagliGeneralizzazione. Docente : Alfredo Cuzzocrea Tel. : Informatica
Università Magna Graecia di Catanzaro Informatica Generalizzazione Docente : Alfredo Cuzzocrea e-mail : cuzzocrea@si.deis.unical.it Tel. : 0984 831730 Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill,
DettagliProgettazione logica relazionale (1/2)
Progettazione di basi di dati D B M G (1/2) Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi multivalore Eliminazione
DettagliMa: progettazione dei dati progettazione delle applicazioni. Progettazione di basi di dati
di basi di dati Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 Capitolo 6: di basi di dati: Metodologie e modelli 17/10/2002 È una delle attività del processo di sviluppo dei sistemi
DettagliModello Entità-Relazione (E-R)
Università Magna Graecia di Catanzaro Informatica Modello Entità-Relazione (E-R) Docente : Alfredo Cuzzocrea e-mail : cuzzocrea@si.deis.unical.it Tel. : 0984 831730 Lucidi tratti da: Atzeni, Ceri, Paraboschi,
DettagliProgettazione di basi di dati D B M G
Progettazione di basi di dati D B M G Progettazione logica relazionale (1/2) Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi
Dettagli3.1. CorsodiElementidiBasididati Il modello Entita Relazione (72) vendita ordine studente. Impiegato. Dipartimento. città. Città.
Costrutti fondamentali del modello Entità-Relazione 3.1. dielementidibasididati Il modello Entita Relazione (72) Entità Attributi di entità Relazioni Attributi di relazione IS-A e Generalizzazioni Basi
DettagliBasi di dati. Progettazione logica
Basi di dati Progettazione logica Progettazione concettuale Requisiti della base di dati Schema concettuale Progettazione logica Schema logico Progettazione fisica Schema fisico 2 Obiettivo della progettazione
DettagliLe Basi di dati: progettazione concettuale
Le Basi di dati: progettazione concettuale Progettazione di una base di dati requisitidel Sistema Informativo progettazione concettuale SCHEMA CONCETTUALE SCHEMA FISICO progettazione fisica progettazione
DettagliProgettazione logica: criteri di ottimizzazione
Progettazione logica: criteri di ottimizzazione Sistemi Informativi T Versione elettronica: 08.2.progLogica.ottimizzazione.pdf Criteri di ottimizzazione Per confrontare tra loro diverse alternative di
DettagliProgettazione di basi di dati. Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica. Fasi (tecniche) del ciclo di vita
Progettazione di basi di dati Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica È una delle attività del processo di sviluppo dei sistemi informativi va quindi inquadrata
DettagliBasi di dati (Sistemi Informativi)
Basi di dati (Sistemi Informativi) teoria e pratica con Microsoft Access Basi di dati Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche
DettagliProgettazione logica. Requisiti della base di dati. Schema concettuale. Schema logico. Schema fisico. Obiettivo della progettazione logica
Requisiti della base di dati Progettazione logica Progettazione concettuale Schema concettuale Progettazione logica Schema logico Progettazione fisica Schema fisico Obiettivo della progettazione logica
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione ModelloEntity-Relationship. E-R E il modello concettuale più diffuso Fornisce costrutti per descrivere le
DettagliModello Relazionale. Chiavi
Modello Relazionale RELAZIONE: dati n comini D 1, D 2,..., D n, (non necessariamente distinti), essa è un sottoinsieme del prodotto cartesiano D 1 x D 2 x... x D n n è detto grado di R; il numero di tuple
DettagliProgettazione di basi di dati. Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica. Fasi (tecniche) del ciclo di vita
Progettazione di basi di dati Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica È una delle attività del processo di sviluppo dei sistemi informativi va quindi inquadrata
DettagliProgettazione. Realizzazione
È una delle attività del processo di sviluppo dei sistemi informativi va quindi inquadrata in un contesto più generale: il ciclo di vita dei sistemi informativi: Insieme e sequenzializzazione delle attività
DettagliIntroduzione alla progettazione Metodologie e modelli per la progettazione di basi di dati Modello Entità-Associazione Anno accademico 2009/2010
Introduzione alla progettazione Metodologie e modelli per la progettazione di basi di dati Modello Entità-Associazione Anno accademico 2009/2010! Il problema: progettare una base di dati a partire da requisiti
DettagliLa progettazione logica Traduzione dal modello Entità-Associazione al modello relazionale Anno accademico 2008/2009
La progettazione logica Traduzione dal modello Entità-Associazione al modello Anno accademico 2008/2009 Obiettivo: Costruire uno schema logico in grado di descrivere le informazioni contenute nello schema
DettagliGerarchia di Generalizzazione. Esempio. Rappresentazione grafica. Cap. 4 - Modello E/R avanzato: Gerarchie di Generalizzazione/ specializzazione
Gerarchia di Generalizzazione 22 Cap. 4 - Modello E/R avanzato: Gerarchie di Generalizzazione/ specializzazione Concetti Definizioni Esempi Mette in relazione (legami logici) una o più entità, E 2,...,
DettagliModello 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
di basi di dati Modello Entità-Relazione concettuale logica Normalizzazione Sistemi informativi D B M G D B M G2 Modello Entità-Relazione di basi di dati di basi di dati Entità e relazioni Attributi Identificatori
DettagliPrincipi di Progettazione del Software a.a
Principi di Progettazione del Software a.a. 2017-2018 Fondamenti di basi di dati: il modello Entità-Relazioni Prof. Università del Salento Obiettivi della lezione Introdurre l argomento delle basi di dati
DettagliEntità. Modello Entità-Relazione (E-R) Relazioni (associazioni) Attributi
Modello Entità-Relazione (E-R) Modello concettuale di dati. Fornisce una serie di strutture (costrutti) per descrivere un problema in modo chiaro e semplice. I costrutti vengono utilizzati per definire
DettagliBasi di dati. Progettazione di basi di dati: Metodologie e modelli
Basi di dati Progettazione di basi di dati: Metodologie e modelli Perché preoccuparci? Proviamo a modellare una applicazione definendo direttamente lo schema logico della base di dati: da dove cominciamo?
DettagliSistemi informativi D B M G
Sistemi informativi D B M G Progettazione di basi di dati Modello Entità-Relazione Progettazione concettuale Progettazione logica Normalizzazione D B M G 2 Modello Entità-Relazione Ciclo di vita di un
DettagliProgettazione logica relazionale. Basi di dati. Elena Baralis 2007 Politecnico di Torino D B M G D B M G3 D B M G6 D B M G5
(1/2) Progettazione di basi di dati Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi multivalore Eliminazione degli attributi
DettagliProgettazione concettuale usando il modello Entità-Relazione (ER)
Progettazione concettuale usando il modello Entità-Relazione (ER) 1 Introduzione alla progettazione delle basi di dati Progettazione concettuale (in questa fase si usa il modello ER) Quali sono le entità
DettagliD B M G D B M G 2. Sistemi informativi. Progettazione di basi di dati
Sistemi informativi D B M G Progettazione di basi di dati Modello Entità-Relazione Progettazione concettuale Progettazione logica Normalizzazione D B M G 2 1 Progettazione di basi di dati D B M G Modello
DettagliCorso di Basi di Dati
Corso di Basi di Dati Progettazione Concettuale: Il Diagramma E-R Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Progettazione di DB Analisi dei requisiti e progettazione in dettaglio Studio/analisi
DettagliIl modello Entità/Relazioni (ER)
Il modello Entità/Relazioni (ER) Basi di dati 1 Il modello Entità/Relazioni (ER) Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il modello Entità/Relazioni (ER) Basi di dati
DettagliEntità. Relazioni. Cardinalità delle relazioni. Ogni entità ha un nome che la identifica
Entità Ogni entità ha un nome che la identifica univocamente nello schema: I nomi devono essere per quanto possibile espressivi Convenzioni Si usa il singolare Si rappresenta di solito con un rettangolo
DettagliBasi di Dati. Modello Concettuale
Basi di Dati Modello Concettuale Dettagli e Approfondimenti Mod. Concettuale >> Sommario Dettagli e Approfondimenti Classi e identificatori Generalizzazioni Cardinalità Associazioni Il Modello Entità-Relazione
DettagliProgettazione logica relazionale (1/2) Progettazione logica. Progettazione logica relazionale (2/2) Introduzione. Progettazione logica
Progettazione logica Progettazione logica relazionale (1/2) Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi multivalore
DettagliLA PROGETTAZIONE LOGICA. Terza parte
LA PROGETTAZIONE LOGICA Terza parte Argomenti della lezione Traduzione nel modello relazionale Analisi dei vari casi di traduzione Traduzione di schemi complessi Un esempio di progettazione logica Traduzione
DettagliD B M G D B M G 2. Basi di dati. Progettazione di basi di dati. Elena Baralis 2007 Politecnico di Torino 1. Modello Entità-Relazione
D B M G Progettazione di basi di dati Modello Entità-Relazione Progettazione concettuale Progettazione logica Normalizzazione D B M G 2 2007 Politecnico di Torino 1 Progettazione di basi di dati D B M
DettagliIntroduzione alla progettazione Metodologie e modelli per la progettazione di basi di dati Modello Entità-Associazione
Introduzione alla progettazione Metodologie e modelli per la progettazione di basi di dati Modello Entità-Associazione Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il Turismo classe
DettagliLa progettazione concettuale
PROGETTAZIONE La progettazione concettuale Sintesi tra la visione degli utenti e la visione dei progettisti. I progettisti devono essere certi di aver compreso esattamente e completamente le esigenze degli
DettagliTraduzione dal modello E/R al modello relazionale
Traduzione dal modello E/R al modello relazionale Obiettivo: tradurre lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta (ed efficiente) Schema E-R Ristrutturazione
DettagliDATABASE - MODELLO E-R ENTITÀ E RELAZIONI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL 2, HOEPLI. Informatica
DATABASE - MODELLO E-R ENTITÀ E RELAZIONI TRATTO DA CAMAGNI-NIKOLASSY, CORSO DI INFORMATICA, VOL 2, HOEPLI Informatica Introduzione L astrazione permette di creare dei modelli su cui vengono costruite
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati
Atzeni, Ceri, Paraboschi, Torlone Basi di dati Capitolo 9 (II parte): Progettazione logica: Dallo schema ER allo schema relazionale Traduzione verso il modello relazionale idea di base: le entità diventano
DettagliProgettazione logica
Progettazione logica Obiettivo della fase di progettazione logica è pervenire, a partire dallo schema concettuale, a uno schema logico che lo rappresenti in modo fedele e che sia, al tempo stesso, efficiente
DettagliProgrammazione con Java
Programmazione con Java Astrazioni e UML Astrazioni Nella vita reale siamo abituati a osservare e descrivere oggetti a vari livelli di dettaglio Dai da mangiare a Fido Porta a passeggio il cane Di quale
DettagliProgettazione logica: criteri di ottimizzazione
Progettazione logica: criteri di ottimizzazione Sistemi Informativi T Versione elettronica: 08.2.progogica.ottimizzazione.pdf Criteri di ottimizzazione Per confrontare tra loro diverse alternative di traduzione
DettagliCiclo di vita di un sistema informativo
Ciclo di vita di un sistema informativo 1) Studio di fattibilità definire, in maniera per quanto possibile precisa, i costi delle varie alternative possibili stabilire le priorità di realizzazione delle
DettagliMetodologie e Modelli di Progetto
Metodologie e Modelli di Progetto Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica CorsodiBasidiDati Accademico 2006/2007 docente: ing. Corrado Aaron Visaggio
DettagliStrategie top-down. Primitive di trasformazione top-down. Primitive di trasformazione top-down
Strategie top-down A partire da uno schema che descrive le specifiche mediante pochi concetti molto astratti, si produce uno schema concettuale mediante raffinamenti successivi che aggiungono via via più
DettagliIL MODELLO CONCETTUALE ENITÀ-RELAZIONE (ER) (CAPITOLO 5 DELLA VERSIONE ITALIANA)
1 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
DettagliCap. 3 - Il modello ER
Cap. 3 - Il modello ER Introduzione Introduzione Il modello ER nella progettazione Il modello e la progettazione concettuale Progettazione logica Progetto applicazioni di basi di dati 33 Progetto DB relazionale
DettagliIl Il progetto concettuale
Il Il progetto concettuale Sistemi Informativi e DB Sistema informativo (SI): insieme di funzioni che regolano la condivisione, la distribuzione e la registrazione delle informazioni necessarie alla vita
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Obiettivo della progettazione logica. Dati di ingresso e uscita
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Progettazione logica Obiettivo della progettazione logica "tradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi
DettagliProgettare una base di dati. Progettare una base di dati
Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Sistematizzare è meglio che improvvisare Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it Il ciclo di vita
DettagliIntroduzione alle basi di dati: Il modello concettuale
Introduzione alle basi di dati: Il modello concettuale A cura del Prof. Claudio Traini algoritmi + strutture dati = programmi Niklaus Wirth 1 L approccio 2 L approccio alle basi di dati Fasi del processo
DettagliProgettazione Logica. Alice Pavarani
Progettazione Logica Alice Pavarani Progettazione logica Obiettivo: Traduzione dello schema concettuale Descrivere il formato e l organizzazione dei dati Risultato: Modello logico (relazionale) Progettazion
DettagliIl Modello Entità Relazione (ER)
Il Modello Entità Relazione (ER) foglia@iet.unipi.it Sommario Il modello Entità Relazione per la progettazione concettuale delle basi di dati Progettazione della basi di dati È una delle attività del processo
Dettaglidiagrammi entità-relazioni
diagrammi entità-relazioni laboraorio di basi di dati Pierluigi Pierini pierluigi.pierini@technolabs.it Entità Corso Nome_ Una entità rappresenta una classe di oggetti distinti ed autonomi all interno
DettagliBasi di Dati. Il Modello Entità-Relazione. Il Modello Entità-Relazione
Basi di Dati Perché i modelli concettuali? Tranne casi banali, passare direttamente dai requisiti allo schema logico della base di dati presenta diverse difficoltà. Da dove si parte? Si rischia di perdersi
DettagliProgettazione parte seconda
Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Progettazione parte seconda Tra il dire e il fare c èc di mezzo... Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it
DettagliCorso di Informatica
Corso di Informatica Modulo T2 B2.1 - Progettazione concettuale 1 Prerequisiti Tecnica top-down Tecnica bottom-up Chiave primaria Relazione Generalizzazione e specializzazione 2 1 Introduzione Dopo lo
DettagliCorso di Informatica
Corso di Informatica Modulo T2 B2.3 - Dizionari 1 Prerequisiti Entità e attributi Diagrammi E-R 2 1 Introduzione Per la realizzazione del software tradizionale occorre affrontare diverse fasi di sviluppo:
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati. Progettazione logica. Attenzione
Atzeni, Ceri, Paraboschi, Torlone Basi di dati Capitolo 7: Progettazione logica Attenzione Nel seguito, come gia detto nella descrizione del modello E-R, con la dizione Relationship si intende la relazione
DettagliProgettazione logica Fase 2: Traduzione nel modello relazionale. adattato da Atzeni et al., Basi di dati, McGrawHill
Progettazione logica Fase 2: Traduzione nel modello relazionale 2 Vedremo: 1. prima la regola di traduzione per le entita 2. poi la regola base per le relationship molti a molti (chiamata anche regola
DettagliConversione Modello ER in Modello Relazionale. A.Bardine - Conversione Modello ER in Modello Relazionale
Basi di Dati A.Bardine - Il Modello Relazionale che rappresenta la realtà di interesse può essere ricavato direttamente dal Modello ER attraverso una sequenza di operazioni di conversione. Entità: Una
DettagliDatabase. Cos è un database? Intro Tipi di entità Mapping ER/EER à Relazionale
Database Intro Tipi di entità Mapping ER/EER à Relazionale Ing. Lucia Vaira PhD Student @ University of Salento lucia.vaira@unisalento.it Cos è un database? 1 Cos è un database? È una struttura di dati
DettagliE. Giunchiglia Basi di dati 1 (trasparenze basate su Atzeni,, Ceri, Paraboschi, Torlone: : Basi di dati, Capitolo 8) Progettazione logica
Requisiti della base di dati E. Giunchiglia Basi di dati 1 (trasparenze basate su Atzeni,, Ceri, Paraboschi, Torlone: : Basi di dati, Capitolo 8) Progettazione logica 05/10/2004 Progettazione concettuale
DettagliProgettazione di basi di dati
Progettazione di basi di dati Base di dati Requisiti progetto Struttura Caratteristiche Contenuto Metodologia in 3 fasi Progettazione concettuale Progettazione logica Progettazione fisica 1 Ciclo di vita
DettagliScopo. Informatica. Sistema informativo. Sistema informatico
BASI DI DATI 1 BASI DI DATI 2 Scopo Informatica Elaborazione di dati: Basi di dati Gestione dell informazione Informazione: difficile da definire ma a tutti è chiara l importanza della sua gestione in
DettagliIl Modello Concettuale Enità-Relazione (ER)
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
DettagliA. Ferrari modello relazionale
modello relazionale informatica progettazione logica relazionale o progettazione logica relazionale: o conversione di un diagramma E/R in un insieme di relazioni (tabelle), che costituisce lo schema logico
DettagliAnalisi dei requisiti
Analisi dei requisiti I requisiti devono innanzitutto essere acquisiti Le fonti possono essere molto diversificate tra loro: utenti, attraverso: interviste documentazione apposita documentazione esistente:
DettagliCorso di Laurea in Informatica Basi di Dati a.a
Corso di Laurea in Informatica Basi di Dati a.a. 2012-2013 Laboratorio 31B Esercitatori : Ing. G. Laboccetta Dott.ssa V. Policicchio Progetto Didattico Durante le lezioni saranno realizzate tutte le fasi
DettagliI prodotti della varie fasi sono schemi di alcuni modelli di dati:
Requisiti della base di dati Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 Capitolo 6: Progettazione di basi di dati: Metodologie e modelli 17/10/2002 Progettazione concettuale
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione logica. Dati di ingresso e uscita
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 Capitolo 8: Progettazione logica 17/10/2002 Progettazione concettuale Requisiti della base di dati Schema concettuale Progettazione
DettagliIl modello concettuale dei dati
Il modello concettuale dei dati A. Lorenzi, E. Cavalli INFORMATICA PER SISTEMI INFORMATIVI AZIENDALI Copyright Istituto Italiano Edizioni Atlas Livelli di analisi Realtà Modello Concettuale Entità/Associazioni
DettagliIL MODELLO ENTITÀ-RELAZIONE
IL MODELLO ENTITÀ-RELAZIONE PROGETTAZIONE CONCETTUALE DI UNA BASE DI DATI FASI DELLA PROGETTAZIONE DI UNA BASE DI DATI Introduzione alla progettazione delle basi di dati 1. Analisi dei requisiti! Dati,
DettagliUnità 3. Modello Relazionale
Unità 3 Modello Relazionale Modello Logico Modelli logico che deriva da concetti Matematici Permette di descrivere in modo corretto ed efficiente tutte le informazioni contenute nel modello E/R Meno astrato
DettagliCardinalità degli attributi
Cardinalità degli attributi Descrive il numero minimo e massimo di valori dell attributo associati ad ogni occorrenza di entità o relazione. Di solito la cardinalità è (1,1) e viene omessa. A volte il
DettagliProgettazione di basi di dati: Metodologie e modelli
Progettazione di basi di dati: Metodologie e modelli Progettazione di basi di dati Fino a questo punto si sono analizzate le modalità (modelli) di descrizione e di manipolazione di una base di dati supponendo
Dettagli