BASI DI DATI PROGETTO DELLA BASE DI DATI

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "BASI DI DATI PROGETTO DELLA BASE DI DATI"

Transcript

1 BASI DI DATI PROGETTO DELLA BASE DI DATI Prof. Fabio A. Schreiber Dipartimento di Elettronica e Informazione Politecnico di Milano tratto da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati - McGraw-Hill PROGETTAZIONE DELLA BASE DI DATI Fabio A. Schreiber Progettazione 1 1

2 CICLO DI VITA DEL SISTEMA INFORMATIVO RACCOLTA E ANALISI DEI REQUISITI PROGETTAZIONE IMPLEMENTAZIONE VALIDAZIONE E COLLAUDO ESERCIZIO E MANUTENZIONE Fabio A. Schreiber Progettazione 2 ANALISI DEI REQUISITI INIVIDUAZIONE DI UNITA ORGANIZZATIVE OMOGENEE UTENTI DEL SISTEMA ATTIVITA CHE IL SISTEMA DOVRA SUPPORTARE PROPRIETA E FUNZIONALITA DEL SISTEMA REQUISITI DI MASSIMA DI HW E SW PER SUPPORTARE IL SISTEMA RICHIEDE DI INTERAGIRE CON GLI UTENTI A TUTTI I LIVELLI, IN PARTICOLARE CON LA DIREZIONE AZIENDALE Fabio A. Schreiber Progettazione 3 2

3 ANALISI DEI REQUISITI PRODUZIONE DI DESCRIZIONE INFORMALE DEI DATI COINVOLTI E DELLE OPERAZIONI SU DI ESSI PIANO DI SVILUPPO DEL SISTEMA PRIORITA TEMPI DI REALIZZAZIONE STUDIO DI FATTIBILITA RISORSE IMPIANTI PERSONALE COSTI PROBLEMI DEL PASSAGGIO E ADATTAMENTO AL NUOVO SISTEMA Fabio A. Schreiber Progettazione 4 ANALISI DEI REQUISITI LINEE GUIDA SCEGLIERE TERMINI SPECIFICI EVITARE SINONIMI E OMONIMI STANDARDIZZARE (FORMALIZZARE) LE FRASI SE <COND> ALLORA <CASO 1> ALTRIMENTI <CASO 2> EVITARE CIRCONLOCUZIONI OPERATORE ECOLOGICO = SPAZZINO (!) ESPLICITARE TUTTI I RIFERIMENTI I PARTECIPANTI DI UNA DITTA INDICANO IL NUMERO DI TELEFONO : DI CHI???? Fabio A. Schreiber Progettazione 5 3

4 ANALISI DEI REQUISITI: ESEMPIO FUNZIONAMENTO DI UN MAGAZZINO IL MAGAZZINO E COMPOSTO DA SCAFFALI I FORNITORI FORNISCONO I PRODOTTI I CLIENTI ORDINANO I PRODOTTI GLI SCAFFALI CONTENGONO I PRODOTTI GLI OPERAI SONO ADDETTI AGLI SCAFFALI Fabio A. Schreiber Progettazione 6 ANALISI DEI REQUISITI: DIZIONARIO TERMINE DESCRIZIONE SINONIMI LEGAMI fornitore p.iva, denominaz., prodotto indirizzo, num. Tel. cliente p.iva, denominaz., acquirente prodotto indirizzo, num. Tel. prodotto codice, nome, articolo, fornitore genere voce scaffale cliente scaffale supporto numerato ripiano operaio prodotto operaio dati anagrafici, addetto, scaffale matricola, qualifica magazziniere Fabio A. Schreiber Progettazione 7 4

5 PROGETTAZIONE PROGETTAZIONE DEI DATI INDIVIDUA L ORGANIZZAZIONE E LA STRUTTURA DELLA BASE DI DATI CONCETTUALE LOGICA FISICA PROGETTAZIONE DELLE APPLICAZIONI SCHEMATIZZA LE OPERAZIONI SUI DATI E PROGETTA IL SOFTWARE APPLICATIVO Fabio A. Schreiber Progettazione 8 IMPLEMENTAZIONE VENGONO DEFINITE LE COMPONENTI HW E SW DI BASE E DI SVILUPPO DA ACQUISIRE SUL MERCATO VIENE COSTRUITA E POPOLATA LA BASE DI DATI VENGONO SVILUPPATI I PROGRAMMI APPLICATIVI Fabio A. Schreiber Progettazione 9 5

6 VALIDAZIONE E COLLAUDO VERIFICA DELLA CORRETTEZZA DEI DATI VERIFICA DEL CORRETTO FUNZIONAMENTO DELLE APPLICAZIONI VERIFICA DELLE PRESTAZIONI NELLE CONDIZIONI OPERATIVE THROUGHPUT TEMPO DI RISPOSTA VERIFICA DELLA SICUREZZA DEL SISTEMA E DEI DATI VERIFICA DELLA RESISTENZA AI GUASTI EVENTUALE PERIODO DI PARALLELO CON IL SISTEMA PRECEDENTE Fabio A. Schreiber Progettazione 10 ESERCIZIO E MANUTENZIONE AMMINISTRAZIONE DEL SISTEMA CONTROLLO DEL CORRETTO FUNZIONAMENTO DEL SISTEMA AUDITING DI SICUREZZA GESTIONE DEGLI UTENTI MANUTENZIONE CORRETTIVA RIMUOVE EVENTUALI GUASTI O ERRORI ADATTATIVA RIVEDE SPECIFICHE E IMPLEMENTAZIONE IN FUNZIONE DI MUTATE ESIGENZE APPLICATIVE EVOLUTIVA FA CRESCERE LE FUNZIONALITA E LE PRESTAZIONI DEL SISTEMA NEL TEMPO Fabio A. Schreiber Progettazione 11 6

7 PROGETTAZIONE CONCETTUALE TRADUCE IL RISULTATO DELL ANALISI DEI REQUISITI IN UNA DESCRIZIONE FORMALE DI FACILE COMPRENSIONE PER GLI ESPERTI DI ORGANIZZAZIONE AZIENDALE CHE RAPPRESENTI IL CONTENUTO INFORMATIVO DELLA BASE DI DATI INDIPENDENTE DAL DBMS UTILIZZA UN MODELLO CONCETTUALE Fabio A. Schreiber Progettazione 12 PROGETTAZIONE CONCETTUALE SCHEMA CONCETTUALE RAPPRESENTAZIONE SEMPLIFICATA CONTENENTE TUTTI E SOLI GLI ASPETTI INTERESSANTI PER LA GESTIONE DELL AZIENDA ELIMINA LE AMBIGUITA DEL LINGUAGGIO NATURALE ELIMINA I POSSIBILI CONFLITTI DI TERMINOLOGIA PRESENTI NEL GLOSSARIO E IL DOCUMENTO DI PROGETTO FONDAMENTALE CHE DEVE ESSERE VALIDATO DALLA DIREZIONE AZIENDALE Fabio A. Schreiber Progettazione 13 7

8 MODELLI CONCETTUALI LINGUAGGI FORMALI ESEGUIBILI NON ESEGUIBILI RAPPRESENTAZIONI GRAFICHE CORREDATE DA SCHEDE DESCRITTIVE MODELLO ENTITA - RELAZIONE (E-R) (P. P. Chen, 1976) NELLE SUE DIVERSE VARIANTI E IL PIU DIFFUSO SONO DISPONIBILI STRUMENTI CASE DI AUSILIO ALLA PROGETTAZIONE UNIFIED MODELING LANGUAGE (UML) STRUMENTO PIU RECENTE CHE PUO ESSERE UTILIZZATO A VARI LIVELLI ANCHE PER IL PROGETTO CONGIUNTO DATI-FUNZIONI Fabio A. Schreiber Progettazione 14 IL MODELLO ENTITA RELAZIONE (E-R) IL MODELLO E-R USA SIMBOLI GRAFICI PER FAVORIRE LA COMPRENSIONE DEI CONCETTI ANCHE E SOPRATTUTTO AI NON SPECIALISTI IL MODELLO E-R- E QUINDI UN GRAFO CHE USA NODI ETEROGENEI PER RAPPRESENTARE ENTITA E RELAZIONI I GRAFI E-R VENGONO AFFIANCATI DA SIMBOLI DI VINCOLO E DA SCHEDE DI DETTAGLIO Fabio A. Schreiber Progettazione 15 8

9 ENTITA RAPPRESENTA UNA CLASSE DI OGGETTI DEL MONDO RALE DI INTERESSE PER L APPLICAZIONE GLI OGGETTI POSSONO ESSERE MATERIALI (automobili, impiegati,...) IMMATERIALI (conti correnti, corsi, ) OGNI ENTITA E CARATTERIZZATA DA UN NOME Fabio A. Schreiber Progettazione 16 ENTITA IL SIMBOLO GRAFICO CHE RAPPRESENTA UN ENTITA E IL RETTANGOLO NOME DELLA ENTITA ESEMPI STUDENTE ESAME CONTO CORRENTE Fabio A. Schreiber Progettazione 17 9

10 ASSOCIAZIONE (O RELAZIONE) RAPPRESENTA UN LEGAME LOGICO TRA ENTITA DI INTERESSE PER L APPLICAZIONE UN ISTANZA DI UN ASSOCIAZIONE E UNA ENNUPLA TRA SINGOLE ISTANZE DELLE ENTITA COINVOLTE OGNI ASSOCIAZIONE E DISTINTA DA UN NOME CI POSSONO ESSERE PIU ASSOCIAZIONI DIVERSE TRA LE STESSE ENTITA Fabio A. Schreiber Progettazione 18 ASSOCIAZIONE IL SIMBOLO GRAFICO CHE RAPPRESENTA UN ASSOCIAZIONE E IL ROMBO NOME DELLA ASSOCIAZIONE ESEMPIO STUDENTE SUPERA ESAME Fabio A. Schreiber Progettazione 19 10

11 ASSOCIAZIONE TRA INSIEMI L ASSOCIAZIONE RAPPRESENTA UNA RELAZIONE TRA INSIEMI STUDENTE ESAME Fabio A. Schreiber Progettazione 20 CARATTERISTICHE DELLE ASSOCIAZIONI CARDINALITA (min, Max) NUMERO DI VOLTE CHE UNA DATA ISTANZA DI ENTITA DEVE O PUO PARTECIPARE ALL ASSOCIAZIONE OBBLIGATORIA, UNA SOLA VOLTA OBBLIGATORIA, FINO AD n VOLTE (0,1) OPZIONALE, UNA SOLA VOLTA (0,n) OPZIONALE, FINO AD n VOLTE Fabio A. Schreiber Progettazione 21 11

12 ESEMPI DI SCHEMI IMPIEGATO APPARTENENZA UFFICIO INGEGNERE SVILUPPARE PROGETTO Fabio A. Schreiber Progettazione 22 ESEMPI DI SCHEMI GUIDATORE GUIDARE AUTOBUS PERCORRENZA PERCORSO Fabio A. Schreiber Progettazione 23 12

13 ESEMPI DI SCHEMI MAGAZZINO CONTENERE SCAFFALE LAVORARE RISIEDERE SU OPERAIO OGGETTO Fabio A. Schreiber Progettazione 24 ESEMPI DI SCHEMI FATTURA RIFERIMENTO ARTICOLO RICEVERE GESTIRE IMPIEGATO CLIENTE UFFICIO APPARTENERE A Fabio A. Schreiber Progettazione 25 13

