Esercizi sul modello ER
Esercizio 01
Crea un diagramma ER a partire dalla seguente descrizione di un sistema informativo, prodotto dell’analisi dei requisiti:
Si vuole progettare una base di dati per la gestione delle sale riunioni dell’azienda MyCo. Per prima cosa si vogliono memorizzare le caratteristiche di ogni sala: nome, piano, capienza e disponibilità di telefono (indicando l’interno se presente) e/o videoproiettore (indicando la matricola). Oltre a ciò, si vogliono memorizzare gli eventi pianificati in quella sala, indicando per ogni evento nome, descrizione, data di inizio e data di fine. Infine, si vuole tenere traccia degli organizzatori di ogni evento, memorizzandone le generalità: codice fiscale, nome, cognome, ruolo, telefono ed indirizzo di posta elettronica.
Esercizio 02
Crea un diagramma ER a partire dalla seguente descrizione di un sistema informativo, prodotto dell’analisi dei requisiti:
Si vuole progettare una base di dati per la gestione delle edizioni dei telegiornali su diverse reti televisive. In primo luogo si vogliono memorizzare le informazioni sull’edizione del TG: data, ora di inizio, rete su cui è trasmesso, riferimento al giornalista conduttore. In ogni edizione si danno una serie di notizie. Ogni notizia è identificata da un numero progressivo unico per ogni edizione del TG; inoltre ogni notizia è contraddistinta dall’argomento. La notizia può essere commentata dal conduttore o associata ad un servizio. I servizi sono memorizzati nella base di dati e sono caratterizzati da un codice univoco, dal riferimento alla notizia, dalla durata e dall’eventuale riferimento all’inviato speciale. I giornalisti (sia conduttori che inviati speciali) sono contraddistinti tramite i loro dati anagrafici: CF, nome, cognome, indirizzo (costituito da via, città e paese), telefono e email. Per le edizioni dei TG in cui c’è anche la rassegna stampa, si vuole anche salvare la lista di quotidiani da cui verranno prese le notizie. Ogni quotidiano viene caratterizzato dalla data e dal titolo. Infine, ogni edizione viene associata anche ai propri ascolti. Si memorizzano il numero di ascoltatori e lo share.
Esercizio 03
Crea un diagramma ER a partire dalla seguente descrizione di un sistema informativo, prodotto dell’analisi dei requisiti:
Si progetti una base di dati utilizzata per la gestione di quotidiani. Ogni quotidiano è caratterizzato da un codice identificativo, un nome e un direttore attuale. Interessa tenere memoria dei diversi numeri pubblicati: ogni numero è contraddistinto da un id progressivo, unico nell’ambito dell’anno, la data di uscita e numero di pagine. Di ogni numero interessa memorizzare informazioni relative anche agli articoli che lo compongono. Un articolo è caratterizzato da un codice (unico nell’ambito del numero in cui è apparso), un titolo, un testo, uno o più autori e dai numeri di pagina che occupa. Infatti, un articolo potrebbe occupare più pagine (si pensi ad articoli che iniziano in prima pagina e continuano in una pagina interna). Gli articoli, inoltre, possono contenere delle fotografie che sono identificate da un codice univoco e che devono avere un autore, un’altezza e una larghezza. La base di dati deve anche gestire gli autori degli articoli e delle foto. Degli autori, oltre ai dati anagrafici, si conosce l’affiliazione (il giornale stesso o un altro ente). Dei giornalisti si vuole anche sapere l’ambito in cui sono specializzati.
Esercizio 04
Crea un diagramma ER a partire dalla seguente descrizione di un sistema informativo, prodotto dell’analisi dei requisiti:
Si vuole progettare la base di dati di un’applicazione relativa all’amministrazione di condomini, secondo le seguenti specifiche. Ogni condominio ha un nome (che lo identifica), un indirizzo e comprende una o più scale, ognuna delle quali comprende un insieme di appartamenti. Ad ogni scala è associato un codice (es: scala A) che la identifica assieme al nome del condominio e un valore che rappresenta la percentuale delle spese di condominio che sono di competenza di quella scala. Ogni appartamento è identificato, nel rispettivo condominio, dalla scala e da un numero (l’interno). Ad ogni appartamento è associata una quota, espressa in millesimi, che indica la frazione delle spese (della scala) che sono di competenza dell’appartamento. Ogni appartamento ha un proprietario per il quale sono di interesse il nome, il cognome, il codice fiscale e l’indirizzo (costituito da via, numero civico, città, CAP e paese) al quale deve essere inviata la corrispondenza relativa all’appartamento. Per la parte contabile, è necessario tenere traccia (includendo la data) delle spese sostenute dai condomini. In particolare, ogni spesa è associata ad un intero condominio oppure ad un singolo appartamento ed è identificata da un codice unico nell’anno in cui questa è stata effettuata. Per le spese di appartamento si vuole memorizzare la data in cui questa è stata approvata. Si vuole infine tenere traccia dei pagamenti effettuati relativi ai singoli appartamenti. Ogni pagamento è relativo ad uno e un solo appartamento ed è caratterizzato dall’ammontare pagato e dalla data.
Esercizio 05
Un club di astrofili gestisce serate di osservazione degli oggetti celesti visibili nel cielo di una certa zona. Partendo dall’analisi dei requisiti riportata qui sotto, completa la fase di progettazione concettuale della base di dati, producendo un diagramma ER.
La base di dati cataloga gli oggetti celesti suddividendoli in: pianeti, stelle, galassie. Tra gli oggetti celesti visibili ci sarebbero anche asteroidi e comete, ma essi non saranno inclusi in questa base di dati.
Per ogni oggetto si memorizzano un codice univoco e una descrizione.
Per i pianeti si registra inoltre: il nome, la distanza media dal sole, la dimensione, il nome dei suoi satelliti. Un pianeta può avere nessuno oppure molteplici satelliti.
Per le stelle si registra: la distanza e un nome, il quale è opzionale.
Per le galassie si memorizza la distanza dal sole e uno - e un solo - tipo (esempio: ammasso stellare, galassia a spirale, …).
Le stelle sono raggruppate in costellazioni. Ogni costellazione ha un nome univoco. Una stella può appartenere al massimo a una sola costellazione, ma anche a nessuna.
Il club organizza serate di osservazione caratterizzate da: giorno di osservazione, ora di inizio e ora di fine osservazione. Di ogni serata si conserva anche il numero massimo di partecipanti.
Si memorizzano inoltre gli oggetti celesti che verranno osservati nella serata e il codice fiscale del relatore che accompagnerà gli astrofili nell’osservazione.
Il sistema consente di registrare gli interessati alle serate di osservazione memorizzando, per ogni partecipante: il nome e cognome, un codice univoco e le serate di osservazione cui intende partecipare.