Qui trovi le soluzioni degli esercizi riguardo la realizzazione dello schema E-R relativo a diversi progetti di database.
Soluzione degli esercizi di progettazione dello schema E-R
Esercizio 1: La società di calcio
La società calcistica Giorgi Calcio vuole creare un database in grado di gestire le informazioni dei:
Giocatori iscritti, memorizzando il nome, il cognome, il telefono, l'indirizzo di residenza, l'età ed il codice fiscale;
La categoria calcistica a cui appartiene il giocatore. Della categoria calcistica memorizzare il nome, il numero di anni minimo e massimo che i giocatori possono avere per far parte di tale categoria;
Il ruolo ricoperto dal giocatore, memorizzandone il nome e la descrizione del ruolo.
Nota Bene: In fase di iscrizione ad un giocatore viene assegnata una sola categoria ed almeno un ruolo che è in grado di ricoprire.
(Suggerimento: Ragiona su come memorizzare l'età e l'indirizzo di residenza del giocatore nel database)
Schema E-R
Regole di lettura:
Ogni giocatore deve appartenere ad una categoria;
Ogni categoria può avere uno o più giocatori;
Ogni giocatore deve ricoprire uno o più ruoli;
Ogni ruolo può essere ricoperto da uno o più giocatori.
Esercizio 2: Lo zoo
Il bioparco di Roma vuole informatizzare la gestione delle informazioni relative agli animali che vivono al suo interno. In particolare, si vuole memorizzare le informazioni relative al nome, alla data di nascita, al colore predominante che lo caratterizza e alla specie a cui appartengono. Riguardo la specie si vuole salvare nel DB anche una descrizione della specie ed il cibo preferito.
Per il giardino zoologico è importante capire in quale settore dello zoo si trova ciascun animale. Inoltre, per ciascun settore si vuole conoscere la posizione del settore ed il suo nome.
Nota Bene: Un animale non può appartenere a più di una specie.
(Suggerimento: Ragiona su come memorizzare la posizione del settore)
Schema E-R
Regole di lettura:
Ogni animale deve appartenere ad una specie;
Ogni specie può avere uno o più animale che le appartengono;
Ogni animale deve trovarsi in un settore;
Ogni settore può ospitare uno o più animali.
Esercizio 3: Il fantacalcio
Due appassionati di fantacalcio vogliono realizzare un sito che gestisca le informazioni relative al fantacalcio. In particolar modo, il sito deve poter mostrare la lista dei giocatori presenti nel database. Tramite la base di dati si deve poter risalire sia alla squadra dove un giocatore milita nell'anno in corso e sia quelle dove ha giocato in passato. In più per ogni giocatore si vuole conoscere le partite in cui è sceso in campo. Di ogni partita si devono conoscere le squadre coinvolte e i goal realizzati da entrambe.
Nota bene: se il testo non specifica molti attributi, l'amministratore della base di dati è libero di inserire attributi a sua scelta.
(Suggerimento: Se un attributo non è proprio di un'entità ma si riferisce a due entità legate da un'associazione... Allora tale attributo va messo a tale associazione che lega le entità).
Schema E-R
Regole di lettura:
Ogni giocatore deve appartenere ad una o più squadre;
Ogni squadra può avere uno o più giocatori che le appartengono;
Ogni squadra può giocare una o più partite;
Ogni partita deve essere giocata da una o più squadre;
Ogni giocatore può essere titolare in una o più partite;
Ogni partita può avere uno o più giocatori titolari.
Esercizio 4: Olimpiadi scolastiche
Si vuole raccogliere e organizzare le informazioni relative ai risultati nelle diverse olimpiadi scolastiche (matematica, fisica, informatica...) svolte dagli studenti della scuola nel corso dei diversi anni. Per ogni olimpiade a cui partecipa uno studente, gli sarà assegnato un punteggio ed una posizione. Grazie ai dati raccolti nel database sarà possibile estrapolare l'informazione del vincitore di ogni gara.
Schema E-R
Regole di lettura:
Ogni studente può ottenere uno o più risultati;
Ogni risultato deve essere ottenuto da uno studente;
Ogni risultato deve riferirsi ad un'olimpiade;
Ogni olimpiade può avere uno o più risultati.
Esercizio 5: La gestione dei progetti
Il capo della Tech Company vuole gestire i progetti della propria azienda. A tal proposito vuole memorizzare le informazioni dei progetti, delle fasi che lo compongono, delle attività che si svolgono in ogni singola fase e dei dipendenti che lavorano al progetto. Inoltre, il database deve poter far comprendere:
quale dipendente dell'azienda svolge il ruolo di project manager per ogni singolo progetto;
quale dipendente coordina ogni singola attività;
quali sono i dipendenti che per ogni attività devono essere consultati, informati o coinvolti operativamente.
Nota bene: per ogni progetto esiste un solo project manager. Per ogni attività esiste un solo dipendente che la coordina. Un'attività deve essere inclusa in una sola fase.
Schema E-R
Regole di lettura:
Ogni progetto deve avere uno o più lavoratori che ci lavarano;
Ogni dipendente può lavorare in uno o più progetti;
Ogni progetto deve essere gestito da un dipendente (ossia il dipendente che svolge il ruolo di project manager);
Ogni dipendente può gestire uno o più progetti;
Ogni dipendente può coordinare una o più attività;
Ogni attività deve essere coordinata da un dipendente;
Ogni attività può consultare uno o più dipendenti;
Ogni dipendente può essere consultato in una o più attività;
Ogni attività può informare uno o più dipendenti;
Ogni dipendente può essere informato in una o più attività;
Ogni attività deve avere uno o più dipendenti che ci operano;
Ogni dipendente può operare in una o più attività;
Ogni progetto può avere una o più fasi;
Ogni fase deve riferirsi ad un solo progetto;
Ogni fase può prevedere una o più attività;
Ogni attività deve essere prevista in una fase.
Esercizio 10: Gite scolastiche
La scuola Informatica & Co. vuole informatizzare la gestione delle gite scolastiche. A tal proposito si forniscono le seguenti regole di lettura:
Ogni gita deve essere svolta da una o più classi;
Ogni classe può svolgere una o più gite;
Ogni gita deve essere gestita da un docente;
Ogni docente può gestire una gita;
Ogni classe deve essere coordinata da un docente;
Ogni docente può coordinare una classe.
Realizzare lo schema E-R che deriva dalle regole di lettura. Aggiungere chiavi primarie e attributi per le entità coinvolte.
Schema E-R
Esercizio 11: I corsi pomeridiani
La scuola Informatica & Co. vuole organizzare dei corsi tenuti dai propri docenti. Ogni corso è specifico per una materia e vi possono partecipare gli studenti della scuola.
Per la progettazione del database tenere conto che:
Ci possono essere delle materie che per mancanza di richiesta non prevedano alcun corso;
Ci possono essere delle materie per cui si attiveranno più corsi, in quanto vi sono molteplici richieste;
La scuola ha sicuramente docenti per tutte le materie (anche più di uno);
Gli studenti non sono obbligati ad iscriversi ai corsi, in quanto l'iscrizione ai corsi pomeridiana è facoltativa.
Schema E-R