14 PROPRIETA (O ATTRIBUTI) RAPPRESENTANO CARATTERISTICHE DELLE ENTITA O DELLE ASSOCIAZIONI DI INTERESSE PER L APPLICAZIONE ENTITA E ASSOCIAZIONI VENGONO DESCRITTE MEDIANTE L AGGREGAZIONE DI PROPRIETA OGNI ISTANZA DI ENTITA O DI ASSOCIAZIONE POSSIEDE UN VALORE PER CIASCUN ATTRIBUTO OGNI ATTRIBUTO E CARATTERIZZATO DA UN NOME Fabio A. Schreiber Progettazione 26 ATTRIBUTI IL SIMBOLO GRAFICO CHE RAPPRESENTA UN ATTRIBUTO E IL CIRCOLETTO NOME DELL ATTRIBUTO ESEMPI STUDENTE ANNO DI CORSO SUPERA VOTO MATRICOLA COGNOME NOME Fabio A. Schreiber Progettazione 27 14

15 SCALARE ATTRIBUTI L ATTRIBUTO HA UN SOLO VALORE MULTIPLO MATRICOLA COGNOME VOTO L ATTRIBUTO AMMETTE PIU VALORI (min, Max) QUALIFICA TITOLO SPECIALITA (min, Max) RAPPRESENTANO LA CARDINALITA MINIMA E MASSIMA DELL ATTRIBUTO Fabio A. Schreiber Progettazione 28 ATTRIBUTI COMPOSTO LA PROPRIETA E A SUA VOLTA FORMATA DA ELEMENTI PIU SEMPLICI DATA (gg, mm, aaaa) INDIRIZZO (spec. topon., denomin., civico, cap, citta ) MULTIPLO COMPOSTO (1,N) TELEFONO (stato, citta, numero, interno) Fabio A. Schreiber Progettazione 29 15

16 OPZIONALE ATTRIBUTI SI AMMETTE CHE IL VALORE POSSA NON ESISTERE DIVERSO DA sconosciuto DIVERSO DA non applicabile DIVERSO DA valore = 0!!! (0, 1) (0, N) Fabio A. Schreiber Progettazione 30 MONDO REALE E MODELLO E-R ENTITA, RELAZIONI E ATTRIBUTI NON SONO FATTI ASSOLUTI, MA DIPENDONO DAL CONTESTO APPLICATIVO SE IL CONCETTO E SIGNIFICATIVO PER IL CONTESTO APPLICATIVO --> ENTITA SE IL CONCETTO E MARGINALE E DESCRIVIBILE IN MODO SEMPLICE --> ATTRIBUTO SE IL CONCETTO DEFINISCE UN LEGAME TRA ENTITA --> RELAZIONE Fabio A. Schreiber Progettazione 31 16

17 ESEMPI DI SCHEMI E POSSIBILE CHE LA STESSA REALTA VENGA MODELLATA CON SCHEMI DIVERSI (0,1), (0,1) --> MONOGAMIA FEMMINA (m,m) MATRIMONIO (m,m) MASCHIO (0,1), (0,N) --> POLIGAMIA (0,N), (0,1) --> POLIANDRIA LUOGO DATA (0,N), (0,M) --> COMUNE SESSO STATO CIVILE (0,1) PERSONA NOME DEL CONIUGE PERSONA E CONIUGE DI Fabio A. Schreiber Progettazione 32 ASTRAZIONI UN MODELLO E UN ASTRAZIONE DELLA REALTA NEL CASO DEL MODELLO E-R E UTILE CONSIDERARE TRE TIPI DI ASTRAZIONI CLASSIFICAZIONE (is-member-of) AGGREGAZIONE (is-part-of) GENERALIZZAZIONE/SPECIALIZZAZIONE (is-a) Fabio A. Schreiber Progettazione 33 17

18 CLASSIFICAZIONE (is-member-of) DEFINISCE UNA CLASSE DI OGGETTI CON PROPRIETA COMUNI IDENTIFICA UN ENTITA ATTRAVERSO I SUOI ATTRIBUTI ESEMPI ATTRIBUTO: colore = CLASSE {rosso, giallo, verde, } ATTRIBUTO: tipo = CLASSE {corsa, turismo, montagna, } ATTRIBUTO: proprietario = CLASSE {Pietro, Giuseppe, } ENTITA : bicicletta = CLASSE {colore, tipo, proprietario} Fabio A. Schreiber Progettazione 34 AGGREGAZIONE (is-part-of) DEFINISCE UNA NUOVA CLASSE A PARTIRE DA ALTRE CLASSI COMPONENTI IDENTIFICA UN ENTITA ATTRAVERSO I SUOI COMPONENTI ESEMPI ENTITA : ruota ENTITA : telaio ENTITA : sellino ENTITA : bicicletta = AGGREGAZIONE {ruota, telaio, sellino} Fabio A. Schreiber Progettazione 35 18

19 SOTTOINSIEMI DI UN INSIEME COPERTURA RISPETTO ALLA PARTECIPAZIONE TOTALE (t) TUTTI GLI ELEMENTI DELL INSIEME FANNO PARTE DI UN SOTTOINSIEME PARZIALE (p) ALCUNI ELEMENTI POSSONO NON FAR PARTE DI ALCUN SOTTOINSIEME RISPETTO ALLA SOVRAPPOSIZIONE ESCLUSIVA (e) OGNI ELEMENTO PUO FAR PARTE DI UN SOLO SOTTOINSIEME SOVRAPPOSTA (s) UN ELEMENTO PUO FAR PARTE DI PIU SOTTOINSIEMI UNA SUDDIVISIONE (t,e) SI DICE PARTIZIONE DELL INSIEME Fabio A. Schreiber Progettazione 36 GENERALIZZAZIONE (is-a) DEFINISCE UNA CLASSE COME GERARCHIA DI SOTTOINSIEMI codice identif denominazione TITOLI (p,e) quotazione data quotazione AZIONI OBBLIGAZIONI TITOLI DI STATO tipo n azioni emesse tipo azienda ente tasso scadenza emittente stato tasso scadenza emittente GLI ATTRIBUTI DEL PADRE VENGONO EREDITATI DAI FIGLI Fabio A. Schreiber Progettazione 37 19

20 IDENTIFICATORE (CHIAVE) UN IDENTIFICATORE, COSTITUITO DA UNO O PIU ATTRIBUTI, CARATTERIZZA IN MODO UNIVOCO LA SINGOLA ISTANZA DI ENTITA O DI ASSOCIAZIONE TOTALE, OBBLIGATORIO, UNICO, ESPLICITO PUO ESSERE COMPOSTO, MA NON DEVE AVERE null IN GENERE NON E MODIFICABILE L IDENTIFICATORE DI UN ASSOCIAZIONE E COSTITUITO DALL UNIONE DEGLI IDENTIFICATORI DELLE ENTITA CHE PARTECIPANO id ESEMPI c.f. DIPENDENTE n telaio ATOMOBILE ISBN LIBRO Fabio A. Schreiber Progettazione 38 IDENTIFICATORE (CHIAVE) DIPENDENTE (1,2) c.f. cognome nome data_nascita data_assunzione livello recapito qualifica stipendio telefono indirizzo Fabio A. Schreiber Progettazione 39 20

21 IDENTIFICATORE COMPOSTO cognome nome DIPENDENTE (1,2) data_nascita c.f. data_assunzione livello telefono recapito qualifica indirizzo stipendio Fabio A. Schreiber Progettazione 40 matr. ESEMPI DI SCHEMI QUESTO E LO SNAPSHOT PER UNA SOLA GIORNATA n_aut (0,1) (0,n) GUIDATORE GUIDARE AUTOBUS (0,1) turno ADIBITO_A cod_p PERCORSO matr. GUIDATORE (0,n) FARE numero data fascia id_tu TURNO AUTOBUS USARE (0,n) n_aut QUESTO E UNO SCHEMA VALIDO PER PIU GIORNI Fabio A. Schreiber Progettazione 41 21

22 ESEMPI DI SCHEMI matr. GUIDATORE (0,1) (0,1) GUIDARE n_aut AUTOBUS cod_p (0,n) PERCORSO LA CHIAVE DELL ASSOCIAZIONE TERNARIA E (matr., n_aut, cod_p); LE CARDINALITA SI RIFERISCONO ALL ASSOCIAZIONE DI UN ENTITA CON LA COPPIA DELLE ALTRE DUE matr. GUIDATORE (0,n) n_aut AUTOBUS (0,n) E ANCHE POSSIBILE INVECE DI GV cod_v AV VIAGGIO VP cod_p (0,n) PERCORSO data_p data_a Fabio A. Schreiber Progettazione 42 AUTO-ASSOCIAZIONI (RELAZIONI UNARIE) SONO ASSOCIAZIONI AVENTI COME PARTECIPANTI ISTANZE PROVENIENTI DALLA STESSA ENTITA VENGONO ANCHE CHIAMATE RELAZIONI DI RUOLO O AD ANELLO Fabio A. Schreiber Progettazione 43 22

23 AUTO-ASSOCIAZIONI (RELAZIONI UNARIE) matr IMPIEGATO manager (0,n) segretaria DIPENDERE IL RUOLO VIENE RIPORTATO SUL RELATIVO RAMO ASSOCIAZIONE RICORSIVA, GERARCHIA (1:n) matr CONTROLLORE (0,n) IMPIEGATO CONTROLLO CONTROLLATO Fabio A. Schreiber Progettazione 44 RIDONDANZE NEGLI SCHEMI LA SPECIFICA DI UNA BASE DI DATI ESPRESSA IN LINGUAGGIO NATURALE PUO PORTARE ALL INTRODUZIONE DI RIDONDANZA LE RIDONDANZE NEGLI SCHEMI DEVONO ESSERE IDENTIFICATE ED ELIMINATE MODIFICANDOLI OPPORTUNAMENTE ESEMPIO UNA SOCIETA GESTISCE SALE PER ESPOSIZIONI LE SALE SONO RISERVATE A MARCHE DI MACCHINE LE SALE COMPRENDONO SPAZI DI ESPOSIZIONE GLI SPAZI CONTENGONO MACCHINE LE MACCHINE APPARTENGONO AD UNA CERTA MARCA Fabio A. Schreiber Progettazione 45 23

24 RIDONDANZE NEGLI SCHEMI SALA COMPR. SPAZIO RISERV. CONTIENE. MARCA APPART. MACCHINA POTREBBE ESSERCI RIDONDANZA Fabio A. Schreiber Progettazione 46 RIDONDANZE NEGLI SCHEMI VINCOLO UNA SALA CONTIENE UNA SOLA MARCA SE IL VINCOLO PER LA SISTEMAZIONE DELLE MACCHINE NEGLI SPAZI VIENE RISPETTATO IL CICLO E RIDONDANTE NON E POSSIBILE ELIMINARE UN LATO A CASO SENZA PERDERE INFORMAZIONE Fabio A. Schreiber Progettazione 47 24

25 RIDONDANZE NEGLI SCHEMI SALA COMPR. SPAZIO RISERV. CONTIENE. MARCA APPART. MACCHINA DATO UNO SPAZIO NON E PIU POSSIBILE RISALIRE ALLA SALA DI APPARTENENZA (CI POSSONO ESSERE PIU SALE DEDICATE ALLA STESSA MARCA) Fabio A. Schreiber Progettazione 48 RIDONDANZE NEGLI SCHEMI SALA COMPR. SPAZIO RISERV. CONTIENE. MARCA APPART. MACCHINA DATA UNA MACCHINA NON E PIU POSSIBILE RISALIRE ALLO SPAZIO CHE LA CONTIENE (CI SONO PIU SPAZI IN UNA SALA) Fabio A. Schreiber Progettazione 49 25

26 RIDONDANZE NEGLI SCHEMI SALA COMPR. SPAZIO RISERV. CONTIENE. MARCA APPART. MACCHINA L INFORMAZIONE VIENE PRESERVATA Fabio A. Schreiber Progettazione 50 RIDONDANZE NEGLI SCHEMI SALA COMPR. SPAZIO RISERV. CONTIENE. MARCA APPART. MACCHINA L INFORMAZIONE VIENE PRESERVATA Fabio A. Schreiber Progettazione 51 26

