PROVE SCRITTE CON SOLUZIONE

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "PROVE SCRITTE CON SOLUZIONE"

Transcript

1 ANNO ACCADEMICO 2011/2012 SISTEMI INFORMATIVI E BASI DI DATI CORSO DI LAUREA IN INGEGNERIA GESTIONALE PROVE SCRITTE CON SOLUZIONE Prof. Domenico Beneventano

2 2 INDICE 1 Struttura della Prova Scritta Esempio di Prova Scritta (6/6/2011) Esempio di Prova Scritta (11/7/2011) Esercizio Prova Scritta SI Soluzione Considerazione su vincolo non esprimibile in E/R Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Considerazione su vincolo non esprimibile in E/R Prova Scritta SI Soluzione Prova Scritta SI Soluzione Considerazione su vincolo non esprimibile in E/R Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione Prova Scritta SI Soluzione

3 3 3 Esercizio Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio 2 - SI Soluzione Esercizio Esercizio Commentato Soluzione Riepilogo tipologie di interrogazioni PP Soluzione PP Soluzione PP Soluzione PP Soluzione PP Soluzione Esercizio 4 127

4 4

5 Capitolo 1 Struttura della Prova Scritta Il compito scritto è costituito da quattro esercizi: Esercizio 1 (13 punti) Esercizio di progettazione concettuale. Gli esercizi relativi a questo punto sono riportati nel Capitolo 2. L esercizio di progettazione concettuale è costituito da una serie di specifiche sulla base delle quali occorre disegnare lo schema E/R. Come è riportato nella soluzione degli esercizi proposti, la soluzione può essere disegnata riportando le varie porzioni di schemi relative alle specifiche: non è richiesto, non è necessario riportare tutto in un unico schema E/R. In alcuni testi, come ad esempio il testo 2.2, ci sono delle specifiche in alternativa (Spec. 2, Spec. 2 bis e Spec. 2 ter): nel testo del compito scritto, una sola di queste specifiche alternative sarà presente. Si consiglia di svolgere gli esercizi cominciando dai primi, in quanto la loro discussione è più dettagliata. Altri esempi significativi di esercizi di progettazione concettuale, con relativa soluzione, sono riportati sul libro di testo. Esercizio 2 (7 punti) Esercizio di progettazione logico-relazionale. Gli esercizi relativi a questo punto sono riportati nel Capitolo 3. Consiste nel tradurre in schema relazionale uno schema E/R dato. La traduzione deve essere fatta in modo tale che lo schema relazionale ottenuto risulti in terza forma normale: ricordiamo che questo si ottiene applicando le regole di traduzione del Capitolo 3. Progettazione Logica del libro di testo. Si possono applicare indifferentemente le regole di traduzione standard oppure le altre regole di traduzione che inglobano le associazioni nelle relazioni. Il punto facoltativo di questo esercizio è costituito da una richiesta di traduzione specifica, quale ad esempio quella di inglobare alcune associazioni in una certa relazione. Altri esempi significativi di esercizi di progettazione logico-relazionale, con relativa soluzione, sono riportati sul libro di testo. Esercizio 3 (7 punti) Esercizio di interrogazioni SQL: consiste di tre interrogazioni (più una eventuale facoltativa) da scrivere in SQL. Negli esercizi relativi a questo punto, riportati nel Capitolo 4, viene generalmente riportato un insieme di più di tre interrogazioni, Si noti che in ogni testo dell esercizio 3 è disponibile un link allo script di creazione del database per poter provare su SQL SERVER le interrogazioni. Altri esempi significativi di esercizi di interrogazioni SQL, con relativa soluzione, sono riportati sul libro di testo. Esercizio 4 (3 punti) Domanda di teoria. Alcune tipiche domande sono riportate nel Capitolo 5. Uno solo tra i primi tre esercizi contiene anche un punto facoltativo (3 punti). Il massimo punteggio è quindi 33.

6 6 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Nelle sezioni 1.1 e 1.2 sono riportati i testi degli scritti di due appelli dello scorso Anno Accademico; per ogni scritto vengono riportate due (tra le varie) versioni. Questi scritti verranno svolti durante le esercitazioni dell Anno Accademico corrente.

7 1.1. ESEMPIO DI PROVA SCRITTA (6/6/2011) Esempio di Prova Scritta (6/6/2011) PROVA SCRITTA - 6/6/2011 (versione 1) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una facoltà per la gestione delle lezioni e degli esami secondo le seguenti specifiche. Spec. 1 Un insegnamento della facoltà ha un codice univoco ed una descrizione. Gli studenti della facoltà hanno una matricola univoca ed un anno di corso. Il personale della facoltà, caratterizzato dagli usuali dati anagrafici si suddivide in docenti e tecnici. I locali della facoltà, identificati da un nome e caratterizzati da un numero posti, sono suddivisi in aule e laboratori. Un laboratorio ha una tipologia ed un tecnico responsabile; un tecnico può essere responsabile di più laboratori (al massimo 7) ma non della stessa tipologia. Spec. 2 Una prova scritta (chiamata semplicemente scritto) è relativa ad un insegnamento (un insegnamento può avere più scritti), si svolge in un aula (in un aula si possono svolgere più scritti) ed è tenuta da un docente (un docente può tenere più scritti). I vincoli da esprimere sono i seguenti: in una certa data, per un insegnamento c è un solo scritto; inoltre, in una certa data, un docente può tenere un solo scritto; per le aule invece non c è nessuna limitazione. infine solo per alcune prove scritte si deve indicare anche un ulteriore docente di supporto ; in una certa data, un docente può essere di supporto in una sola prova scritta. Nota: non sono richiesti altri controlli. Spec. 3 Per ogni insegnamento i docenti tengono delle lezioni secondo le seguenti specifiche. Un docente in un certo mese può tenere da 4 a 12 lezioni; ognuna di queste lezioni è identificata dal giorno del mese in cui si tiene, cioè per un certo docente in un certo giorno del mese cè una sola lezione; una lezione è relativa ad un solo specifico insegnamento; per gli insegnamenti ci possono essere più lezioni, senza nessuna limitazione. Spec. 4 Per ogni scritto, occorre riportare la partecipazione degli studenti: ad un scritto partecipano da uno a 100 studenti, uno studente può partecipare a più scritti; ad una certo scritto uno studente può partecipare ovviamente una sola volta e gli viene assegnato un numero univoco per quello scritto (cioè in uno scritto, ad un numero corrisponde un unico studente). Inoltre, occorre indicare l eventuale calcolatrice utilizzata dallo studente: durante uno scritto uno studente può utilizzare solo una calcolatrice e, viceversa, durante uno scritto una calcolatrice può essere utilizzata da un solo studente. Una calcolatrice ha un numero univoco ed una descrizione e può essere usata in più scritti. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle lezioni: per un certo insegnamento in un certo mese, un certo docente può tenere al massimo una lezione. Esercizio 4 Definizione di BCNF (Boyce-Codd Normal Form) nel modello relazionale ed esempio di schema relazionale in terza forma normale ma non in BCNF.

8 8 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Facoltativo Solo per le associazioni R4 e R6: riportare la traduzione non standard di R4 e R6 includendole in E3; riportare quindi la traduzione dell attributo multiplo AMR6 (3 punti). Esercizio 3 Dato il seguente schema relazionale: PERSONA(CF,NAZIONE,CITTA) GITA(COD,GENERE, DESTINAZIONE) PARTECIPA(CF,COD,GENERE,MESE,PREZZO PAGATO) F.K. CF REFERENCES PERSONA F.K. COD,GENERE REFERENCES GITA Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare le gite (tutti gli attributi) con destinazione Parigi alle quali ha partecipato almeno una persona di Reggio nel mese di Marzo ; Query 2 Elencare le gite (tutti gli attributi) con destinazione Londra alle quali ha partecipato almeno una persona di Reggio (in un mese qualsiasi, cioe il mese non interessa) e alle quali non ha partecipato nessuna persona di Modena nel mese di Marzo ; Query 3 Elencare le persone (tutti gli attributi) di Reggio che hanno partecipato ad almeno 5 gite con destinazione Londra nel mese di Marzo ;

