POLITECNICO DI BARI CORSI DI LAUREA IN ING. INFORMATICA, ING. ELETTRONICA E ING. GESTIONALE PROVA SCRITTA DI SISTEMI INFORMATIVI 8 Aprile ’04 TRACCIA 1 nome_______________cognome______________________matr___________CdL____________ a) Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto. Per gestire i dati relativi alla vendita di auto nella città di Bari si utilizza una base di dati. Per ogni contratto di vendita interessa conoscere la data di stipula, l’auto venduta, il prezzo pattuito, l’acquirente e il consulente commerciale che si è occupato della vendita. Le informazioni relative alle auto disponibili alla vendita sono il numero di targa, il telaio, la cilindrata, il colore e i cavalli. E’ necessario tenere traccia dei dati anagrafici di venditori e acquirenti. Inoltre per ogni acquirente va specificata la professione e lo stipendio annuo. I venditori fanno capo ad una concessionaria, caratterizzata da un nome, un codice fiscale, una partita IVA ed un indirizzo, nella quale hanno un box numerato come ufficio. Ogni contratto di vendita può essere finanziato parzialmente (ed interessa sapere la cifra da finanziare) scegliendo uno dei finanziamenti proposti dalle società finanziarie (dotate di nome e partita IVA) convenzionate con la concessionaria. I finanziamenti sono caratterizzati da un identificativo univoco solo all’interno della società finanziaria e dai tassi T.A.E.G. e T.A.N. Per ogni concessionaria si vuole sapere anche quali sono tutte le società finanziarie convenzionate e l’anno in cui questa convenzione è stata stipulata. Indicare le cardinalità delle relazioni e un identificatore per ciascuna entità. b) Si definiscano le relazioni (tabelle) risultanti in SQL, avendo cura di esplicitare i vincoli di integrità. c) Si vuole realizzare un database relativo alla gestione delle trasferte del personale di un’azienda. E’ stata a tal fine costruita, da un inesperto progettista, una unica tabella descritta dai seguenti attributi: Tabella (Nome, Cognome, indirizzo, e-mail, CF, anno_assunzione, id_dipartimento, nome_dipartimento, telefono, cellulare, data_inizio_trasferta, destinazione_trasferta, data_fine_trasferta, costo_trasferta, id_albergo_convenzionato, nome_albergo_convenzionato, indirizzo_albergo_convenzionato) se ne determini la chiave e si individuino, esplicitandole, le dipendenze funzionali. Sulla base di queste si proceda alla normalizzazione in 3° forma normale, preservando le dip. Funzionali. d) Date le seguenti relazioni: UOVO (marca, tipo, peso, codice) NEGOZIO (id, nome, indirizzo) VENDITA(id_negozio, codice, data, numero_pezzi) esprimere in SQL le seguenti interrogazioni: 1) Il nome dei negozi che hanno venduto più uova fondenti che al latte 2) Il numero di uova Perugina vendute in tutto POLITECNICO DI BARI CORSI DI LAUREA IN ING. INFORMATICA, ING. ELETTRONICA E ING. GESTIONALE PROVA SCRITTA DI SISTEMI INFORMATIVI 8 Aprile ’04 TRACCIA 2 nome_______________cognome______________________matr___________CdL____________ a) Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto. Una società di consulenza ha il personale articolato in 5 figure professionali elencate di seguito in ordine di responsabilità crescente: - Enterprise: personale che si occupa di compiti amministrativi. - Analyst: personale che viene impiegato come analista di progetto - Consultant: personale che viene impiegato come consulente di progetto - Manager: personale che dirige i progetti - Partner: soci della compagnia che assumono la gestione finanziaria del progetto. Tutto il personale tranne gli enterprise deve seguire tutti i livelli della gerarchia negli avanzamenti di carriera, iniziando come analyst fino ad arrivare al livello partner. Di tutto il personale interessa sapere i dati anagrafici, la data di assunzione e lo stipendio annuo. Di consultant, manager e partner interessano anche le date in cui è avvenuto il passaggio a livelli gerarchici superiori a quello di analyst. La società lavora con progetti commissionati da aziende clienti, di cui interessa conoscere il nome, l’indirizzo e la partita IVA. Ogni progetto ha un nome, un costo e delle ore uomo stimate e coinvolge un solo partner, massimo 3 manager e diversi consultant e analyst. Per essere assunti da questa società, i candidati(di cui interessano i dati anagrafici e il titolo di studio) devono sottoporsi ad un iter di quattro colloqui, nei quali vengono esaminati nell’ordine da un enterprise, due manager diversi ed un partner. Di ogni colloquio interessa sapere l’esaminatore, la data e l’esito. Indicare le cardinalità delle relazioni e un identificatore per ciascuna entità. b) Si definiscano le relazioni (tabelle) risultanti in SQL, avendo cura di esplicitare i vincoli di integrità. c) Si vuole realizzare un database relativo alla gestione delle vendite di una farmacia. E’ stata a tal fine costruita, da un inesperto progettista, una unica tabella descritta dai seguenti attributi: Tabella (Nome, Cognome, indirizzo, e-mail, CF, telefono, cellulare, nome_farmacia, indirizzo_farmacia, nome_farmaco, codice_farmaco, costo_farmaco, data_acquisto_farmaco, data_scadenza_farmaco, id_casa_farmaceutica, nome_ casa_farmaceutica) se ne determini la chiave e si individuino, esplicitandole, le dipendenze funzionali. Sulla base di queste si proceda alla normalizzazione in 3° forma normale, preservando le dip. Funzionali. d) Date le seguenti relazioni: UOVO (marca, tipo, peso, codice) NEGOZIO (id, nome, via, città, civico) VENDITA(id_negozio, codice, data, numero_pezzi) esprimere in SQL le seguenti interrogazioni: 1) La marca di cioccolato più venduta a Milano 2) Il numero di uova vendute a Roma