27 ENTITA DEBOLI CONTENGONO ISTANZE ACCETTATE DAL SISTEMA SOLO IN PRESENZA DI DETERMINATE ISTANZE DI ALTRE ENTITA DALLE QUALI ESSE DIPENDONO IN CASO DI ELIMINAZIONE DELL ISTANZA DI RIFERIMENTO DEVONO ESSERE ELIMINATE ANCHE LE ISTANZE DEBOLI AD ESSA COLLEGATE (DIPENDENZA ESISTENZIALE) L IDENTIFICATORE DELL ENTITA DEBOLE DEVE CONTENERE L IDENTIFICATORE DELL ENTITA DALLA QUALE DIPENDE Fabio A. Schreiber Progettazione 52 ENTITA DEBOLI CONTO CORRENTE (0,n) n_conto OPERA MOVIMENTO cod_mov IDENTIFICATORE = {n_conto, cod_mov} Fabio A. Schreiber Progettazione 53 27

28 ESEMPIO DI ENTITA DEBOLI I TRENI SONO IDENTIFICATI DA UN NUMERO E DA UNA DATA E SONO COMPOSTI DA VETTURE CHE CONTENGONO I POSTI DA PRENOTARE LE VETTURE SONO NUMERATE E I POSTI SONO NUMERATI ALLO STESSO MODO IN OGNI VETTURA SE LE VETTURE HANNO SCOMPARTIMENTI, I POSTI STANNO ALL INTERNO DI UNO SCOMPARTIMENTO Fabio A. Schreiber Progettazione 54 ESEMPIO DI ENTITA DEBOLI n_vett n_tr data VETTURA COMP. TRENO CONT. n_sc SCOMPARTIMENTO IN POSTO n_p SE VIENE CANCELLATO IL TRENO, VENGONO CANCELLATI ANCHE TUTTI I POSTI Fabio A. Schreiber Progettazione 55 28

29 LE GERARCHIE ALCUNE ENTITA POSSONO ESSERE MOLTO SIMILI O CASI PARTICOLARI L UNA DELL ALTRA RISULTA UTILE PORRE A FATTOR COMUNE LE CARATTERISTICHE COMUNI E EVIDENZIARE I MOTIVI DI DISTINZIONE IL LEGAME LOGICO CHE UNISCE LA CLASSE DEGLI ATTRIBUTI COMUNI (PADRE) CON LE SOTTOCLASSI SPECIALIZZATE (FIGLI) E LA GERARCHIA DI SPECIALIZZAZIONE Fabio A. Schreiber Progettazione 56 LE GERARCHIE OGNI ISTANZA DI UN ENTITA FIGLIO E NECESSARIAMENTE ANCHE ISTANZA DELL ENTITA PADRE UN ISTANZA DELL ENTITA PADRE PUO ESSERE ISTANZA DI UNA O PIU ENTITA FIGLIO NEL CASO DI PARTIZIONE ANCHE OGNI ISTANZA DELL ENTITA PADRE E NECESSARIAMENTE ISTANZA DI UNA E UNA SOLA ENTITA FIGLIO Fabio A. Schreiber Progettazione 57 29

30 ESEMPIO DI GERARCHIA c.f. CONSULENTE ESTERNO p, e cognome nome LEGALE INGEGNERE ECONOMISTA p, s MECCANICO MATEMATICO AERONAUTICO Fabio A. Schreiber Progettazione 58 EREDITARIETA DELLE PROPRIETA GLI ATTRIBUTI DELL ENTITA PADRE NON DEVONO ESSERE REPLICATI SULLE ENTITA FIGLIE GLI ATTRIBUTI DELL ENTITA PADRE VENGONO EREDITATI DALLE ENTITA FIGLIE E FANNO PARTE DEL SUO TIPO NON E VERO IL VICEVERSA Fabio A. Schreiber Progettazione 59 30

31 GERARCHIE ISA LA GERARCHIA ISA CONTIENE PIU INFORMAZIONE DELL ASSOCIAZIONE UNARIA RICORSIVA DIPENDENTE DIPENDENTE IMPIEGATO (0,n) DIREZIONE DIRIGENTE (0,n) dirige diretto Fabio A. Schreiber Progettazione 60 STRATEGIE DI PROGETTO TOP - DOWN BOTTOM - UP INSIDE - OUT MISTA Fabio A. Schreiber Progettazione 61 31

32 STRATEGIA TOP - DOWN SI COSTRUISCE UNO SCHEMA INIZIALE A PARTIRE DALLE SPECIFICHE PER RAFFINAMENTI SUCCESSIVI SI ARRIVA A SCHEMI INTERMEDI E QUINDI ALLO SCHEMA FINALE LA TRASFORMAZIONE PREVEDE L USO DI PRIMITIVE ELEMENTARI CHE OPERANO SUL SINGOLO CONCETTO PER DESCRIVERLO CON MAGGIORE DETTAGLIO Fabio A. Schreiber Progettazione 62 PRIMITIVE DI TRASFORMAZIONE CORSO P1 EDIZIONE DI CORSO TIPOLOGIA TIPO DI CORSO PARTECIPANTE P2 PARTECIPANTE DIPENDENTE PROFESSIONISTA Fabio A. Schreiber Progettazione 63 32

33 PRIMITIVE DI TRASFORMAZIONE CORSO CORSO DOCENZA P3 DOCENZA CORRENTE DOCENZA PASSATA DOCENTE DOCENTE CORSO STUDENTE ESAME P4 SOSTIENE ESAME RELATIVO CORSO STUDENTE Fabio A. Schreiber Progettazione 64 PRIMITIVE DI TRASFORMAZIONE CORSO P5 CORSO codice crediti data EFFETTUA P5 EFFETTUA P7 MOVIMENTO EFFETTUA MOVIMENTO EFFETTUA Fabio A. Schreiber Progettazione 65 33

34 ESEMPIO DI SVILUPPO TOP-DOWN AMMINISTR. PERSONALE DIRIGE AFFERISCE DIPARTIMENTO E PARTE TECNICO PARTECIPA COMPOSTO SEDE PROGETTO Fabio A. Schreiber Progettazione 66 ESEMPIO DI SVILUPPO TOP-DOWN AMMINISTR. PERSONALE DIRIGE DIPARTIMENTO E PARTE TECNICO PARTECIPA COMPOSTO INGEGNERE DOMICILIATO SEDE COORDINA PROGETTO Fabio A. Schreiber Progettazione 67 34

35 VANTAGGI STRATEGIA TOP-DOWN IL PROGETTISTA DESCRIVE INIZIALMENTE LO SCHEMA TRASCURANDO I DETTAGLI LE PRECISAZIONI AVVENGONO GRADUALMENTE APPROFONDENDO L ANALISI PROBLEMA NON SI ADATTA AD APPLICAZIONI MOLTO COMPLESSE POICHE E DIFFICILE AVERE SIN DALL INIZIO UNA VISIONE GLOBALE SUFFICIENTEMENTE PRECISA DI TUTTE LE PARTI DEL SISTEMA Fabio A. Schreiber Progettazione 68 STRATEGIA BOTTOM-UP LE SPECIFICHE NASCONO SUDDIVISE PER SOTTOPROGETTI DESCRIVENTI FRAMMENTI LIMITATI DELLA REALTA DA MODELLARE SI SVILUPPANO SOTTOSCHEMI SEPARATI SI FONDONO I SOTTOSCHEMI PER OTTENERE LO SCHEMA FINALE Fabio A. Schreiber Progettazione 69 35

36 STRATEGIA BOTTOM-UP VANTAGGI DIVERSI PROGETTISTI ELABORANO GLI SCHEMI PARZIALI, OGNUNO AVENDO UNA VISIONE PIU PRECISA DEL PROPRIO SETTORE SI ADATTA ANCHE AD APPLICAZIONI MOLTO COMPLESSE PROBLEMA SI POSSONO INCONTRARE CONFLITTI E DIFFICOLTA DI INTEGRAZIONE NON FACILI DA RISOLVERE Fabio A. Schreiber Progettazione 70 ALTRE STRATEGIE INSIDE-OUT VARIANTE DELLA BOTTOM-UP NELLA QUALE SI SVILUPPANO SCHEMI PARZIALI IN AGGIUNTA A SOTTOSCHEMI GIA DEFINITI PRECEDENTEMENTE E SEPARATAMENTE MISTA SI PARTE DA UNO SCHEMA SCHELETRO GENERALE LO SI SUDDIVIDE IN SOTTOSCHEMI DA DETTAGLIARE SI FONDONO I SOTTOSCHEMI IN LINEA DI MASSIMA E CONVENIENTE ADDOTTARE A POSTERIORI UNA SOLUZIONE TOP-DOWN COME DOCUMENTAZIONE Fabio A. Schreiber Progettazione 71 36

37 PRORPIETA GENERALI DI UNO SCHEMA E-R COMPLETEZZA RISPETTO ALL APPLICAZIONE CORRETTEZZA SINTATTICA SEMANTICA LEGGIBILITA GRAFICA MINIMIZZARE CURVE E INCROCI FARE IN MODO CHE IL GRAFO SIA PLANARE DISPORRE GLI ELEMENTI SU UNA GRIGLIA CONCETTUALE Fabio A. Schreiber Progettazione 72 PRORPIETA GENERALI DI UNO SCHEMA E-R MINIMALITA ASSENZA DI CICLI RIDONDANTI AUTO-ESPLICATIVITA MINIMIZZARE LA DOCUMENTAZIONE DI SUPPORTO Fabio A. Schreiber Progettazione 73 37

38 PROGETTO LOGICO Fabio A. Schreiber Progettazione 74 PROGETTO LOGICO LO SCHEMA E-R DESCRIVE IL DOMINIO APPLICATIVO AD UN CERTO LIVELLO DI ASTRAZIONE FORNISCE UNA DESCRIZIONE SINTETICA VISIVA RAPPRESENTA BUONA PARTE DELA SEMANTICA DELL APPLICAZIONE E UTILE PER SCAMBIARE INFORMAZIONI TRA I MEMBRI DELL UNITA DI PROGETTO E PER MANTENERE LA DOCUMENTAZIONE Fabio A. Schreiber Progettazione 75 38

39 PROGETTO LOGICO NON ESISTONO DBMS IN GRADO DI OPERARE DIRETTAMENTE A PARTIRE DAGLI SCHEMI E-R OCCORRE TRADURLI IN ALTRI FORMALISMI (SCHEMI LOGICI) LA TRADUZIONE PUO ESSERE FATTA IN MODO SEMIAUTOMATICO LE SCELTE ALTERNATIVE DEVONO TENER CONTO DELL EFFICIENZA DELLO SCHEMA LOGICO RISULTANTE E DELLE OPERAZIONI DA EFFETTUARE Fabio A. Schreiber Progettazione 76 PROCESSO DI PROGETTAZIONE RACCOLTA DEI REQUISITI DOMINIO APPLICATIVO PROGETTAZIONE CONCETTUALE SCHEMA CONCETTUALE (E-R) PROGETTAZIONE LOGICA SCHEMA LOGICO (SQL: DDL) DB DBMS (SQL: DDL, DML) Fabio A. Schreiber Progettazione 77 39