9 1.1. ESEMPIO DI PROVA SCRITTA (6/6/2011) 9 PROVA SCRITTA - 6/6/2011 (versione 2) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una facoltà per la gestione delle lezioni e degli esami secondo le seguenti specifiche. Spec. 1 Un insegnamento della facoltà ha un codice univoco ed una descrizione. Gli studenti della facoltà hanno una matricola univoca ed un anno di corso. Il personale della facoltà, caratterizzato dagli usuali dati anagrafici si suddivide in docenti e tecnici. I locali della facoltà, identificati da un nome e caratterizzati da un numero posti, sono suddivisi in aule e laboratori. Un laboratorio ha una tipologia ed un docente responsabile; un docente può essere responsabile di più laboratori (al massimo 7) ma non della stessa tipologia. Spec. 2 Una prova pratica (chiamata semplicemente pratica) è relativa ad un insegnamento (un insegnamento può avere più pratiche), si svolge in un laboratorio (in un laboratorio si possono svolgere più pratiche) e ha un tecnico che assiste (un tecnico può assistere più pratiche). I vincoli da esprimere sono i seguenti: in una certa data, per un insegnamento c è una sola pratica; inoltre, in una certa data, in un laboratorio c è una sola pratica; per i tecnici invece non c è nessuna limitazione relativa alla data; infine solo per alcune prove pratiche si deve indicare anche un ulteriore laboratorio di riserva ; in una certa data, un laboratorio può essere di riserva in una sola prova pratica. Nota: non sono richiesti altri controlli. Spec. 3 Per ogni insegnamento i docenti tengono delle lezioni secondo le seguenti specifiche. Per un insegnamento in un certo mese ci possono essere da 6 a 12 lezioni; ognuna di queste lezioni è identificata dal giorno del mese in cui si tiene, cioè per un certo insegnamento in un certo giorno del mese c è una sola lezione ; una lezione è tenuta da un solo docente, un docente può tenere più lezioni, senza alcuna limitazione. Spec. 4 Per ogni pratica, occorre riportare la partecipazione degli studenti: ad una pratica partecipano da uno a 40 studenti, uno studente può partecipare a più pratiche; ad una certa pratica uno studente può partecipare ovviamente una sola volta e gli viene assegnato un numero univoco per quella pratica (cioè in una pratica, ad un numero corrisponde un unico studente). Inoltre, occorre indicare l eventuale PC utilizzato dallo studente: durante una prova pratica uno studente può utilizzare solo un PC e, viceversa, durante una prova pratica un PC può essere utilizzato da un solo studente. Un PC ha un codice univoco ed una descrizione e può essere usato in più pratiche. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle lezioni: per un certo insegnamento in un certo mese, un certo docente può tenere al massimo una lezione. Esercizio 4 Definizione di vincolo di integrità referenziale nel modello relazionale.

10 10 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Facoltativo Solo per le associazioni R4 e R6: riportare la traduzione non standard di R4 e R6 includendole in E5; riportare quindi la traduzione dell attributo multiplo AMR6 (3 punti). Esercizio 3 Dato il seguente schema relazionale: PERSONA(CF,STATO,CITTA) GITA(COD,TIPO, DESTINAZIONE) PARTECIPA(CF,STATO,COD,MESE,PREZZO PAGATO) F.K. CF,STATO REFERENCES PERSONA F.K. COD REFERENCES GITA Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare le persone (tutti gli attributi) di Reggio che hanno partecipato ad almeno un gita con destinazione Parigi nel mese di Marzo ; Query 2 Elencare le gite (tutti gli attributi) con destinazione Londra alle quali ha partecipato almeno una persona di Reggio (in un mese qualsiasi, cioe il mese non interessa) e alle quali non ha partecipato nessuna persona di Modena nel mese di Marzo ; Query 3 Elencare le persone (tutti gli attributi) di Reggio che hanno partecipato ad almeno 5 gite con destinazione Londra nel mese di Marzo ;

11 1.2. ESEMPIO DI PROVA SCRITTA (11/7/2011) Esempio di Prova Scritta (11/7/2011) PROVA SCRITTA - 11/7/2011 (versione 1) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una PayTV per la gestione delle serie tv (con le relative puntate ed attori) e delle trasmissioni, secondo le seguenti specifiche. Spec. 1 Una SerieTV ha un codice univoco ed una descrizione. Il personale ha usuali dati anagrafici, si suddivide in dirigenti, tecnici, attori e controfigure. Un CanaleTV ha un codice univoco, un nome ed una descrizione. Uno Studio televisivo (detto StudioTV) ha un nome univoco, una tipologia ed un dirigente responsabile; un dirigente può essere responsabile di più StudiTV (al massimo 7) ma non della stessa tipologia. Spec. 2 Una Puntata è di una SerieTV (una SerieTV può avere più puntate), ha una data, viene girata in uno StudioTV (in uno StudioTV si possono girare più puntate) e ha un tecnico che assiste (un tecnico può assistere più puntate). I vincoli da esprimere sono i seguenti: in una certa data, per una SerieTV c è una sola puntata; inoltre, in una certa data, in uno StudioTV viene girata una sola puntata; per i tecnici invece non c è nessuna limitazione relativa alla data; infine solo per alcune puntate si deve indicare anche un ulteriore StudioTV di riserva; in una certa data, uno StudioTV può essere di riserva in una sola puntata. Nota: non sono richiesti altri controlli. Spec. 3 La programmazione delle Puntate sui CanaliTV avviene secondo le seguenti specifiche. In un CanaleTv in un certa data ci possono essere da 3 a 6 programmi orari ognuno di questi programmi orari è identificata dal canaletv, dalla data e dall ora in cui si tiene, cioè per un certo CanaleTV in una certa data, ad una certa ora c è un solo programma orario; in un programma orario viene trasmessa una ed una sola puntata; per le puntate ci possono essere più trasmissioni, senza nessuna limitazione. Esempio: CanaleTV Data Ora Puntata Canale3 2 Maggio P1 Canale3 2 Maggio P1 Canale3 2 Maggio P2 Canale4 18 Maggio P1 Canale4 18 Maggio P1 Canale4 18 Maggio P2 Canale4 18 Maggio P3 Spec. 4 Gli attori recitano nelle SerieTV secondo le seguenti specifiche: un attore può recitare in più SerieTV, ad una SerieTV recitano da 10 a 20 attori; per una certa serietv un attore recita una sola volta in uno ed un solo ruolo; inoltre per una certa SerieTV, ad un ruolo corrisponde un solo attore. Infine, occorre indicare l eventuale controfigura associata all attore: durante una SerieTV, un attore può avere una sola controfigura e, viceversa, durante una SerieTv una controfigura può essere associata ad un solo attore. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle trasmissioni: per un certo CanaleTV, in un giorno di un mese può essere trasmessa una sola puntata (quindi, nell esempio, la terza riga non è più consentita). Esercizio 4 Classificazione degli identificatori nel modello E/R.

12 12 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Esercizio 3 Dato il seguente schema relazionale: PRODOTTO(NOME,TIPO, CATEGORIA) PERSONA(CF,STATO,CITTA) ACQUISTO(NOME,TIPO,CF,MESE,PREZZO) F.K. CF REFERENCES PERSONA F.K. NOME,TIPO REFERENCES PRODOTTO Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare le persone (tutti gli attributi) di Reggio che hanno acquistato almeno un prodotto con categoria Scarpe nel mese di Marzo oppure nel mese di Aprile; Query 2 Elencare le persone (tutti gli attributi) di Reggio che hanno acquistato almeno un prodotto con categorie Giacche ad un prezzo Maggiore di 30 e che non hanno mai acquistato un prodotto con categoria Scarpe nel mese di Marzo ; Query 3 Elencare i prodotti (tutti gli attributi) con categoria Scarpe che sono stati acquistati almeno 5 volte da persone di Modena nel mese di Marzo ; (Facoltativo) Elencare per ogni STATO, il CF della persona che ha effettuato il Maggior numero di acquisti, ovvero il CF della persona con il Maggior numero di occorrenze in ACQUISTO per quello STATO.