40 PROGETTO LOGICO SI POSSONO INDIVIDUARE ALCUNE LINEE GUIDA PER LE SCELTE DI PROGETTO CONSIDERARE LE PROPRIETA LOGICHE COMUNQUE PREVALENTI RISPETTO A CONSIDERAZIONI DI EFFICIENZA TENERE SULLA STESSA ENTITA INFORMAZIONI CHE VERRANO FREQUENTEMENTE CONSULTATE ASSIEME TENERE SU ENTITA SEPARATE INFORMAZIONI DESTINATE AD ESSERE CONSULTATE SEPARATAMENTE LIMITARE L INCIDENZA DI VALORI NULLI PER ATTRIBUTI OPZIONALI Fabio A. Schreiber Progettazione 78 FASI DEL PROGETTO LOGICO LE TRASFORMAZIONI E LE TRADUZIONI TRA LO SCHEMA E-R E LO SCHEMA LOGICO AVVENGONO PER FASI 1 - ELIMINAZIONE DELLE GERARCHIE ISA 2 - SELEZIONE DELLE CHIAVI PRIMARIE ELIMINAZIONE DELLE IDENTIFICAZIONI ESTERNE 3 - NORMALIZZAZIONE DEGLI ATTRIBUTI COMPOSTI O MULTIPLI 4 - TRADUZIONE DI ENTITA E ASSOCIAZIONI IN SCHEMI DI RELAZIONI 5 - VERIFICA DI NORMALIZZAZIONE Fabio A. Schreiber Progettazione 79 40

41 ELIMINAZIONE DELLE GERARCHIE IL MODELLO RELAZIONALE E PIATTO E NON PUO RAPPRESENTARE LE GERARCHIE CHE SONO SOSTITUITE DA ENTITA E ASSOCIAZIONI k a MANTENIMENTO DELLE ENTITA CON ASSOCIAZIONI E COLLASSO VERSO L ALTO COLLASSO VERSO IL BASSO a1 E1 E2 a2 L APPLICABILITA E LA CONVENIENZA DI CIASCUNA SOLUZIONE DIPENDONO DALLE PROPRIETA DI COPERTURA E DALLE OPERAZIONI PREVISTE Fabio A. Schreiber Progettazione 80 MANTENIMENTO DELLE ENTITA TUTTE LE ENTITA VENGONO MANTENUTE LE ENTITA FIGLIE SONO ASSOCIATE ALL ENTITA PADRE k a E (0,1) (0,1) LE ENTITA FIGLIE SONO IDENTIFICATE ESTERNAMENTE TRAMITE L ASSOCIAZIONE a1 E1 E2 a2 SOLUZIONE SEMPRE POSSIBILE INDIPENDENTEMENTE DALLA COPERTURA Fabio A. Schreiber Progettazione 81 41

42 MANTENIMENTO DELLE ENTITA cod desc cod desc PROGETTO PROGETTO (0,1) (0,1) mesi uomo PROG_SW PROG_HW (0,n) USA COMP_HW n_schede mesi uomo PROG_SW PROG_HW (0,n) USA n_sc COMP_HW Fabio A. Schreiber Progettazione 82 ELIMINAZIONE DELLE GERARCHIE IL COLLASSO VERSO L ALTO RIUNISCE TUTTE LE ENTITA FIGLIE NELL ENTITA PADRE k E a a1 a2 (0,1) (0,1) E k a a1 E1 E2 a2 selettore selettore E UN ATTRIBUTO CHE SPECIFICA SE UNA ISTANZA DI E APPARTIENE A UNA DELLE SOTTOENTITA Fabio A. Schreiber Progettazione 83 42

43 COLLASSO VERSO L ALTO FAVORISCE LE OPERAZIONI CHE CONSULTANO INSIEME GLI ATTRIBUTI DELL ENTITA PADRE E QUELLI DI UN ENTITA FIGLIA SI ACCEDE AD UNA SOLA ENTITA INVECE CHE A DUE ATTRAVERSO UN ASSOCIAZIONE GLI ATTRIBUTI OBBLIGATORI PER LE ENTITA FIGLIE DIVENTANO OPZIONALI PER L ENTITA PADRE Fabio A. Schreiber Progettazione 84 COLLASSO VERSO L ALTO COPERTURA DELL ISA TOTALE, ESCLUSIVA selettore HA n VALORI QUANTE SONO LE SOTTOENTITA PARZIALE ESCLUSIVA selettore HA n+1 VALORI PER POTER SEGNALARE LE ISTANZE CHE NON APPARTENGONO AD ALCUNA SOTTOENTITA (0,1) a1 (0,1) a2 selettore E k a Fabio A. Schreiber Progettazione 85 43

44 COLLASSO VERSO L ALTO COPERTURA DELL ISA SOVRAPPOSTA, TOTALE OCCORRONO TANTI selettori BOOLEANI QUANTE SONO LE SOTTOENTITA sel_i E vero SE L ISTANZA APPARTIENE ALLA i-esima SOTTOENTITA sel_i (0,n) E k a SOVRAPPOSTA, PARZIALE I selettori POSSONO ESSERE ANCHE TUTTI falsi LE ASSOCIAZIONI CONNESSE ALLE SOTTTOENTITA SI TRASPORTANO SU E LE EVENTUALI CARDINALITA MINIME DIVENTANO 0 Fabio A. Schreiber Progettazione 86 COLLASSO VERSO L ALTO tesi STUDENTE p, e matr cognome stage (0,1) tesi STUDENTE stage (0,1) matr cognome selettore LAUREANDO DIPLOMANDO (0,1) (0,1) RELATORE AZIENDA RELATORE AZIENDA cod_r denomin. cod_r denomin. IL DOMINIO DI selettore E (l, d, null) Fabio A. Schreiber Progettazione 87 44

45 COLLASSO VERSO IL BASSO SI ELIMINA L ENTITA PADRE TRASFERENDONE GLI ATTRIBUTI SU TUTTE LE ENTITA FIGLIE UN ASSOCIAZIONE DEL PADRE E REPLICATA TANTE VOLTE QUANTE SONO LE ENTITA FIGLIE E CONVENIENTE QUANDO CI SIANO MOLTI ATTRIBUTI DI SPECIALIZZAZIONE VERSO L ALTO SI AVREBBE UN ECCESSO DI VALORI NULLI FAVORISCE LE OPERAZIONI NELLE QUALI SI ACCEDE SEPARATAMENTE ALLE ENTITA FIGLIE Fabio A. Schreiber Progettazione 88 COLLASSO VERSO IL BASSO LIMITI DI APPLICABILITA k a COPERTURA PARZIALE NON SI PUO FARE NON SI SAPREBBE DOVE METTERE LE ENTITA CHE NON APPARTENGONO A E1 O A E2 a1 E1 E E2 a2 COPERTURA SOVRAPPOSTA INTRODUCE RIDONDANZA GLI ATTRIBUTI DI E VENGONO RIPETUTI PER TUTTE LE ISTANZE CHE APPARTENGONO A PIU SOTTOENTITA a1 E1 E2 k a k a a2 Fabio A. Schreiber Progettazione 89 45

46 COLLASSO VERSO IL BASSO cf cognome DIPENDENTE t,e (0,1) ISCRITTO SINDACATO (0,1) OPERAIO IMPIEGATO DIRIGENTE DIRIGE mansione qualifica classe Fabio A. Schreiber Progettazione 90 COLLASSO VERSO IL BASSO (0,n) SINDACATO (0,n) (0,n) ISCRITTO ISCRITTO ISCRITTO (0,1) (0,1) (0,1) OPERAIO IMPIEGATO DIRIGENTE (0,1) DIRIGE (0,n) mansione cognome qualifica cognome classe cognome cf cf (0,1) cf (0,1) DIRIGE (0,n) DIRIGE (0,n) Fabio A. Schreiber Progettazione 91 46

47 SCELTA DELLA CHIAVE PRIMARIA TRA I POSSIBILI IDENTIFICATORI DI UN ENTITA E NECESSARIO SCEGLIERE UNA CHIAVE PRIMARIA IL DBMS DEVE POTER GARANTIRNE L UNICITA DEI VALORI CRITERI EURISTICI DI SCELTA SCEGLIERE L IDENTIFICATORE USATO PIU FREQUENTEMENTE PER ACCEDERE ALL ENTITA PREFERIRE CHIAVI SEMPLICI A CHIAVI COMPOSTE PREFERIRE CHIAVI INTERNE A CHIAVI ESTERNE Fabio A. Schreiber Progettazione 92 IDENTIFICATORI ESTERNI UNA COMPONENTE DI IDENTIFICAZIONE ESTERNA DI UNA ENTITA E2 DA UNA ENTITA E1 ATTRAVERSO UNA RELAZIONE R COMPORTA IL TRASPORTO DELLA CHIAVE PRIMARIA DI E1 SU E2 codice STABILIMENTO denominaz LAVORA matr DIPENDENTE cognome (E1) (R) (E2) Fabio A. Schreiber Progettazione 93 47

48 IDENTIFICATORI ESTERNI L ASSOCIAZIONE VIENE RAPPRESENTATA ATTRAVERSO LA CHIAVE E PUO ESSERE ELIMINATA codice denominaz STABILIMENTO (E1) LA CHIAVE TRASPORTATA E CHIAVE ESTERNA CON PIU IDENTIFICAZIONI IN CASCATA E NECESSARIO INIZIARE LA PROPAGAZIONE DALL ENTITA CHE NON HA IDENTIFICAZIONI ESTERNE matr cognome codice DIPENDENTE (E2) Fabio A. Schreiber Progettazione 94 ATTRIBUTI COMPOSTI O RIPETUTI IL MODELLO RELAZIONALE AMMETTE SOLO ATTRIBUTI ATOMICI ELIMINAZIONE DEGLI ATTRIBUTI COMPOSTI O RIPETUTI cf cognome telefono DIPENDENTE (0,n) indirizzo via num. città numero descrizione DUE POSSIBILI SOLUZIONI Fabio A. Schreiber Progettazione 95 48

49 ATTRIBUTI COMPOSTI PRIMA SOLUZIONE ELIMINARE L ATTRIBUTO COMPOSTO E CONSIDERARE I SUOI COMPONENTI COME ATTRIBUTI SEMPLICI SI PERDE LA VISIONE UNITARIA SI MANTIENE L ARTICOLAZIONE DEI COMPONENTI cf cognome DIPENDENTE telefono (0,n) numero descrizione via num. città Fabio A. Schreiber Progettazione 96 ATTRIBUTI COMPOSTI SECONDA SOLUZIONE ELIMINARE I COMPONENTI E CONSIDERARE L ATTRIBUTO COME SEMPLICE LO SCHEMA E SEMPLIFICATO SI PERDE PARTE DEI DETTAGLI L INDIRIZZO DIVENTA UNA STRINGA MONOLITICA cf cognome DIPENDENTE telefono (0,n) numero descrizione indirizzo Fabio A. Schreiber Progettazione 97 49

50 ATTRIBUTI RIPETUTI SI CREA UNA NUOVA ENTITA CHE CONTIENE L ATTRIBUTO LA NUOVA ENTITA E COLLEGATA A QUELLA ORIGINARIA UN VALORE PUO COMPARIRE UNA SOLA VOLTA NELLA RIPETIZIONE UN VALORE PUO COMPARIRE PIU DI UNA VOLTA NELLA RIPETIZIONE Fabio A. Schreiber Progettazione 98 ATTRIBUTI RIPETUTI UN VALORE PUO COMPARIRE UNA SOLA VOLTA NELLA RIPETIZIONE LA NUOVA ENTITA HA UN IDENTIFICATORE COMPOSTO DALLA CHIAVE DELL ENTITA ORIGINARIA PIU L ATTRIBUTO RIPETUTO cf cognome DIPENDENTE TELEFONO cf numero indirizzo descrizione Fabio A. Schreiber Progettazione 99 50