13 1.2. ESEMPIO DI PROVA SCRITTA (11/7/2011) 13 PROVA SCRITTA - 11/7/2011 (versione 2) COMPILARE E CONSEGNARE IL TESTO DEL COMPITO Nome e Cognome Matricola Esercizio 1 Progettare lo schema E/R del sistema informativo di una PayTV per la gestione delle serie tv (con le relative puntate ed attori) e delle trasmissioni, secondo le seguenti specifiche. Spec. 1 Una SerieTV ha un codice univoco ed una descrizione. Il personale ha usuali dati anagrafici, si suddivide in dirigenti, tecnici, attori e controfigure. Un CanaleTV ha un codice univoco, un nome ed una descrizione. Uno Studio televisivo (detto StudioTV) ha un nome univoco, una sede ed un dirigente responsabile; un dirigente può essere responsabile di più StudiTV (al massimo 5) ma non della stessa sede. Spec. 2 Una Puntata è di una SerieTV (una SerieTV può avere più puntate), ha una data, viene girata in uno StudioTV (in uno StudioTV si possono girare più puntate) e ha un tecnico che assiste (un tecnico può assistere più puntate). I vincoli da esprimere sono i seguenti: in una certa data, per una SerieTV c è una sola puntata; inoltre, in una certa data, un tecnico può assistere solo ad una puntata; per gli StudiTV invece non c è nessuna limitazione relativa alla data; infine, solo per alcune puntate, si deve indicare anche un ulteriore tecnico di supporto; in una certa data, un tecnico può essere di supporto in una sola puntata. Nota: non sono richiesti altri controlli. Spec. 3 La programmazione delle Puntate sui CanaliTV avviene secondo le seguenti specifiche. Per un certa puntata in un certo mese ci possono essere da 2 a 4 trasmissioni (per trasmissione si intende la messa in onda di una puntata; ad esempio una trasmissione è la messa in onda della puntata P1 nel giorno 2 di Maggio2010); ognuna di queste trasmissioni è identificata dalla puntata, dal mese e dal giorno del mese in cui si tiene, cioè per una certa puntata, per un certo mese e per un certo giorno del mese, c è una sola trasmissione; una trasmissione avviene su uno ed un solo canaletv; per i CanaliTv ci possono essere più trasmissioni, senza nessuna limitazione. Esempio: Puntata Mese Giorno CanaleTV P1 Maggio Canale3 P1 Maggio Canale4 P2 Maggio Canale3 P2 Maggio Canale3 P2 Maggio Canale3 Spec. 4 Gli attori recitano nelle SerieTV secondo le seguenti specifiche: un attore può recitare in più SerieTV, ad una SerieTV recitano da 10 a 20 attori; per una certa serietv un attore recita una sola volta in uno ed un solo ruolo; inoltre per una certa SerieTV, ad un ruolo corrisponde un solo attore. Infine, occorre indicare l eventuale controfigura associata all attore: durante una SerieTV, un attore può avere una sola controfigura e, viceversa, durante una SerieTv una controfigura può essere associata ad un solo attore. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo alle programmazioni: una Puntata, in una data può essere trasmessa una sola volta (quindi, nell esempio, la seconda e quinta riga non sono più consentite). Esercizio 4 Definizione di identificatore nel modello E/R.

14 14 CAPITOLO 1. STRUTTURA DELLA PROVA SCRITTA Esercizio 2 Tradurre il seguente schema in schema relazionale in terza forma normale. Esercizio 3 Dato il seguente schema relazionale: PRODOTTO(NOME,TIPO, CATEGORIA) PERSONA(CF,STATO,CITTA) ACQUISTO(NOME,TIPO,CF,MESE,PREZZO) F.K. CF REFERENCES PERSONA F.K. NOME,TIPO REFERENCES PRODOTTO Scrivere in SQL le seguenti interrogazioni: Query 1 Elencare i prodotti (tutti gli attributi) con categoria Maglie che sono stati acquistati da almeno una persona di Reggio nel mese di Marzo con prezzo Maggiore di 10 oppure nel mese di Aprile con prezzo minore di 10; Query 2 Elencare i prodotti (tutti gli attributi) con categoria Giacche acquistati da almeno una persona di Reggio nel mese di Marzo e che non sono mai stati acquistati da una persona di Modena nel mese di Marzo ; Query 3 Elencare le persone (tutti gli attributi) di Reggio che hanno acquistato almeno 5 prodotti con con categoria Giacche nel mese di Marzo ; (Facoltativo) Elencare per ogni TIPO, il NOME del prodotto acquistato il Maggior numero di volte, ovvero il NOME del prodotto con il Maggior numero di occorrenze in ACQUISTO per quel TIPO.

15 Capitolo 2 Esercizio 1 Questo capitolo contiene gli esercizi relativi alla progettazione concettuale. L esercizio di progettazione concettuale è costituito da una serie di specifiche sulla base delle quali occorre disegnare lo schema E/R. Come è riportato nella soluzione degli esercizi proposti, la soluzione può essere disegnata riportando le varie porzioni di schemi relative alle specifiche: non è richiesto, non è necessario riportare tutto in un unico schema E/R. In alcuni testi riportati, come ad esempio il testo 2.2, ci sono delle specifiche in alternativa (Spec. 2, Spec. 2 bis e Spec. 2 ter): nel testo del compito scritto, una sola di queste specifiche alternative sarà presente.

16 16 CAPITOLO 2. ESERCIZIO Prova Scritta SI PROVA SCRITTA - 9/1/2006 Si devono rappresentare informazioni relative ad una società ristoratrice che gestisce una catena di ristoranti, secondo le seguenti specifiche. Spec. 1 Ogni ristorante ha un nome univoco, una città, un giorno settimanale di chiusura ed un indirizzo. Non ci possono essere due ristoranti nella stessa città con lo stesso giorno settimanale di chiusura. Spec. 2 Per ogni ristorante ci sono esattamente 6 menu fissi, ciascuno con un costo e composto da un minimo di 5 ad un massimo di 8 piatti. Ogni piatto (inteso come portata) ha un nome univoco ed una descrizione. Un certo piatto può essere in più menu fissi, sia dello stesso ristorante che di differenti ristoranti. Spec. 3 Per ogni ristorante viene riportato anche un menu libero, indicando i piatti disponibili suddivisisi per tipologia (ad esempio, Antipasti, Primi, Dessert, e cosi via): ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. Spec. 4 I prodotti vengono forniti settimanalmente ai ristoranti da fornitori, con la seguente specifica: in una certa settimana, un prodotto è fornito ad un ristorante da uno ed un solo fornitore, in una certa quantità e ad un certo prezzo. Un fornitore può effettuare più forniture. Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo ai menu fissi: allo scopo di diversificare l offerta, un certo piatto non può comparire più di una volta nella composizione dei menu fissi di uno stesso ristorante.in altre parole, data la coppia RISTORANTE-PIATTO ho un unico MENUFISSO. In maniera analoga al puntoprecedente, devo fare in modo da formare una coppia univoca RISTORANTE- PIATTO al quale associare unmenufisso : Facoltativo Aggiungere allo schema E/R il seguente vincolo relativo alle forniture di prodotti: un certo fornitore può fornire un certo prodotto ad un certo ristorante una ed una sola volta.

17 2.1. PROVA SCRITTA SI Soluzione Riportiamo e discutiamo i punti fondamentali; in alcune entità gli attributi semplici sono omessi. Spec. 1 Ogni ristorante ha un nome univoco, una città, un giorno settimanale di chiusura ed un indirizzo. Non ci possono essere due ristoranti nella stessa città con lo stesso giorno settimanale di chiusura. NOME INDIRIZZO CITTA GIORNO_CHIUSURA RISTORANTE Spec. 2 Per ogni ristorante ci sono esattamente 6 menu fissi, ciascuno con un costo e composto da un minimo di 5 ad un massimo di 8 piatti. Ogni piatto (inteso come portata) ha un nome univoco ed una descrizione. Un certo piatto può essere in più menu fissi, sia dello stesso ristorante che di differenti ristoranti. Sono possibili le seguenti tre soluzioni per i menu fissi: MENU FISSO DI (6,6) RISTORANTE COD_MF MENU FISSO DI (6,6) RISTORANTE COD_MF MENU FISSO (1,N) DI (6,6) RISTORANTE COD_MF Nelle prime due soluzioni il menu fisso è di un solo ristorante, mentre nella terza lo stesso menu fisso è condiviso da più ristoranti. Indipendentemente dalla soluzione scelta, la composizione di un menu fisso è: COMPOSIZIONE MENU FISSO (5,8) (1,N) PIATTO Spec. 3 Per ogni ristorante viene riportato anche un menu libero, indicando i piatti disponibili suddivisisi per tipologia (ad esempio, Antipasti, Primi, Dessert, e cosi via): ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. In una prima soluzione si usa l entità Menu Libero, in modo analogo al Menu fisso discusso prima:

18 18 CAPITOLO 2. ESERCIZIO 1 PIATTO (1,N) COMPOSIZIONE-LIBERO (5,N) TIPOLOGIE HA (2,N) MENU LIBERO DI RISTORANTE TIPOLOGIA COD_ML In questo caso l entità Menu Libero può essere eliminata in quanto non comporta alcuna informazione (ha solo un codice, associato ad uno ed un solo ristorante). Si ottiene quindi: PIATTO (1,N) (5,N) COMPOSIZIONE-LIBERO MENU LIBERO TIPOLOGIE HA (2,N) RISTORANTE TIPOLOGIA Spec. 4 I prodotti vengono forniti settimanalmente ai ristoranti da fornitori, con la seguente specifica: in una certa settimana, un prodotto è fornito ad un ristorante da uno ed un solo fornitore, in una certa quantità e ad un certo prezzo. Un fornitore può effettuare più forniture. Consideriamo un associazione ternaria FORNITURA (F) tra PRODOTTO, FORNITORE e RISTORAN- TE SETTIMANA RISTORANTE (1,N) F (1,N) PRODOTTO PREZZO (1,N) QUANTITA' FORNITORE

19 2.1. PROVA SCRITTA SI Siccome non posso ripetere la terna di istanze PRODOTTO, FORNITORE e RISTORANTE, un prodotto viene fornito ad un ristorante da un fornitore un unica voltà ; per tale fornitura viene riportata la settimana, il prezzo e la quantità. Se reifichiamo tale associazione ternaria, riportandovi quindi il suo identificatore costituito da PRODOTTO, FORNITORE e RISTORANTE che esprime appunto il fatto che un prodotto viene fornito ad un ristorante da un fornitore un unica voltà, otteniamo: RISTORANTE (1,N) B F A (1,N) PRODOTTO DA (1,N) FORNITORE Per semplicità nel disegno l identificatore di PRODOTTO è indicato direttamente sul ramo dell associazione: FORNITORE (1,N) DA RISTORANTE (1,N) B F A (1,N) PRODOTTO Pero il vincolo un prodotto viene fornito ad un ristorante da un fornitore un unica voltà non è quanto richiesto dalla specifica 1. Allora si deve innanzitutto togliere l identificatore RISTORANTE (1,N) B F A (1,N) PRODOTTO DA (1,N) FORNITORE 1 O meglio, questo viene richiesto solo dopo, nel punto facoltativo

20 20 CAPITOLO 2. ESERCIZIO 1 e quindi, per ottenere che in una certa settimana, un prodotto è fornito ad un ristorante da uno ed un solo fornitore, devo fare in modo che la terna PRODOTTO, RISTORANTE, SETTIMANA non si ripeta (sia un identificatore) in modo da associargli un unico FORNITORE: SETTIMANA RISTORANTE (1,N) B F A (1,N) PRODOTTO PREZZO DA QUANTITA' F=FORNITURA (1,N) FORNITORE Spec. 5 Aggiungere allo schema E/R il seguente vincolo relativo ai menu fissi: allo scopo di diversificare l offerta, un certo piatto non può comparire più di una volta nella composizione dei menu fissi di uno stesso ristorante.in altre parole, data la coppia RISTORANTE-PIATTO ho un unico MENUFISSO. In maniera analoga al puntoprecedente, devo fare in modo da formare una coppia univoca RISTORANTE- PIATTO al quale associare unmenufisso : RISTORANTE (1,N) B SOLO_IN A (1,N) PIATTO (6,6) COMPOSIZIONE (5,8) DI MENU FISSO COD_MF Nel precedente schema ho un ciclo: per una coppia RISTORANTE-PIATTO ho un unico MENUFISSO, ma nonposso garantire nell E/R che sia dello stesso RISTORANTE... Nel precedente schema si noti la cardinalità di menufisso in Composizione: tale cardinalità hasenso se considero il menu fisso associato ad un unico ristorante; in caso contrario:

21 2.1. PROVA SCRITTA SI RISTORANTE (1,N) B SOLO_IN A (1,N) PIATTO (6,6) COMPOSIZIONE (5,N) DI (1,N) MENU FISSO COD_MF Facoltativo Aggiungere allo schema E/R il seguente vincolo relativo alle forniture di prodotti: un certo fornitore può fornire un certo prodotto ad un certo ristorante una ed una sola volta. FORNITORE (1,N) DA RISTORANTE (1,N) B F A (1,N) PRODOTTO Considerazione su vincolo non esprimibile in E/R Nelle tre pagine aggiuntive che seguono vengono riportate alcune considerazioni sui vincoli non esprimibili con il modello E/R.

22 22 CAPITOLO 2. ESERCIZIO 1 Considerazioni su vincolo non esprimibile in E/R Consideriamo la seguente descrizione: Per ogni ristorante viene riportato anche un menu libero, indicando i piatti disponibili suddivisisi per tipologia (ad esempio, Antipasti, Primi, Dessert, e cosi via): ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. In particolare questa descrizione contiene i seguenti vincoli di cardinalità : ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. Lo schema corrispondente è il seguente: Consideriamo ora il seguente vincolo aggiuntivo: In un menu libero, un piatto può comparire al massimo una volta, con una precisa tipologia. Si vuole verificare che tale vincolo non può essere espresso sul precedente schema, o, più precisamente, non si possono esprimere in un solo schema sia i vincoli di cardinalità dati nella descrizione iniziale che il vincolo aggiuntivo. Singolarmente il vincolo aggiuntivo è molto semplice da esprimere, poiché corrisponde ad una associazione binaria, che chiameremo IN, tra PIATTO e MENULIBERO. Aggiungendo tale associazione allo schema precedente si ottiene: In questo modo si ottiene un ciclo tra MENULIBERO e PIATTO: ci sono due cammini tra MENU LIBERO e PIATTO, ovvero le due associazioni di MENU LIBERO con PIATTO 1