51 ATTRIBUTI RIPETUTI UN VALORE PUO COMPARIRE PIU DI UNA VOLTA NELLA RIPETIZIONE LA NUOVA ENTITA HA LO STESSO IDENTIFICATORE DI QUELLA ORIGINARIA PIU UN VALORE SINTETICO data casa ospiti PARTITA... marcatori (0,n) data casa ospiti { PARTITA... data casa n_ordine MARCATURE marcatore Fabio A. Schreiber Progettazione 100 TRADUZIONE STANDARD OGNI ENTITA E TRADOTTA CON UNA RELAZIONE (TABELLA) CON GLI STESSI ATTRIBUTI CON LA STESSA CHIAVE OGNI ASSOCIAZIONE E TRADOTTA CON UNA RELAZIONE (TABELLA) CON GLI STESSI ATTRIBUTI SI AGGIUNGONO GLI IDENTIFICATORI DI TUTTE LE ENTITA COLLEGATE LA CHIAVE E COMPOSTA DALLE CHIAVI DELLE ENTITA COLLEGATE (POTREBBE ESSERE SUPERCHIAVE) Fabio A. Schreiber Progettazione

52 TRADUZIONE STANDARD k1 a1 b1 E1 E1 (k1, a1, b1, ) ar R br E2 (k2, a2, b2, ) R (k1, k2, ar, br,...) E2 k2 a2 b2 Fabio A. Schreiber Progettazione 102 cognome matr nome TRADUZIONE STANDARD anno STUDENTE PIANO_S CORSO CREATE TABLE STUDENTE (matr NOT NULL, nome, PRIMARY KEY (matr)) CREATE TABLE CORSO (codice NOT NULL, denom, PRIMARY KEY (codice)) CREATE TABLE PIANO_S (matr NOT NULL, codice NOT NULL, anno, PRIMARY KEY (matr, codice) FOREIGN KEY (matr) REFERENCES STUDENTE FOREIGN KEY (codice) REFERENCES CORSO); cod denom Fabio A. Schreiber Progettazione

53 ALTRE TRADUZIONI LA TRADUZIONE STANDARD E SEMPRE POSSIBILE E L UNICA PER LE ASSOCIAZIONI (n:m) ALTRE FORME DI TRADUZIONE SONO POSSIBILI PER LE ASSOCIAZIONI (1.1) E (1:n) LE ALTRE FORME DI TRADUZIONE FONDONO IN UNA STESSA RELAZIONE ENTITA E ASSOCIAZIONI Fabio A. Schreiber Progettazione 104 ALTRE TRADUZIONI DANNO ORIGINE AD UN MINOR NUMERO DI RELAZIONI E QUINDI AD UNO SCHEMA PIU SEMPLICE RICHIEDONO UN MINOR NUMERO DI JOIN PER LA NAVIGAZIONE ATTRAVERSO UNA ASSOCIAZIONE PENALIZZANO LE OPERAZIONI CHE CONSULTANO GLI ATTRIBUTI DI UNA SOLA ENTITA CHE E STATA FUSA Fabio A. Schreiber Progettazione

54 ASSOCIAZIONE BINARIA 1:n SE E1 PARTECIPA CON CARDINALITA PUO ESSERE FUSA CON L ASSOCIAZIONE E1 (k1, a1, b1, k2, ar, br) E2 (k2, a2, b2) SE E1 PARTECIPA CON CARDINALITA (0,1) QUESTA SOLUZIONE HA VALORI NULLI IN k2, ar, br PER LE ISTANZE DI E1 CHE NON PARTECIPANO ALL ASSOCIAZIONE Fabio A. Schreiber Progettazione 106 ASSOCIAZIONE BINARIA 1:n k1 a1 b1 E1 k1 a1 b1 E1 ar R br {k2 ar br E2 E2 k2 a2 b2 k2 a2 b2 Fabio A. Schreiber Progettazione

55 ASSOCIAZIONE BINARIA 1:n IN QUESTO CASO LA PARTECIPAZIONE DI E1 E (0,1) O (0,n) AD UN DATO VALORE DI k1 CORRISPONDE UNO E UNO SOLO VALORE DI k2 NON E VERO IL CONTRARIO SI PUO QUINDI DIRE CHE k1 IMPLICA k2 (DIPENDENZA FUNZIONALE DA k1 A k2) SE SI UTILIZZA IL MODELLO STANDARD A TRE RELAZIONI LA CHIAVE DELLA RELAZIONE CHE TRADUCE L ASSOCIAZIONE SI RIDUCE A k1 E1 (k1, a1, b1) E2 (k2, a2, b2) R (k1, k2, ar, br) Fabio A. Schreiber Progettazione 108 ASSOCIAZIONE BINARIA 1:n sconto telefono nome p_iva num CLIENTE (0,n) INVIA ORDINE data telefono nome p_iva CLIENTE sconto num ORDINE data p_iva CREATE TABLE CLIENTE (p_iva NOT NULL, nome, telefono, PRIMARY KEY (p_iva)) CREATE TABLE ORDINE (numero NOT NULL, data, p_iva NOT NULL, SCONTO, PRIMARY KEY (numero) FOREIGN KEY (p_iva) REFERENCES CLIENTE); Fabio A. Schreiber Progettazione

56 ASSOCIAZIONE BINARIA 1:1 nome_c abitanti data COMUNE AMMINI STRA SINDACO SI TRADUCE CON UNA SOLA RELAZIONE CHE COMPRENDE TUTTI GLI ATTRIBUTI CREATE TABLE AMMINISTRAZIONE (nome_c NOT NULL, abitanti, nome_s NOT NULL UNIQUE, partito, data PRIMARY KEY (nome_c)); nome_s partito Fabio A. Schreiber Progettazione 110 ASSOCIAZIONE BINARIA 1:1 CARDINALITA MINIME ENTRAMBE 1 VERRA SCELTA COME CHIAVE PRIMARIA LA PIU SIGNIFICATIVA TRA k1 E k2 CARDINALITA DI E2 E (0,1) E QUELLA DI E1 E LA CHIAVE PRIMARIA SARA k2 CI SARANNO VALORI NULLI DI k1 IN CORRISPONDENZA DELLE ISTANZE DI E2 CHE NON SI ASSOCIANO CARDINALITA (0,1) PER ENTRAMBE BISOGNA MANTENERE DUE RELAZIONI DISTINTE POICHE ALTRIMENTI CI SAREBBERO VALORI NULLI SULLA CHIAVE Fabio A. Schreiber Progettazione

57 ASSOCIAZIONE BINARIA 1:1 TRADUZIONE CON DUE RELAZIONI L ASSOCIAZIONE PUO ESSERE COMPATTATA CON L ENTITA CHE PARTECIPA OBBLIGATORIAMENTE SE ENTRAMBE SONO OBBLIGATORIE SI SCEGLIE QUELLA PIU SIGNIFICATIVA TRADUZIONE CON TRE RELAZIONI LA CHIAVE DELLA RELAZIONE CHE TRADUCE L ASSOCIAZIONE PUO ESSERE INDIFFERENTEMENTE k1 O k2 (NON CI SONO PROBLEMI DI VALORI NULLI) Fabio A. Schreiber Progettazione 112 AUTO-ASSOCIAZIONE (n:m) VIENE TRADOTTA CON UNA RELAZIONE PER L ENTITA UNA RELAZIONE PER L ASSOCIAZIONE QUESTA CONTIENE DUE VOLTE LA CHIAVE DELL ENTITA E NECESSARIO DIVERSIFICARE I NOMI DEI DUE ATTRIBUTI PER EVITARE L OMONIMIA Fabio A. Schreiber Progettazione

58 AUTO-ASSOCIAZIONE (n:m) nome STATO (0,n) CONFINA area (0,n) CREATE TABLE STATO (nome NOT NULL, area PRIMARY KEY (nome)) CREATE TABLE CONFINA (stato_a NOT NULL, stato_b NOT NULL, PRIMARY KEY (stato_a, stato_b) FOREIGN KEY (stato_a) REFERENCES STATO FOREIGN KEY (stato_b) REFERENCES STATO); Fabio A. Schreiber Progettazione 114 AUTO-ASSOCIAZIONE (1:n) VIENE TRADOTTA CON UNA SOLA RELAZIONE L ATTRIBUTO CHIAVE VIENE RIPETUTO DUE VOLTE UNA VOLTA COME CHIAVE LA SECONDA VOLTA COME RIFERIMENTO ALL ISTANZA CONNESSA I DUE NOMI VENGONO DIVERSIFICATI Fabio A. Schreiber Progettazione

59 AUTO-ASSOCIAZIONE (1:n) matr capo nome DIPENDENTE (0,1) (0,n) CAPO_DI CREATE TABLE DIPENDENTE (matr NOT NULL, nome, capo, PRIMARY KEY (matr) FOREIGN KEY (capo) REFERENCES DIPENDENTE); Fabio A. Schreiber Progettazione 116 AUTO-ASSOCIAZIONE (1:1) NEL CASO DI AUTO-ASSOCIAZIONE (1:1) IL RUOLO ASSUME MAGGIORE IMPORTANZA SU ENTRAMBI I RAMI E BENE SPECIFICARE IL RUOLO CONVIENE LA SOLUZIONE A DUE RELAZIONI PER EVITARE RIDONDANZE VINCOLI ECCESSO DI VALORI NULLI Fabio A. Schreiber Progettazione

60 AUTO-ASSOCIAZIONE (1:1) matr nome marito DIPENDENTE (0,1) moglie (0,1) SPOSATI CREATE TABLE DIPENDENTE (matr NOT NULL, nome, capo, PRIMARY KEY (matr)) CREATE TABLE SPOSATI (moglie NOT NULL, marito NOT NULL PRIMARY KEY (moglie) FOREIGN KEY (moglie) REFERENCES DIPENDENTE FOREIGN KEY (marito) REFERENCES DIPENDENTE); Fabio A. Schreiber Progettazione 118 ASSOCIAZIONE n-aria SEGUE LA TRADUZIONE STANDARD NELLA RELAZIONE CHE TRADUCE L ASSOCIAZIONE TALVOLTA LA CHIAVE OTTENUTA COMPONENDO LE CHIAVI DI TUTTE LE ENTITA PARTECIPANTI E UNA SUPERCHIAVE (LA CHIAVE VERA E UN SUO SOTTOINSIEME) Fabio A. Schreiber Progettazione

61 ASSOCIAZIONE n-aria prjn descrizione PROGETTO cod_p qtà PARTE CONSEGNA DATA nome tipo MAGAZZINO cod_m nome distanza Fabio A. Schreiber Progettazione 120 ASSOCIAZIONE n-aria CREATE TABLE PROGETTO (prj... NOT NULL, descrizione, PRIMARY KEY (prj)) CREATE TABLE PARTE (cod_p... NOT NULL, nome, tipo, PRIMARY KEY (cod_p)) CREATE TABLE MAGAZZINO (cod_m... NOT NULL, nome, distanza, PRIMARY KEY (cod_m)) CREATE TABLE CONSEGNA (prj... NOT NULL, cod_p NOT NULL, cod_m NOT NULL, data NOT NULL, qtà... PRIMARY KEY (prj, cod_p, cod_m, data) FOREIGN KEY (prj) REFERENCES PROGETTO FOREIGN KEY (cod_p) REFERENCES PARTE FOREIGN KEY (cod_m) REFERENCES MAGAZZINO); NON C E UNA RELAZIONE PER DATA IN QUANTO E UN ENTITA FITTIZIA USATA PER GARANTIRE L UNICITA DELLE CONSEGNE (COMPARE NELLA CHIAVE) Fabio A. Schreiber Progettazione

62 ASSOCIAZIONE n-aria PUO SUCCEDERE CHE NEL CORSO DEL PROGETTO CI SI ACCORGA CHE UNA PARTE PUO ESISTERE IN UN SOLO MAGAZZINO IN TAL CASO cod_p IMPLICA cod_m E QUEST ULTIMO DIVENTA RIDONDANTE NELLA CHIAVE DELLA RELAZIONE. CREATE TABLE CONSEGNA (prj... NOT NULL, cod_p NOT NULL, cod_m NOT NULL, data NOT NULL, qtà PRIMARY KEY (prj, cod_p, data) FOREIGN KEY (prj) REFERENCES PROGETTO FOREIGN KEY (cod_p) REFERENCES PARTE); Fabio A. Schreiber Progettazione 122 ASSOCIAZIONE n-aria NELL ESEMPIO PRECEDENTE LA DIPENDENZA TRA MAGAZZINO E PARTE NON ERA STATA ESPRESSA SULLA RELAZIONE n-aria SE IL PROGETTO CONCETTUALE E BEN FATTO CASI DEL GENERE NON SONO FREQUENTI DIVERSO E IL CASO IN CUI SI VOGLIANO ESPRIMERE DEI VINCOLI CHE RICHIEDEREBBERO UN USO COMPLICATO DI ENTITA DI COLLEGAMENTO CON IDENTIFICAZIONE ESTERNA LA VERIFICA DELLE CHIAVI DELLE RELAZIONI E QUINDI IMPORTANTE E LA MATERIA E OGGETTO DELLA TEORIA DELLA NORMALIZZAZIONE Fabio A. Schreiber Progettazione

63 ERRORI DI PROGETTAZIONE INSERIMENTO DI ELEMENTI RIDONDANTI SPRECO DI MEMORIA VIOLAZIONE DELL INTEGRITA DI UNA RELAZIONE A SEGUITO DI AGGIORNAMENTO DI UNA TUPLA (ANOMALIA DA AGGIORNAMENTO) IMPOSSIBILITA DI RAPPRESENTARE ALCUNE INFORMAZIONI UTILIZZO SELVAGGIO DI VALORI NULLI (ANOMALIE DA INSERIMENTO/CANCELLAZIONE) PERDITA DI INFORMAZIONI IMPOSSIBILITA DI ESEGUIRE CORRETTAMENTE I JOIN (NASCITA DI TUPLE SPURIE) Fabio A. Schreiber Progettazione 124 ELEMENTI RIDONDANTI ESEMPIO 1 MUTUO (numero,contraente,valore,filiale,patrimonio,città) PATRIMONIO E CITTA SONO ATTRIBUTI COLLEGATI A FILIALE CONTRAENTE E VALORE SONO ATTRIBUTI COLLLEGATI A NUMERO PER OGNI MUTUO STIPULATO IN UNA FILIALE BISOGNA RIPETERE I VALORI DI PATRIMONIO E CITTA OGNI VOLTA CHE CAMBIA IL VALORE DEL PATRIMONIO (ABBASTANZA SPESSO) BISOGNA CAMBIARLO IN TUTTE LE TUPLE DELLA STESSA FILIALE ESEMPIO 2 BARCA (matr,nome,anno,modello,lunghezza,stazza,armatore) LUNGHEZZA E STAZZA SONO ATTRIBUTI COLLEGATI A MODELLO PERO OGNI BARCA DELLO STESSO MODELLO BISOGNA RIPETERE I VALORI DI LUNGHEZZA E STAZZA Fabio A. Schreiber Progettazione

64 RAPPRESENTAZIONE DI INFORMAZIONI ESEMPIO RAPPORTO (correntista,filiale,num_conto,saldo,num_mutuo, valore) IN QUESTO SCHEMA NON E POSSIBILE RAPPRESENTARE CORRENTISTI CHE NON ABBIANO CONTRATTO MUTUI SE NON INTRODUCENDO VALORI NULLI PER num_mutuo E valore Fabio A. Schreiber Progettazione 126 PERDITA DI INFORMAZIONI ESEMPIO VALORE_PRESTITO (correntista,valore) MUTUO (numero,filiale,valore) NON E POSSIBILE RISALIRE CORRETTAMENTE AL NUMERO DEL MUTUO E ALLA FILIALE PRESSO LA QUALE IL CORRENTISTA LO DETIENE IL valore DIPENDE DAL CORRENTISTA E DIPENDE DAL NUMERO DEL MUTUO, MA CI POSSONO ESSERE MOLTI CORRENTISTI CHE HANNO MUTUI CON LO STESSO VALORE NEL FARE IL JOIN VENGONO GENERATE TUTTE LE POSSIBILI TUPLE CHE SONO LA COMBINAZIONE DI MUTUI E CORRENTISTI CHE PRESENTANO LO STESSO valore MOLTE DI QUESTE TUPLE NON HANNO UNA CORRISPONDENZA CON LA REALTA, MA NON E POSSIBILE INDIVIDUARLE Fabio A. Schreiber Progettazione

65 DIPENDENZE FUNZIONALI SONO UNA GENERALIZZAZIONE DEL CONCETTO DI CHIAVE PERMETTONO DI ESPRIMERE UN INSIEME DI VINCOLI TRA GLI ATTRIBUTI IN UNA BASE DI DATI PORTANO ALLA DEFINIZIONE DI ALCUNE FORME NORMALI CHE GARANTISCONO LA BONTA DEL PROGETTO Fabio A. Schreiber Progettazione 128 DIPENDENZE FUNZIONALI SIA R UNO SCHEMA DI RELAZIONE E SIANO V E W DUE SOTTOINSIEMI (STRINGHE) DI ATTRIBUTI DI R V R ; W R SI DICE CHE V W (V DETERMINA W O W DIPENDE FUNZIONALMENTE DA V) SE, PER OGNI COPPIA DI TUPLE t 1, t 2 APPARTENENTI ALLA RELAZIONE CON SCHEMA R, t 1 [V]=t 2 [V] t 1 [W]=t 2 [W] Fabio A. Schreiber Progettazione

66 DIPENDENZE FUNZIONALI ESEMPI IN MUTUO numero,filiale contraente,valore filiale patrimonio,città IN BARCA matr nome,anno,armatore modello lunghezza,stazza IN RAPPORTO num_conto correntista,saldo num_mutuo correntista,valore IN VALORE_PRESTITO correntista valore Fabio A. Schreiber Progettazione 130 FORME NORMALI PERMETTONO AL PROGETTISTA DI ANALIZZARE GLI SCHEMI DI RELAZIONE BASANDOSI SULLE LORO CHIAVI E SULLE DIPENDENZE FUNZIONALI TRA GLI ATTRIBUTI ESEGUIRE DEI TEST PER VERIFICARE L APPARTENENZA DI UNA RELAZIONE AD UNA FORMA NORMALE SE IL TEST FALLISCE, LA RELAZIONE DEVE ESSERE DECOMPOSTA IN PIU RELAZIONI CHE INDIVIDUALMENTE LO SODDISFANO Fabio A. Schreiber Progettazione

67 FORME NORMALI APPLICANDOSI A SINGOLE RELAZIONI, LE FORME NORMALI DA SOLE NON GARANTISCONO DI EVITARE TUTTE LE ANOMALIE E NECCESSARIO QUINDI VERIFICARE ANCHE LA PROPRIETA DI POTER ESEGUIRE JOIN SENZA PERDITA GLI ATTRIBUTI SUI QUALI VIENE ESEGUITO IL JOIN DEVONO ESSERE CHIAVI O CHIAVI ESTERNE LA PROPRIETA DI CONSERVAZIONE DELLE DIPENDENZE FUNZIONALI (EVITA LE ANOMALIE DI INSERIMENTO/ CANCELLAZIONE) OGNI DIPENDENZA FUNZIONALE DEVE ESSERE PRESENTE IN ALMENO UNA RELAZIONE Fabio A. Schreiber Progettazione 132 FORME NORMALI: 1NF I DOMINI DEGLI ATTRIBUTI DEVONO COMPRENDERE SOLAMENTE VALORI ATOMICI (SEMPLICI ED INDIVISIBILI) OGNI VALORE DI UN ATTRIBUTO DEVE ESSERE SINGOLO ELIMINA LA POSSIBILITA DI ANNIDARE RELAZIONI O TUPLE ENTRO ALTRE RELAZIONI VIENE CONSIDERATA PARTE DELLA DEFINIZIONE STESSA DI RELAZIONE Fabio A. Schreiber Progettazione

68 FORME NORMALI: 2NF GLI ATTRIBUTI CHE NON APPARTENGONO ALLA CHIAVE DEVONO DIPENDERE COMPLETAMENTE DALLA CHIAVE QUANDO LA CHIAVE E FORMATA DA PIU ATTRIBUTI E VIETATO CHE CI SIANO DIPENDENZE TRA SOLO ALCUNI ATTRIBUTI DELLA CHIAVE E ALTRI ATTRIBUTI DELLO SCHEMA MUTUO (numero,contraente,valore,filiale,patrimonio,città) NON E IN 2NF PERCHE LA CHIAVE E DATA DALLA COPPIA numero,filiale MA patrimonio,città DIPENDONO SOLO DA filiale E NON DA numero Fabio A. Schreiber Progettazione 134 FORME NORMALI: 3NF OGNI ATTRIBUTO NON APPARTENENTE ALLA CHIAVE DIPENDE FUNZIONALMENTE DA OGNI CHIAVE NON DIPENDE TRANSITIVAMENTE DA ALCUNA CHIAVE BARCA (matr,nome,anno,modello,lunghezza,stazza,armatore) NON E IN 3NF PERCHE modello NON FA PARTE DELLA CHIAVE, MA VALE LA DIPENDENZA modello lunghezza,stazza Fabio A. Schreiber Progettazione

69 ESEMPIO DI NORMALIZZAZIONE LOTTI (id_propr,regione,#lotto,superficie,prezzo,aliq_fisc) LOTTI_1 (id_propr,regione,#lotto,superficie,prezzo) 1NF LOTTI_2 (regione,aliq_fisc) LOTTI_1A (id_propr,regione,#lotto,superficie) 2NF 3NF LOTTI_1B (superficie,prezzo) Fabio A. Schreiber Progettazione 136 FORME NORMALI ESISTONO ALTRE FORME NORMALI, TRA LE QUALI LA PIU RILEVANTE E LA FN DI BOYCE- CODD (BCNF) LE ALTRE DERIVANO DA CONSIDERAZIONI TEORICHE, MA HANNO SCARSA IMPORTANZA PRATICA LA TEORIA DELLE DIPENDENZE FUNZIONALI E DELLA NORMALIZZAZIONE COSTITUISCE UN CAPITOLO IMPORTANTE DELLA TEORIA DELLE BASI DI DATI, PER LA QUALE SI RIMANDA AL PROSSIMO CICLO! Fabio A. Schreiber Progettazione

GENERALIZZAZIONE E SPECIALIZZAZIONE ISA 1

GENERALIZZAZIONE E SPECIALIZZAZIONE ISA 1 GENERALIZZAZIONE E SPECIALIZZAZIONE ISA 1 Le gerarchie spesso nella analisi di un settore aziendale può risultare che più entità risultino simili o casi particolari l una dell altra, derivanti da viste

Dettagli

La Progettazione Concettuale

La Progettazione Concettuale La Progettazione Concettuale Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica CorsodiBasidiDati Anno Accademico 2006/2007 docente: ing. Corrado Aaron Visaggio

Dettagli

Informatica (Basi di Dati)

Informatica (Basi di Dati) Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.

Dettagli

Progettazione concettuale

Progettazione concettuale Progettazione concettuale 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

Dettagli

BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI

BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI BASI DI DATI DIPENDENZE FUNZIONALI E FORME NORMALI Prof. Fabio A. Schreiber Dipartimento di Elettronica e Informazione Politecnico di Milano ERRORI DI PROGETTAZIONE INSERIMENTO DI ELEMENTI RIDONDANTI SPRECO

Dettagli

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS

Basi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)

Dettagli

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione

SISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi

Dettagli

LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1

LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1 LE ASSOCIAZIONI (parte 1) le associazioni parte 1 1 tipo della chiave La chiave di un entità può essere composta albergo località stabilimento nome località hotel_id nome provincia loc_id nome società

Dettagli

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati

Basi di dati. Il Modello Relazionale dei Dati. K. Donno - Il Modello Relazionale dei Dati Basi di dati Il Modello Relazionale dei Dati Proposto da E. Codd nel 1970 per favorire l indipendenza dei dati Disponibile come modello logico in DBMS reali nel 1981 (non è facile realizzare l indipendenza

Dettagli

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

Basi di Dati. Progettazione del Modello ER. K. Donno - Progettazione del Modello ER Basi di Dati Progettazione del Modello ER Dai requisiti allo schema ER Entità, relazioni e attributi non sono fatti assoluti dipendono dal contesto applicativo Nella pratica si fa spesso uso di una strategia

Dettagli

MODELLO RELAZIONALE. Introduzione

MODELLO RELAZIONALE. Introduzione MODELLO RELAZIONALE Introduzione E' stato proposto agli inizi degli anni 70 da Codd finalizzato alla realizzazione dell indipendenza dei dati, unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1]

Progettazione di basi di dati. Progettazione di basi di dati. Ciclo di vita dei sistemi informativi. Fasi del ciclo di vita [1] Progettazione di basi di dati Progettazione di basi di dati Requisiti progetto Base di dati Struttura Caratteristiche Contenuto Metodologia in 3 fasi Progettazione concettuale Progettazione logica Progettazione

Dettagli

Normalizzazione. Normalizzazione. Normalizzazione e modello ER. Esempio. Normalizzazione

Normalizzazione. Normalizzazione. Normalizzazione e modello ER. Esempio. Normalizzazione Normalizzazione Normalizzazione Introduzione Forma normale di Boyce Codd Decomposizione in forma normale Normalizzazione Introduzione La normalizzazione è un procedimento che, a partire da uno schema relazionale

Dettagli

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni

Cardinalità e identificatori. Informatica. Generalizzazioni. Generalizzazioni. Generalizzazioni. Generalizzazioni e identificatori Codice (0,1) (1,1) Dirige Informatica Lezione 8 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Cognome

Dettagli

Rappresentazione grafica di entità e attributi

Rappresentazione grafica di entità e attributi PROGETTAZIONE CONCETTUALE La progettazione concettuale, ha il compito di costruire e definire una rappresentazione corretta e completa della realtà di interesse, e il prodotto di tale attività, è lo schema

Dettagli

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica.

Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. Progettazione logica Lo schema concettuale risultante dalla progettazione concettuale è l input alla fase di progettazione logica. La progettazione logica è basata su un particolare modello logico dei

Dettagli

Il Modello Relazionale

Il Modello Relazionale Il Modello Relazionale Il modello relazionale 1 Il modello relazionale Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981

Dettagli

Lezione 2. Il modello entità relazione

Lezione 2. Il modello entità relazione Lezione 2 Il modello entità relazione Pag.1 Introduzione alla progettazione delle basi di dati 1. Analisi dei requisiti Quali sono le entità e le relazioni dell organizzazione? Quali informazioni su queste

Dettagli

Progettazione di Basi di Dati

Progettazione di Basi di Dati Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello

Dettagli

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: Il modello relazionale I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: 1. forniscono sistemi semplici ed efficienti per rappresentare

Dettagli

MODELLO E/R. Modellazione dei dati

MODELLO E/R. Modellazione dei dati MODELLO E/R Maria Mirto Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata, individuandone gli elementi caratterizzanti e i legami intercorrenti

Dettagli

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro 802749

Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006. Esercizi entità relazione risolti. a cura di Angela Campagnaro 802749 Corso di Sistemi di Elaborazione delle Informazioni I Anno 2005/2006 Esercizi entità relazione risolti a cura di Angela Campagnaro 802749 Indice: Esercizio 1: Un insieme di officine 1.1 Testo esercizio.3

Dettagli

Progettazione base dati relazionale

Progettazione base dati relazionale Progettazione base dati relazionale Prof. Luca Bolognini E-Mail:luca.bolognini@aliceposta.it Progettare una base di dati Lo scopo della progettazione è quello di definire lo schema della base di dati e

Dettagli

Progettazione logica relazionale (1/2)

Progettazione logica relazionale (1/2) Progettazione di basi di dati (1/2) Introduzione Ristrutturazione dello schema ER Eliminazione delle gerarchie Partizionamento di concetti Eliminazione degli attributi multivalore Eliminazione degli attributi

Dettagli

Modello dei Dati ENTITÀ-RELAZIONE (ENTITY-RELATIONSHIP) é l insieme di concetti, simboli, regole che useremo per rappresentare il modello concettuale

Modello dei Dati ENTITÀ-RELAZIONE (ENTITY-RELATIONSHIP) é l insieme di concetti, simboli, regole che useremo per rappresentare il modello concettuale Modello dei Dati E-R ENTITÀ-RELAZIONE O (ENTITY-RELATIONSHIP) é l insieme di concetti, simboli, regole che useremo per rappresentare il modello concettuale R.Gori - G.Leoni Modello dei Dati Entità-Relazione

Dettagli

Vincoli di integrità

Vincoli di integrità Vincoli di integrità Non tutte le istanze di basi di dati sintatticamente corrette rappresentano informazioni plausibili per l applicazione di interesse Studenti Matricola Nome Nascita 276545 Rossi 23-04-72?

Dettagli

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino

Basi di dati Progettazione logica. Elena Baralis Politecnico di Torino Progettazione logica Progettazione logica Richiede di scegliere il modello dei dati!modello relazionale Obiettivo: definizione di uno schema logico relazionale corrispondente allo schema ER di partenza

Dettagli

BASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA

BASE DI DATI: sicurezza. Informatica febbraio 2015 5ASA BASE DI DATI: sicurezza Informatica febbraio 2015 5ASA Argomenti Privatezza o riservatezza Vincoli di integrità logica della base di dati intrarelazionali interrelazionali Principio generale sulla sicurezza

Dettagli

Prova scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia

Prova scritta del corso di Basi di dati attive 17 Dicembre 1999. Agenzia Prova scritta del corso di Basi di dati attive 17 Dicembre 1999 Si desidera automatizzare la gestione dei banchetti organizzati da un agenzia di pubbliche relazioni. Le specifiche del sistema informativo,

Dettagli

Basi di dati. Le funzionalità del sistema non vanno però ignorate

Basi di dati. Le funzionalità del sistema non vanno però ignorate Basi di dati La progettazione di una base di dati richiede di focalizzare lo sforzo su analisi, progettazione e implementazione della struttura con cui sono organizzati i dati (modelli di dati) Le funzionalità

Dettagli

Introduzione alla teoria dei database relazionali. Come progettare un database

Introduzione alla teoria dei database relazionali. Come progettare un database Introduzione alla teoria dei database relazionali Come progettare un database La struttura delle relazioni Dopo la prima fase di individuazione concettuale delle entità e degli attributi è necessario passare

Dettagli

Progettazione Logica. Progettazione Logica

Progettazione Logica. Progettazione Logica Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Tabelle per ogni concetto Docente: Cesare Colombo CEFRIEL colombo@cefriel.it http://www.cefriel.it Passaggio al modello logico (1)

Dettagli

Informatica Industriale Modello funzionale: Informazione Progettazione concettuale

Informatica Industriale Modello funzionale: Informazione Progettazione concettuale DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale: Informazione Progettazione concettuale Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/

Dettagli

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome. Prof. Francesco Accarino Raccolta di esercizi modello ER Esercizio 1 Un università vuole raccogliere ed organizzare in un database le informazioni sui propri studenti in relazione ai corsi che essi frequentano

Dettagli

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale

Basi di Dati. Conversione Modello ER in Modello Relazionale. K. Donno - Conversione Modello ER in Modello Relazionale Basi di Dati Conversione Modello ER in Modello Relazionale Il Modello Relazionale che rappresenta la realtà di interesse può essere ricavato direttamente dal Modello ER attraverso una sequenza di operazioni

Dettagli

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi

Modello Relazionale. Modello Relazionale. Relazioni - Prodotto Cartesiano. Relazione: tre accezioni. Es. Dati gli insiemi Modello Relazionale Modello Relazionale Proposto agli inizi degli anni 70 da Codd Finalizzato alla realizzazione dell indipendenza dei dati Unisce concetti derivati dalla teoria degli insiemi (relazioni)

Dettagli

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età

DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età PROGETTAZIONE LOGICA 7í0 Progettazione logica Obiettivo: ëtradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta ed eæciente Input: Output: æ schema concettuale

Dettagli

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

Database. Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Database Appunti di Amaranto Oronzo e Giancane Diego Lezione dell Ing. Lucia Vaira 24/04/2014 Cos'è un database? È una struttura di dati composta da tabelle a loro volta composte da campi. Caratteristiche

Dettagli

Decomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze

Decomposizione senza perdita. Decomposizione senza perdita. Conservazione delle dipendenze. Conservazione delle dipendenze Decomposizione senza perdita Data una relazione r su X, se X 1 e X 2 sono due sottoinsiemi di X la cui unione è X stesso, allora il join delle due relazioni ottenute per proiezione di r su X 1 e X 2 è

Dettagli

LA NORMALIZZAZIONE. Introduzione

LA NORMALIZZAZIONE. Introduzione LA NORMALIZZAZIONE Introduzione La normalizzazione e' una tecnica di progettazione dei database, mediante la quale si elimina la rindondanza dei dati al fine di evitare anomalie nella loro consistenza

Dettagli

BASI DI DATI - : I modelli di database

BASI DI DATI - : I modelli di database BASI DI DATI - : I modelli di database DAL 1960 ci si e' orientati verso 3 direzioni: 1 MODELLO GERARCHICO Se i dati si presentano naturalmente in una struttura ad albero (ES. File System) Limiti: rigidità

Dettagli

N ORE LEZIONI FRONTALI: STUDIO INDIVIDUALE ( ) N ORE ESERCITAZIONI/LABORATORIO: STUDIO INDIVIDUALE ( )

N ORE LEZIONI FRONTALI: STUDIO INDIVIDUALE ( ) N ORE ESERCITAZIONI/LABORATORIO: STUDIO INDIVIDUALE ( ) Invia modulo Basi di Dati + Laboratorio INSEGNAMENTO 214-215 ANNO ACCADEMICO Informatica Triennale sede di Brindisi CORSO DI LAUREA IN Paolo Buono DOCENTE 2 1 ANNO DI CORSO SEMESTRE 7 N CREDITI LEZIONI

Dettagli

LE ASSOCIAZIONI (parte 2) le associazioni parte 2 1

LE ASSOCIAZIONI (parte 2) le associazioni parte 2 1 LE ASSOCIAZIONI (parte 2) le associazioni parte 2 1 Le auto-associazioni associazioni aventi come partecipanti istanze provenienti dalla stessa entità (chiamate anche unarie o ad anello): le associazioni

Dettagli

IDENTIFICAZIONE ESTERNA. identificazione esterna 1

IDENTIFICAZIONE ESTERNA. identificazione esterna 1 IDENTIFICAZIONE ESTERNA identificazione esterna 1 Le entità deboli Le entità deboli sono quelle entità che contengono istanze la cui presenza nel sistema è accettata solo se sono presenti determinate istanze

Dettagli

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni MODELLO E/R Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Modellazione dei dati Modellare i dati significa: costruire una rappresentazione semplificata della realtà osservata individuandone

Dettagli

Dalla progettazione concettuale alla modellazione di dominio

Dalla progettazione concettuale alla modellazione di dominio Luca Cabibbo A P S Analisi e Progettazione del Software Dalla progettazione concettuale alla modellazione di dominio Capitolo 91 marzo 2015 Se qualcuno vi avvicinasse in un vicolo buio dicendo psst, vuoi

Dettagli

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota Attributi e domini Assumiamo un universo infinito numerabile U = {A 0, A 1, A 2...} di attributi. Denotiamo gli attributi con A, B, C, B 1, C 1... e gli insiemi di attributi con X, Y, Z, X 1,... per brevità

Dettagli

Il modello Entity-Relationship per il progetto delle basi di dati

Il modello Entity-Relationship per il progetto delle basi di dati 1 Il modello Entity-Relationship per il progetto delle basi di dati Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova Le metodologie di progettazione delle Basi di Dati 2 Una metodologia

Dettagli

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007

Basi di dati. Concetti introduttivi ESEMPIO. INSEGNAMENTI Fisica, Analisi, Aule. Docenti. Entità Relazioni Interrogazioni. Ultima modifica: 26/02/2007 Basi di dati Concetti introduttivi Ultima modifica: 26/02/2007 ESEMPIO INSEGNAMENTI Fisica, Analisi, Informatica Aule Docenti Entità Relazioni Interrogazioni St udent i Database 2 Tabella (I) STUDENTE

Dettagli

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca

Dettagli

Elena Baralis 2013 Politecnico di Torino 1

Elena Baralis 2013 Politecnico di Torino 1 Modello relazionale Docente M2170 Fondamenti di informatica Verdi M4880 Sistemi di elaborazione Bianchi F0410 Basi di dati Neri Docenti Nome Dipartimento Telefono Verdi Informatica 123456 Bianchi Elettronica

Dettagli

Alessandra Raffaetà. Basi di Dati

Alessandra Raffaetà. Basi di Dati Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati

Dettagli

Corso di Informatica (Basi di Dati)

Corso di Informatica (Basi di Dati) Corso di Informatica (Basi di Dati) Lezione 1 (12 dicembre 2008) Introduzione alle Basi di Dati Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof. Carlo Batini,

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro

Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Database relazionali: un'introduzione Database: collezione di fatti, registrabili e con un ben preciso significato, relazionati fra di loro Rappresentazione astratta di aspetti del mondo reale (Universe

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

Metodologie per la Progettazione Concettuale

Metodologie per la Progettazione Concettuale Metodologie per la Progettazione Concettuale Raccolta e analisi dei requisiti Scegliere il corretto livello di astrazione Standardizzare la struttura delle frasi Evitare frasi contorte Individuare sinonimi

Dettagli

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema Pagina: 1 e-travel ING SW Progetto di Ingegneria del Software e-travel Requisiti Utente Specifiche Funzionali del Sistema e Pagina: 2 di 9 Indice dei contenuti 1 INTRODUZIONE... 3 1.1 SCOPO DEL DOCUMENTO...

Dettagli

Sistemi Informativi e Basi di Dati

Sistemi Informativi e Basi di Dati Sistemi Informativi e Basi di Dati Laurea Specialistica in Tecnologie di Analisi degli Impatti Ecotossicologici Docente: Francesco Geri Dipartimento di Scienze Ambientali G. Sarfatti Via P.A. Mattioli

Dettagli

Progettazione di Database

Progettazione di Database Progettazione di Database Progettazione Concettuale: strutturazione della realtà che si vuole rappresentare secondo uno schema concettuale Dallo schema concettuale si ricava lo schema del database relazionale

Dettagli

Progettazione di un DB....in breve

Progettazione di un DB....in breve Progettazione di un DB...in breve Cosa significa progettare un DB Definirne struttura,caratteristiche e contenuto. Per farlo è opportuno seguire delle metodologie che permettono di ottenere prodotti di

Dettagli

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale

Basi di Dati e Sistemi Informativi. Progettazione logica: Il modello relazionale Basi di Dati e Sistemi Informativi Progettazione logica: Il modello relazionale Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale Introduzione Basato sul lavoro di Codd (~1970) E attualmente

Dettagli

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone

BASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell

Dettagli

Progettazione di una base di dati Ufficio della Motorizzazione

Progettazione di una base di dati Ufficio della Motorizzazione Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2008/2009 1 Scopo del progetto Progettazione di una base di dati Ufficio della Motorizzazione Si vuole realizzare un applicazione base

Dettagli

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE CONCETTUALE Fasi della progettazione di basi di dati PROGETTAZIONE CONCETTUALE Parte V Progettazione concettuale Input: specifiche utente Output: schema concettuale (astrazione della realtà) PROGETTAZIONE LOGICA Input:

Dettagli

I Sistemi Informativi

I Sistemi Informativi I Sistemi Informativi Definizione Un Sistema Informativo è un mezzo per acquisire, organizzare, correlare, elaborare e distribuire le informazioni che riguardano una realtà che si desidera descrivere e

Dettagli

I database. Cosa sono e a cosa servono i Database

I database. Cosa sono e a cosa servono i Database I database Estratto dal Modulo 1 - I database Prof. Piero GALLO 1 Cosa sono e a cosa servono i Database Un database(o base di dati) e' una raccolta organizzata di dati correlati. Il principale scopo di

Dettagli

La Progettazione di una basi di dati. Prof.ssa Rosalba Giugno

La Progettazione di una basi di dati. Prof.ssa Rosalba Giugno La Progettazione di una basi di dati Prof.ssa Rosalba Giugno Programma Progettazione di Basi di Dati. Metodologie e Modelli per la Progettazione Il modello Entità- Relazione (E-R) Progettazione Concettuale

Dettagli

Basi di dati 9 febbraio 2010 Compito A

Basi di dati 9 febbraio 2010 Compito A Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli

Dettagli

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Analisi Giulio Destri Ing. del software: Analisi - 1 Scopo del modulo Definire

Dettagli

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni

Introduzione Ai Data Bases. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni Introduzione Ai Data Bases Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San giovanni I Limiti Degli Archivi E Il Loro Superamento Le tecniche di gestione delle basi di dati nascono

Dettagli

Lezione 4. Modello EER

Lezione 4. Modello EER Lezione 4 Modello EER 1 Concetti del modello EER Include tutti i concetti di modellazione del modello ER Concetti addizionali: sottoclassi/superclassi, specializzazione, categorie, propagazione (inheritance)

Dettagli

Lezione V. Aula Multimediale - sabato 29/03/2008

Lezione V. Aula Multimediale - sabato 29/03/2008 Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)

Dettagli

Organizzazione delle informazioni: Database

Organizzazione delle informazioni: Database Organizzazione delle informazioni: Database Laboratorio Informatico di base A.A. 2013/2014 Dipartimento di Scienze Aziendali e Giuridiche Università della Calabria Dott. Pierluigi Muoio (pierluigi.muoio@unical.it)

Dettagli

Le Basi di Dati. Le Basi di Dati

Le Basi di Dati. Le Basi di Dati Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per

Dettagli

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza

Dettagli

PROGETTAZIONE CONCETTUALE

PROGETTAZIONE CONCETTUALE PROGETTAZIONE CONCETTUALE 1 Il Modello Concettuale Nella progettazione concettuale la descrizione dei dati da rappresentare avviene a livello astratto indipendentemente dal computer e dal software utilizzato.

Dettagli

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme

Dettagli

Il modello Entity-Relationship: pattern di progettazione

Il modello Entity-Relationship: pattern di progettazione Il modello Entity-Relationship: pattern di progettazione Sistemi Informativi T Versione elettronica: 06.3.ER.pattern.pdf Soluzioni a problemi comuni In molti schemi E/R si ritrovano dei pattern comuni,

Dettagli

Il Modello Relazionale

Il Modello Relazionale Il Modello Relazionale 1 Proposto da E. F. Codd nel 1970 per favorire l indipendenza dei dati e reso disponibile come modello logico in DBMS reali nel 1981 Si basa sul concetto matematico di relazione,

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli

Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli Modello Relazionale dei DBMS - Vincoli Tradizionalmente, esistono quattro modelli logici: Gerarchico Reticolare Relazionale A oggetti XML I modelli gerarchico e reticolare sono più vicini alle strutture

Dettagli

database: modello entityrelationship

database: modello entityrelationship Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8 database: modello entityrelationship Prof.Valle D.ssaFolgieri Lez7 25.10.07 Trattamento dati. Database: modello entity-relationship 1 Fasi

Dettagli

ARCHIVI E DATABASE (prof. Ivaldi Giuliano)

ARCHIVI E DATABASE (prof. Ivaldi Giuliano) ARCHIVI E DATABASE (prof. Ivaldi Giuliano) Archivio: è un insieme di registrazioni (o records) ciascuna delle quali è costituita da un insieme prefissato di informazioni elementari dette attributi (o campi).

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

DB - Modello relazionale dei dati. DB - Modello Relazionale 1

DB - Modello relazionale dei dati. DB - Modello Relazionale 1 DB - Modello relazionale dei dati DB - Modello Relazionale 1 Definizione Un modello dei dati è un insieme di meccanismi di astrazione per definire una base di dati, con associato un insieme predefinito

Dettagli

Basi di Dati Relazionali

Basi di Dati Relazionali Corso di Laurea in Informatica Basi di Dati Relazionali a.a. 2009-2010 PROGETTAZIONE DI UNA BASE DI DATI Raccolta e Analisi dei requisiti Progettazione concettuale Schema concettuale Progettazione logica

Dettagli

Ristrutturazione. Gerarchie ISA

Ristrutturazione. Gerarchie ISA Ristrutturazione Gerarchie ISA Materiale relativo alla Videolezione n.23 1 Ristrutturazione Gerarchie ISA Materiale relativo alla Videolezione n.23 2 Ristrutturazione Gerarchie ISA Mantenimento Entità

Dettagli

macchine sono di tre tipi: quelle per i cibi, quelle per le bevande fredde e quelle per le bevande calde. Per

macchine sono di tre tipi: quelle per i cibi, quelle per le bevande fredde e quelle per le bevande calde. Per Specifica iniziale Passo 1: identifichiamo frasi che descrivono concetti autonomi Concetti autonomi: macchina, prodotto, cliente Passo 2: identifichiamo frasi che correlano concetti autonomi Passo 3: eliminiamo

Dettagli

DATABASE RELAZIONALI

DATABASE RELAZIONALI 1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.

Dettagli

DBMS (Data Base Management System)

DBMS (Data Base Management System) Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire

Dettagli

Introduzione al data base

Introduzione al data base Introduzione al data base L Informatica è quella disciplina che si occupa del trattamento automatico dei dati con l ausilio del computer. Trattare i dati significa: raccoglierli, elaborarli e conservarli

Dettagli

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE

I livelli di progettazione possono essere così schematizzati: Esistono tre tipi diversi di modelli logici: Modello gerarchico: Esempio SPECIFICHE I DATABASE o basi di dati possono essere definiti come una collezione di dati gestita dai DBMS. Tali basi di dati devono possedere determinati requisiti, definiti come specifiche, necessarie per il processo

Dettagli

Introduzione alla progettazione. Metodologie e modelli per la progettazione di basi di dati. Il ciclo di vita dei sistemi informativi

Introduzione alla progettazione. Metodologie e modelli per la progettazione di basi di dati. Il ciclo di vita dei sistemi informativi Metodologie e modelli per la progettazione di basi di dati Introduzione alla progettazione Il problema: progettare una base di base di dati a partire dai suoi requisiti Progettare: definire la struttura,

Dettagli

Normalizzazione. Relazionali

Normalizzazione. Relazionali Normalizzazione di Schemi Relazionali Normalizzazione Forme Normali Una forma normale è una proprietà di uno schema relazionale che ne garantisce la qualità, cioè l assenza di determinati difetti Una relazione

Dettagli

Raffinamento dello schema e forme normali. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Raffinamento dello schema e forme normali. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Raffinamento dello schema e forme normali 1 Forme Normali Le forme normali consentono di valutare la qualità delle relazione Sono state proposte diverse forme normali che includono, in ordine di generalità:

Dettagli