23 2.1. PROVA SCRITTA SI ) quella diretta attraverso l associazione IN 2) quella indiretta attraverso l entita TIPOLOGIA e l associazione HA Questi due associazioni sono indipendenti tra di loro e di conseguenza partendo da un certo menu libero e seguendo i due cammini si arriva in due piatti che non sono vincolati ad essere uguali. In questo modo, il vincolo aggiuntivo imposto tramite l associazione IN viene violato quando si considerano le corrispondenze attraverso l entità TIPOLOGIA e l associazione HA. Verifichiamolo traducendo fedelmente lo schema E/R in relazionale MENULIBERO(CODICE, ) PIATTO(NOME,DESCR,PREZZO) TIPOLOGIA (CODICE, TIPOLOGIA) FK: CODICE REF. MENULIBERO HA (CODICE, TIPOLOGIA,NOME) FK: CODICE, TIPOLOGIA REF. TIPOLOGIA FK: NOME REF. PIATTO IN (CODICE, NOME, TIPOLOGIA) FK: CODICE REF. MENULIBERO FK: NOME REF. PIATTO Premessa: come vedremo parlando di Regole Aziendali e loro traduzione in relazionale, i vincoli di cardinalità (quale ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti ) non sono esprimibili in relazionale (salvo alcune cardinalità minima = e massima = 1) e per essi devono essere previsti altri meccanismi di controllo (quali trigger, store procedure) oppure essere implementati direttamente nelle applicazioni (ad esempio le maschere di ACCESS) che usano il database. Quindi i vincoli di cardinalità verranno implementati successivamente. Nello schema relazionale è evidente che l associazione tra MENULIBERO e PIATTO fatta tramite HA è indipendente da quella fatta tramite IN e che attraverso HA possiamo associare un piatto più volte allo stesso menu libero e quindi violare il vincolo aggiuntivo. Allora per non violare tale vincolo aggiuntivo, non si considera l associazione HA e quindi le corrispondenze tra PIATTO e MENU LIBERO verranno espresse solo nella relazione IN, ottenendo il seguente schema) HA (CODICE, TIPOLOGIA,NOME) FK: CODICE, TIPOLOGIA REF. TIPOLOGIA FK: NOME REF. PIATTO IN (CODICE, NOME, TIPOLOGIA) FK: CODICE REF. MENULIBERO FK: NOME REF. PIATTO FK: CODICE, TIPOLOGIA REF. TIPOLOGIA Se nello schema relazionale si ottiene il vincolo aggiuntivo eliminando l associazione HA, perché non fare la stessa cosa in E/R, cioè perché in E/R non metter l identificatore MENU LIBERO + PIATTO direttamente su TIPOLOGIA, cioè considerare: 2

24 24 CAPITOLO 2. ESERCIZIO 1 In questo modo però nello schema E/R non posso più esprimere i vincoli di cardinalità ogni menu libero prevede minimo 2 tipologie e per ciascuna di queste tipologie occorre indicare minimo 5 piatti. Nel precedente schema dovrei comunque togliere l identificatore TIPOLOGIA + MENU LIBERO (altrimenti in un MENU LIBERO ad una TIPOLOGIA corrisponderebbe un unico piatto) Conclusione: Come affermato più volte vari tipi di vincoli di integrità non possono essere espressi direttamente dai costrutti del modello E/R. (Vedere libro, 1.7 Documentazione di schemi E/R) Nell esempio in esame è stato considerato un caso particolare di tale situazione: due vincoli di integrità (quello sulle cardinalità e quello aggiuntivo) che separatamente possono essere rappresentati, non possono essere rappresentati congiuntamente sullo stesso schema. 3

25 2.1. PROVA SCRITTA SI Reverse engineering di schemi relazionali in schemi E/R Nella discussione precedente, dopo aver considerato lo schema relazionale MENULIBERO(CODICE, ) PIATTO(NOME,DESCR,PREZZO) TIPOLOGIA (CODICE, TIPOLOGIA) FK: CODICE REF. MENULIBERO IN (CODICE, NOME, TIPOLOGIA) FK: NOME REF. PIATTO FK: CODICE, TIPOLOGIA REF. TIPOLOGIA È stato considerato lo schema E/R Il passaggio da uno schema relazionale ad uno schema E/R equivalente prende il nome di Reverse engineering di schemi relazionali in schemi E/R. Tale processo è un passo fondamentale del reengineering di un sistema informativo, in quanto spesso l azienda ha già in uso dei database relazionali 4

26 26 CAPITOLO 2. ESERCIZIO Prova Scritta SI PROVA SCRITTA - 13/12/2002 Esercizio 1 Progettare lo schema E/R per la gestione della fureria di una caserma secondo le seguenti specifiche. Spec. 1 Un militare è descritto tramite gli usuali dati anagrafici; tra i militari si distinguono gli ufficiali che hanno un grado militare. Ogni militare può svolgere giornalmente un unico incarico; gli incarichi si suddividono in ordinari e speciali; per gli incarichi ordinari occorre riportare solo una descrizione mentre per quelli speciali occorre riportare, oltre alla descrizione, l ufficiale che ha assegnato tale incarico. Spec. 2 Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma; per questi incarichi speciali occorre indicare anche il luogo, l ora di inizio e la durata. Spec. 2 bis Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa a più luoghi e, viceversa, su un certo luogo possono svolgersi più guardie. Spec. 2 ter Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa ad un solo luogo e su un certo luogo possono svolgersi più guardie. In un luogo in una certa data c è una ed una sola guardia. Spec. 3 Una esercitazione militare è descritta da un codice, una data e dal nome della località in cui svolge. Ad un esercitazione partecipano almeno 100 militari e a ciascuno di essi è assegnato, all interno dell esercitazione in questione, un numero univoco, cioè ad un militare è assegnato durante una esercitazione un solo numero e ad un numero, in una esercitazione, corrisponde un solo militare. Un militare può partecipare a una o più esercitazioni. Spec. 4 Durante una esercitazione viene consegnata ad un militare una certa arma e si deve tener conto del numero di colpi sparati con tale arma; ovviamente, durante una esercitazione, un arma è assegnata ad un preciso militare. Un arma è descritta da un codice univoco e da un tipo. Facoltativo Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; un arma può sostituire un arma con malfunzionamenti piu di una volta. Facoltativo bis Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; durante una esercitazione, un arma può sostituire SOLO un arma con malfunzionamenti.

27 2.2. PROVA SCRITTA SI Soluzione Riportiamo e discutiamo i punti fondamentali; in alcune entità gli attributi semplici sono omessi. Spec. 1 Un militare è descritto tramite gli usuali dati anagrafici; tra i militari si distinguono gli ufficiali che hanno un grado militare. Ogni militare può svolgere giornalmente un unico incarico; gli incarichi si suddividono in ordinari e speciali; per gli incarichi ordinari occorre riportare solo una descrizione mentre per quelli speciali occorre riportare, oltre alla descrizione, l ufficiale che ha assegnato tale incarico. E semplice ; riportato direttamente nello schema che segue. Spec. 2 Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma; per questi incarichi speciali occorre indicare anche il luogo, l ora di inizio e la durata. Per rappresentare gli incarichi (Ogni militare può svolgere giornalmente un unico incarico) si introduce una entità INCARICO identificata dalla data e dal militare. L entità INCARICO è partizionata in ORDINARIO e SPECIALE; DATA CF DATIANAG MILITARE (0,N) INCARICO DESCRIZIONE (t,e) GRADO UFFICIALE (0,N) SPECIALE ORDINARIO ASSEGNA ORAINIZIO DURATA GUARDIA LUOGHICASERMA(1,N) Spec. 2 bis Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa a più luoghi e, viceversa, su un certo luogo possono svolgersi più guardie. Gli attributi LUOGHICAS, ORAINIZ e DATA vengono eliminati da GUARDIA e si introduce l entità LUOGOCAS rappresenta i luoghi delle caserme. NOMELUOGO ORAINIZIO DURATA LUOGOCAS (1,N) IN (1,N) GUARDIA Spec. 2 ter Tra gli incarichi speciali ci sono le guardie ai luoghi della caserma. Ogni luogo ha un nome identificativo, l ora di inizio e la durata della guardia. Una guardia è relativa ad un solo luogo e su un certo luogo possono svolgersi più guardie. In un luogo in una certa data c è una ed una sola guardia. NOMELUOGO ORAINIZIO DURATA LUOGOCAS (1,N) IN GUARDIA

28 28 CAPITOLO 2. ESERCIZIO 1 Per ottenere che in un luogo in una certa data c è una ed una sola guardia, occorre identificare l entità GUARDIA con DATA e LUOGOCAS: NOMELUOGO DATA ORAINIZIO DURATA LUOGOCAS (1,N) IN GUARDIA Si noti che l attributo DATA su LUOGOCAS è ereditato da INCARICO: tale attributo è ripetuto in GUARDIA solo per indicare l identificatore dell entità. Spec. 3 Una esercitazione militare è descritta da un codice, una data e dal nome della località in cui svolge. Ad un esercitazione partecipano almeno 100 militari e a ciascuno di essi è assegnato, all interno dell esercitazione in questione, un numero univoco, cioè ad un militare è assegnato durante una esercitazione un solo numero e ad un numero, in una esercitazione, corrisponde un solo militare. Un militare può partecipare a una o più esercitazioni. Lo schema E/R corrispondente a questa specifica è il seguente (non sono riportati gli attributi relativi ad esercitazione): NUMERO ESERCITAZ (1,100) PARTECIP. (0,N) MILITARE Spec. 4 Durante una esercitazione viene consegnata ad un militare una certa arma e si deve tener conto del numero di colpi sparati con tale arma; ovviamente, durante una esercitazione, un arma è assegnata ad un preciso militare. Un arma è descritta da un codice univoco e da un tipo. E importante notare il fatto che l arma è assegnata al militare durante una esercitazione, ovvero mentre il militare partecipa ad una esercitazione: quindi l arma deve essere associata alla partecipazione del militare all esercitazione, ovvero all entità PARTECIPAZIONE: NUMEROCOLPI PARTECIP. USA (0,N) ARMA Ora consideriamo che durante una esercitazione, un arma è assegnata ad un preciso militare - occorre aggiungere un altro identificatore all entità PARTECIPAZIONE NUMEROCOLPI ESERCITAZ (1,100) PARTECIP. USA (0,N) ARMA

29 2.2. PROVA SCRITTA SI Facoltativo Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; un arma può sostituire un arma con malfunzionamenti piu di una volta. Per considerare che durante un esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva. Si noti che l arma sostitutiva deve essere indicata per un arma durante una esercitazione, quindi occorre indicare un arma sostitutiva relativamente al concetto che lega l arma alla esercitazione, ovvero all entita PARTECIPAZIONE. Si introduce pertanto l associazione ARMASOSTITUTIVA tra PARTECIPAZIONE e ARMA con l attributo multiplo MALFUNZIONAMENTI: MALFUNZIONAMENTI (1,N) ARMASOSTITUTIVA (0,1) NUMEROCOLPI (0,N) ESERCITAZ (1,100) PARTECIP. USA (0,N) ARMA Si noti che un arma può sostituire un arma con malfunzionamenti piu di una volta quindi MAX-CARD(ARMA,ARMASOSTITUTIVA) = N. Facoltativo bis Se durante una esercitazione un arma presenta dei malfunzionamenti, occorre riportare tali malfunzionamenti e indicare un arma sostitutiva; durante una esercitazione, un arma può sostituire SOLO un arma con malfunzionamenti. Per ottenere questa specifica non possiamo mettere nello schema precedente MAX-CARD(ARMA,ARMASOSTITUTIVA) = 1 perchè altrimenti un arma la uso come sostitutiva una ed una sola volta. Il problema si risolve introducendo come identificatore PARTECIPAZIONE anche ESERCITAZIONE + ARMA tramite l associazione ARMASOSTITUTIVA. Però questo identificatore non può essere messo direttamente su PARTECIPAZIONE in quanto PARTECIPAZIONE è parziale nell associazione ARMASOSTITUTIVA. Per aggiungere tale identificatore si dovrebbe introdurre una sottoclasse di PARTECIPAZIONE DA FINIRE

30 30 CAPITOLO 2. ESERCIZIO Prova Scritta SI PROVA SCRITTA - 27/06/2005 Esercizio 1 (18 punti) Progettare lo schema E/R di un sistema informativo che memorizza informazioni su un archivio di fotografie, secondo le seguenti specifiche. Spec. 1 Le fotografie hanno un codice identificativo e una descrizione. Una fotografia è relativa ad un luogo. Ogni luogo, che ha una descrizione ed una tipologia, è identificato da un codice che è univoco all interno della provincia alla quale il luogo appartiene. La provincia ha una sigla e una descrizione. Spec. 2 Una fotografia è scattata con una macchina fotografica, identificata dalla marca e dal modello, che può essere analogica o digitale. Per le macchine digitali occorre indicare la capacità del sensore e la potenza dello zoom ottico; per le macchine analogiche la marca dell ottica montata. Spec. 3 I fotografi e gli utenti sono descritti dagli usuali dati anagrafici; inoltre, gli utenti hanno anche un nomeutente, ovviamente unico. Una fotografia fa parte di un servizio fotografico. Un servizio fotografico è realizzato da un fotografo, ha una data ed una descrizione; in una certa data, un fotografo può realizzare un solo servizio fotografico; un servizio fotografico contiene da 5 a 100 fotografie. Spec. 4 Il sistema informativo permette l accesso ad utenti che possono esprimere un voto per le fotografie, con il vincolo che un utente voti una sola volta per una fotografia. Ogni voto ha la data in cui viene espresso e può essere corredato da più motivazioni. In una certa data, un utente può esprimere al massimo un solo voto. Spec. 4 bis Il sistema informativo permette anche a critici di giornali di effettuare recensioni sui servizi fotografici. Un critico è caratterizzato dagli usuali dati anagrafici. Il critico scrive una recensione di servizio fotografico che può fare riferimento ad altre recensioni.

31 2.3. PROVA SCRITTA SI Soluzione Riportiamo e discutiamo i punti fondamentali; in alcune entità gli attributi semplici sono omessi. Spec. 1 Le fotografie hanno un codice identificativo e una descrizione. Una fotografia è relativa ad un luogo. Ogni luogo, che ha una descrizione ed una tipologia, è identificato da un codice che è univoco all interno della provincia alla quale il luogo appartiene. La provincia ha una sigla e una descrizione. Conviene introdurre Provincia come entità in quanto ha un identificatore (si può ovviamente considerare la sigla come univoca e quindi come identificatore di provincia) ed una descrizione. DESCR. COD DESCR. COD DESCR. SIGLA FOTOGRAFIA DEL (1,N) LUOGO IN (1,N) PROVINCIA Spec. 2 Una fotografia è scattata con una macchina fotografica, identificata dalla marca e dal modello, che può essere analogica o digitale. Per le macchine digitali occorre indicare la capacità del sensore e la potenza dello zoom ottico; per le macchine analogiche la marca dell ottica montata. È evidente che per descrivere macchina fotografica conviene introdurre una specializzazione in analogica e digitale. MARCA MODELLO MACCHINA (1,N) SCATTO FOTOGRAFIA (T,E) DIGITALE ANALOGICA Spec. 3 I fotografi e gli utenti sono descritti dagli usuali dati anagrafici; inoltre, gli utenti hanno anche un nomeutente, ovviamente unico. Una fotografia fa parte di un servizio fotografico. Un servizio fotografico è realizzato da un fotografo, ha una data ed una descrizione; in una certa data, un fotografo può realizzare un solo servizio fotografico; un servizio fotografico contiene da 5 a 100 fotografie. Per i fotografi e gli utenti si introduce una entità comune UTENTE/FOTOGRAFO che deve essere specializzata in UTENTE, in quanto solo per tale entità é valido l identificatore nomeutente. Conviene inoltre introdurre anche la specializzazione FOTOGRAFO in quanto il fotografo, anche se non ha degli attributi propri viene utilizzato nella descrizione del servizio fotografico. L entità UTENTE/FOTOGRAFO può essere anche chiamata PERSONA: il fatto che siano fotografi ed utenti si vede dalla gerarchia di generalizzazione.

32 32 CAPITOLO 2. ESERCIZIO 1 FOTOGRAFIA IN (5,100) SERVIZIO FOTOGR. DI DESCRIZIONE DATA (1,N) FOTOGRAFO NOMEUTENTE UTENTE (t,s) CF DATIANAGRAFICI UTENTE/ FOTOGRAFO Spec. 4 Il sistema informativo permette l accesso ad utenti che possono esprimere un voto per le fotografie, con il vincolo che un utente voti una sola volta per una fotografia. Ogni voto ha la data in cui viene espresso e può essere corredato da più motivazioni. In una certa data, un utente può esprimere al massimo un solo voto. Il voto riguarda un utente ed una fotografia, quindi viene espresso tramite una associazione binaria che chiamiamo VOTAZIONE tra UTENTE e FOTOGRAFIA. Si noti che tale associazione descrive solo il legame logico tra una foto ed un utente (ovvero solo il fatto che un utente ha votato per una certa foto); per esprimere il valore del voto occorre mettere un attributo voto per tale associazione; inoltre si aggiunge su tale associazione un attibuto data e motivazione (come attributo multiplo). Possiamo assumere che VOTAZIONE sia molti-a-molti: un utente vota più fotografie e, viceversa, su una foto verranno fatte più votazioni; assumiamo inoltre che entrambe le entità partecipino in modo opzionale. VOTO DATA FOTOGRAFIA (0,N) VOTAZIONE (0,N) UTENTE MOTIVAZIONI(1,N) L associazione binaria VOTAZIONE esprime già il vincolo che un utente voti una sola volta per una fotografia : è inutile reificare tale associazione. Per aggiungere allo schema E/R il vincolo che in una certa data, un utente può esprimere al massimo un solo voto: Il vincolo equivale a dire che in una certa data, un utente può effettuare al massimo una votazione, ovvero che VOTAZIONE deve essere identificato da data e da UTENTE. Allora si reifica l associazione (si noti che per definizione l identificatore di VOTAZIONE è UTENTE e FOTOGRAFIA: tale identificatore eve restare perchè deve continuare ad essere valido il vincolo che un utente voti una sola volta per una fotografia ):

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

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

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

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

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

Basi di dati. Esercitazione ER. Paolo Papotti. Esercizio 1.3.1. 1 giugno 2005

Basi di dati. Esercitazione ER. Paolo Papotti. Esercizio 1.3.1. 1 giugno 2005 Basi di dati Esercitazione ER 1 giugno 2005 Paolo Papotti Esercizio 1.3.1 Si vuole realizzare una base di dati per la comunità scientifica di ricerca paleontologica. Si devono memorizzare i dati riguardanti

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

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

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

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

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

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

Progettazione di un Database

Progettazione di un Database Progettazione di un Database Per comprendere il processo di progettazione di un Database deve essere chiaro il modo con cui vengono organizzati e quindi memorizzati i dati in un sistema di gestione di

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

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

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

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

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

Gestione Voti Scolastici

Gestione Voti Scolastici Gestione Voti Scolastici Progettare un modello di dati per la gestione delle informazioni riguardanti le prove, nelle diverse materie, sostenute dagli studenti di una scuola media superiore. Il sistema

Dettagli

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL.

Sviluppata da: Lo Russo - Porcelli Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. Pag. 1 di 6 6FRSR utilizzare il DBMS Postgresql per imparare il linguaggio SQL. 2ELHWWLYL GD UDJJLXQJHUH SHU JOL VWXGHQWL alla fine dell esercitazione gli studenti dovranno essere in grado di: 1. utilizzare

Dettagli

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO 20 SETTEMBRE 2012 Tempo a disposizione: 2 ore 30 minuti

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO 20 SETTEMBRE 2012 Tempo a disposizione: 2 ore 30 minuti Prof. L. Tanca e F. A. Schreiber APPELLO 20 SETTEMBRE 2012 Progettare la base di dati relativa alla situazione descritta nel seguito. Svolgere il progetto concettuale usando il modello ER, e il progetto

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

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

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti:

Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: Progettare una base di dati che permetta di gestire il problema descritto nel seguito, nei seguenti punti: 1. Definire uno schema Entità/Relazione che descriva il problema 2. Definire uno schema logico

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

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere. UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d

Dettagli

Traccia di soluzione dell esercizio del 25/1/2005

Traccia di soluzione dell esercizio del 25/1/2005 Traccia di soluzione dell esercizio del 25/1/2005 1 Casi d uso I casi d uso sono in Figura 1. Ci sono solo due attori: il Capo officina e il generico Meccanico. Figura 1: Diagramma dei casi d uso. 2 Modello

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

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA CONCETTUALE LE ASSOCIAZIONI

LE BASI DI DATI. Seconda parte La progettazione di database Relazionali SCHEMA CONCETTUALE LE ASSOCIAZIONI LE BASI DI DATI Seconda parte La progettazione di database Relazionali SCHEMA CONCETTUALE LE ASSOCIAZIONI L'associazione (in inglese Relationship) descrive eventuali legami concettuali tra una, due o più

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

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 database management system Access

Il database management system Access Il database management system Access Corso di autoistruzione http://www.manualipc.it/manuali/ corso/manuali.php? idcap=00&idman=17&size=12&sid= INTRODUZIONE Il concetto di base di dati, database o archivio

Dettagli

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1

Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1 Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di un circolo

Dettagli

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Si consideri il seguente schema di base di dati che vuole tenere traccia delle attività di un autofficina. MECCANICO (CodiceFiscale,

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

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari

Progettazione e realizzazione di un applicativo Web Annunci Immobiliari Corso di Gestione dell Informazione Studenti NON frequentanti A.A. 2009/2010 Progettazione e realizzazione di un applicativo Web Annunci Immobiliari 1 Scopo del progetto Si vuole realizzare un applicazione

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

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

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

Composizione. Tipo. Pubblicità. Numero ripetizioni. (1,N) (1,1) Composizione. Tipo. Messaggio promozionale. Codice. Azienda. Prodotto.

Composizione. Tipo. Pubblicità. Numero ripetizioni. (1,N) (1,1) Composizione. Tipo. Messaggio promozionale. Codice. Azienda. Prodotto. Diagramma ER Giorno Ora fine Composizione Palinsesto Informazione Fiction Spettacolo Giornalista Restrizione Messaggio promozionale spazio Interruzione allocazione Azienda Posizione Pubblicità Prodotto

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

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

Progettazione del Software, Laurea in Ingegneria Gestionale Progettazione del Software Laurea in Ing. Gestionale

Progettazione del Software, Laurea in Ingegneria Gestionale Progettazione del Software Laurea in Ing. Gestionale Progettazione del Software Laurea in Ing. Gestionale Prof. Toni Mancini & Prof. Monica Scannapieco Dipartimento di Informatica e Sistemistica Università di Roma La Sapienza Esercitazione E.A.1 Primi esercizi

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

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

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

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

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

Esame dell 8 settembre 2012

Esame dell 8 settembre 2012 Basi di Dati e Sistemi Informativi Errori ricorrenti nella progettazione concettuale Questo documento ha, come scopo, presentare alcuni gravi errori che ricorrono spesso nella progettazione concettuale

Dettagli

1. PRIME PROPRIETÀ 2

1. PRIME PROPRIETÀ 2 RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

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

Esercitazione di Basi di Dati

Esercitazione di Basi di Dati Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 15/22 Aprile 2004 Progettazione di un Database (DB) Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione,

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

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

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli

DATABASE. A cura di Massimiliano Buschi

DATABASE. A cura di Massimiliano Buschi DATABASE A cura di Massimiliano Buschi Introduzione Con Microsoft Access: Immissione dati e interrogazione Interfaccia per applicazioni e report Ma prima bisogna definire alcune conoscenze di base sui

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

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

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

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 30 settembre 2010 Compito A

Basi di dati 30 settembre 2010 Compito A Basi di dati 30 settembre 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

Esercitazione 7 Progettazione concettuale. Versione elettronica: L07.progConcettuale.pdf

Esercitazione 7 Progettazione concettuale. Versione elettronica: L07.progConcettuale.pdf Esercitazione 7 Progettazione concettuale Sistemi Informativi T Versione elettronica: L07.progConcettuale.pdf Esercizi di progettazione concettuale In questi esercizi vengono proposti degli estratti di

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

Basi di dati I Soluzione Quinto Homework del 9 gennaio 2013

Basi di dati I Soluzione Quinto Homework del 9 gennaio 2013 Basi di dati I Soluzione Quinto Homework del 9 gennaio 2013 Domanda 1 (50%) Si consideri la seguente schematizzazione di alcuni tour organizzati da un agenzia turistica: Tour N. 2345 Nome: Marocco Partenza:

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

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

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

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola:

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione di un sistema di gestione di uno studio

Dettagli

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Università degli Studi di L Aquila Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Prof. Gaetanino Paolone Dott. Ottavio Pascale a.a.2003-2004 Progetto Campo

Dettagli

Traduzione da ER a Relazionale

Traduzione da ER a Relazionale Traduzione da ER a Relazionale Costruito lo schema concettuale (modello ER) occorre tradurre lo schema ottenuto in uno schema logico ad esso equivalente, nel nostro caso useremo il modello relazionale

Dettagli

Università degli Studi di Ferrara

Università degli Studi di Ferrara Linee guida Corsi a scelta dello studente - anno accademico 2015/16 - (approvate dalla Facoltà di Medicina e Chirurgia nella seduta del 09 novembre 2011) Corso di laurea specialistica in Medicina e Chirurgia

Dettagli

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,

Dettagli

Esercizi su. Funzioni

Esercizi su. Funzioni Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità

Dettagli

Progetto di basi di dati Laboratorio di diagnosi mediche

Progetto di basi di dati Laboratorio di diagnosi mediche Progetto di basi di dati aboratorio di diagnosi mediche Descrizione e specifiche Si vuole realizzare il progetto della base di dati di laboratorio di diagnosi medica, partendo da un insieme di requisiti.

Dettagli

Il seguente esempio ha lo scopo di illustrare i 3 tipi di relazione 1:1,1:N,N:N. Tabella Conto: Tabella Conto:

Il seguente esempio ha lo scopo di illustrare i 3 tipi di relazione 1:1,1:N,N:N. Tabella Conto: Tabella Conto: Il seguente esempio ha lo scopo di illustrare i 3 tipi di relazione 1:1,1:N,N:N. Tabella Conto: Tabella Conto: Tabella Cliente: Tabella NumTel: Tabella Dati_Cliente: L'esempio è per ragioni di chiarezza

Dettagli

CAPITOLO 7 ESERCIZI SUL MODELLO ER

CAPITOLO 7 ESERCIZI SUL MODELLO ER CAPITOLO 7 (le soluzioni sono riportate da pag. 6 in poi) ESERCIZI SUL MODELLO ER Esercizio 1 Considerate lo schema ER in Figura 1: lo schema rappresenta varie proprietà di uomini e donne. a) Correggete

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

Gestione del workflow

Gestione del workflow Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario

Dettagli

Modello E-R. Modello relazionale

Modello E-R. Modello relazionale 1 - Cinema Hollywood Si deve progettare una base di dati a supporto della programmazione cinematografica della catena di cinema Hollywood. Al momento dell acquisto di un film da proiettare vengono memorizzati

Dettagli

Università di Parma Facoltà di Ingegneria. Polo Tecnologico Nettuno

Università di Parma Facoltà di Ingegneria. Polo Tecnologico Nettuno Università di Parma Facoltà di Ingegneria Polo Tecnologico Nettuno Guida ai servizi FINALITÀ...2 COORDINATORE...3 SEGRETERIA DIDATTICA E CEDI...4 TUTORI...5 DATI UTILI...6 Finalità L obiettivo di questa

Dettagli

Database 3 affitto veicoli. Testo del quesito

Database 3 affitto veicoli. Testo del quesito Database 3 affitto veicoli Testo del quesito La società salento trasporti dispone di diversi tipi di veicoli (moto, auto, furgoni, camion, ) che affitta ai propri clienti. La società vuole informatizzare

Dettagli

Associazioni. Informatica. Associazioni. Associazioni. Associazioni. Attributi. Possono esistere associazioni diverse che coinvolgono le stesse entità

Associazioni. Informatica. Associazioni. Associazioni. Associazioni. Attributi. Possono esistere associazioni diverse che coinvolgono le stesse entità Informatica Possono esistere associazioni diverse che coinvolgono le stesse entità Lezione 7 Lavora a Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione

Dettagli

Progettazione di Database. Un Esempio

Progettazione di Database. Un Esempio Progettazione di Database Un Esempio Data Base Management System Applicazione 1 Applicazione 2 Applicazione 3 DBMS A B C D E Il Modello Relazionale Una relazione è costituita su un insieme di domini, non

Dettagli

Basi di Dati e Microsoft Access

Basi di Dati e Microsoft Access Basi di Dati e Microsoft Access Lun: 16-18 e Mer: 14-17 Alessandro Padovani padoale@email.it Database: definizione Un database (DB) è una collezione di informazioni organizzata in gruppi, che consentono

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

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database Per comprendere al meglio cosa sia un database, dobbiamo prima introdurre il concetto di

Dettagli

Identificatori delle entità

Identificatori delle entità Identificatori delle entità Permettono di identificare in maniera univoca le occorrenze delle entità Ogni entità deve averne (almeno) uno Targa Automobile Modello Colore Nome Persona Data di nascita Indirizzo

Dettagli

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria ESAME DI STATO DI ABILITAZIONE ALL'ESERCIZIO DELLA PROFESSIONE DI INGEGNERE PRIMA PROVA SCRITTA DEL 22 giugno 2011 SETTORE DELL INFORMAZIONE Tema n. 1 Il candidato sviluppi un analisi critica e discuta

Dettagli

CORSO I.F.T.S. "TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE. Matricola 2014LA0033 DISPENSE DIDATTICHE MODULO DI PROGETTAZIONE SOFTWARE

CORSO I.F.T.S. TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE. Matricola 2014LA0033 DISPENSE DIDATTICHE MODULO DI PROGETTAZIONE SOFTWARE CORSO I.F.T.S. "TECNICHE PER LA PROGETTAZIONE E LA GESTIONE DI DATABASE Matricola 2014LA0033 DISPENSE DIDATTICHE MODULO DI PROGETTAZIONE SOFTWARE Dott. Imad Zaza Lezione del 16/07/2014 Page 1 Ristorante

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

Basi di dati I. Esercitazione proposta

Basi di dati I. Esercitazione proposta Basi di dati I Esercitazione proposta Premessa Viene richiesta la realizzazione di una piccola base di dati, attraverso un processo di progettazione concettuale e logica e con la realizzazione di alcune

Dettagli

CALCOLO COMBINATORIO

CALCOLO COMBINATORIO CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,

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

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database Uso delle basi di dati Uso delle Basi di Dati Il modulo richiede che il candidato comprenda il concetto di base dati (database) e dimostri di possedere competenza nel suo utilizzo. Cosa è un database,

Dettagli