Database
 sql >> Database >  >> RDS >> Database

Set di problemi 1 – Identificazione delle entità

In un precedente articolo sulla modellazione dei dati abbiamo promesso di fornirvi una serie di esercizi per esercitarvi a trovare entità. Bene, eccoli qui. Buon divertimento!

Problema 1:Scuola di lingue

Il signor Trotter, titolare di una scuola di lingue in rapida crescita, vuole introdurre un nuovo sistema nella sua azienda. Non può più tenere traccia di tutte le informazioni da solo, quindi ha chiesto il nostro aiuto. È un po' caotico, però. Questo è quello che ha detto:

Ci sono dozzine di nuove persone che vengono qui e non so più cosa fare! Ad esempio, la scorsa settimana è venuta una ragazza di nome Hannah e voleva diventare una studentessa, ma non riuscivo a trovare il mio taccuino quindi non potevo scrivere il suo cognome. Poi mi ha chiesto del tipo di corsi che offriamo e beh... ne abbiamo molti, quindi le ho mostrato il calendario in cui annoto tutte le lezioni. Scelse il cinese e poi chiese chi lo insegnava. Bene, ho detto, abbiamo molti insegnanti qui, quindi ho iniziato a guardare nella mia casella di posta elettronica per vedere chi ho scritto sull'insegnamento del cinese in questo trimestre. Ci è voluto più tempo di quanto mi aspettassi e Hannah se ne è andata. Che peccato!

Sulla base della descrizione, suggerisci alcune entità per il nuovo sistema del signor Trotter in modo che possa gestire la sua scuola in modo più efficace.

Soluzione:

All'inizio, il signor Trotter fornisce l'esempio di Hannah che vuole iscriversi a un corso. Nel nostro sistema, sarebbe una delle tante istanze dell'entità Student . Gli studenti nel nostro sistema si iscrivono a un Course , che è un altro buon candidato per un'entità. Infine, la ragazza chiede del Teacher – naturalmente, vogliamo tenere traccia anche di loro, in modo che diventino la terza entità.


↑ Fai clic sul logo per visualizzare in anteprima il modello nel tuo browser | Scarica il modello come file png


Problema 2:scrittore occupato

Joanne L. Bowling lavora per varie aziende e scrive cose per loro. È molto impegnata e vorrebbe avere un'applicazione conveniente che tenga traccia di tutto ciò che ha scritto. Questa applicazione sarà sotto forma di portafoglio. Così ha descritto il suo lavoro:

Ho molto talento e scrivo tantissime cose diverse. Per esempio, la scorsa settimana ho scritto un articolo sull'ultima crisi economica per un giornale. Non so molto di economia, ma ho letto un po' e sono riuscita a comporre un bell'articolo. D'altra parte, un mese fa un altro famoso quotidiano ha pubblicato un mio serial. Bene, quello riguardava la storia dell'arte nei Paesi Bassi. Avevo già una certa conoscenza nel campo perché 5 anni fa ho scritto un libro su Rembrandt, che è stato pubblicato l'anno scorso, tra l'altro. È quasi sempre lo stesso quando lavoro con i giornali; i loro compiti sono facili e veloci. È un'altra storia con le case editrici, però. Verifica, editing... ci sono tanti passaggi e tante scadenze che devo ricordare!

Sulla base della descrizione, suggerisci alcune entità generali che potrebbero essere utilizzate in un'applicazione affinché Joanne tenga traccia di tutto ciò che ha scritto. Pensa alla seguente domanda:che tipo di cose ha scritto e dove le ha pubblicate?

Soluzione:

Come possiamo vedere, Joanne scrive due tipi di composizioni. I primi sono articoli più brevi che vengono pubblicati sui giornali. Sono compiti veloci e non richiedono molte informazioni. Il secondo tipo di composizione è più lungo e complicato:scrivere libri. Sono pubblicati da case editrici. È meglio tenerli come un'entità separata. Tutto sommato, abbiamo due categorie principali di cose che Joanne scrive:Article e Book . Abbiamo anche due categorie di aziende che li pubblicano:Newspaper e Publishing House .


↑ Fai clic sul logo per visualizzare in anteprima il modello nel tuo browser | Scarica il modello come file png


Problema 3:Negozio di tè

Mark Tee possiede un piccolo negozio in una strada laterale di una città di medie dimensioni. Aveva solo pochi clienti, finché un giorno un famoso blogger lo scoprì durante i suoi viaggi e ne pubblicò un post. Ha detto che il negozio di Mark è la migliore fonte di tè al mondo. Mark ora ha così tanti clienti che non sa più cosa c'è in magazzino. Ha bisogno di un sistema che lo aiuti a organizzare i suoi prodotti. Questo è quello che ha detto:

Le persone acquistano i miei prodotti tutto il giorno e devo tenere traccia di ciò che ho in magazzino. Vendo varie cose. Il tè è il più importante di loro, ovviamente. Sono molto dettagliato quando si tratta di tè:ho bisogno di informazioni su qualità, colore, origine... Ogni singola varietà ha almeno alcune di queste proprietà.

Vendo anche molto caffè, ma il caffè è diverso e per descriverlo si usano cose diverse. E poi ci sono le erbe aromatiche come il rooibos o la yerba mate. Gli appassionati di tè chiamano queste tisane o infusi; non sono davvero "tè" e non ho bisogno di molte informazioni aggiuntive su di loro nel mio sistema.

Leggi la descrizione sopra e suggerisci alcune entità diverse per il sistema di gestione delle scorte di Mark.

Soluzione:

Come puoi vedere, ci sono tre tipi di prodotti e quindi tre entità nel nostro sistema:Tea , Coffee e Tisane . (Non trattiamo rooibos o yerba mate separatamente, perché Mark non distingue tra loro.)


↑ Fai clic sul logo per visualizzare in anteprima il modello nel tuo browser | Scarica il modello come file png


Problema 4:azienda farmaceutica

Un'azienda farmaceutica che produce farmaci vorrebbe avere un sistema che aiuti nella sua gestione. Questa è la descrizione che ci è stata inviata da uno dei dipendenti dell'azienda:

Nella nostra azienda, i prodotti sono ovviamente vari farmaci con proprietà specifiche. Produciamo antidolorifici, antibiotici e altri farmaci. Sono prodotti in vari reparti. In ogni reparto ci sono dipendenti. I dipendenti sono qualificati per l'esecuzione di specifici tipi di produzione. Nel corso del loro lavoro, i dipendenti utilizzano dispositivi speciali per aiutare a produrre i farmaci. Naturalmente, non produrrebbero nulla senza i componenti adeguati! Oh, a proposito, la produzione è divisa in lotti, gruppi di prodotti realizzati in un'unica operazione. Tutto questo è necessario per la nostra azienda. Abbiamo bisogno di memorizzare informazioni dettagliate su ogni sua parte nel nostro sistema.

Sulla base di quanto sopra descritto, suggerire alcune entità da utilizzare nel sistema delle aziende farmaceutiche.

Soluzione:

Nell'azienda di cui sopra, la produzione si basa su Batches che consistono in Drugs . I farmaci sono costituiti da Components . Ci sono anche vari Departments con Devices e Employees . Questi sei nomi in grassetto diventano le nostre entità.


↑ Fai clic sul logo per visualizzare in anteprima il modello nel tuo browser | Scarica il modello come file png


Problema 5:database dei film

John è uno zelante studente di cinema e vuole creare un nuovo sito web sui film. Ha descritto l'idea in questo modo:

Ci saranno informazioni su varie cose nel mio database. Prima di tutto, ci saranno i film, di diverso tipo. In ogni film ci sono attori:voglio anche memorizzare informazioni su di loro. Non solo dati professionali, come i film in cui hanno recitato, ma anche cose divertenti o informazioni personali. Poi ci sono i registi. Sono molto importanti nei film, quindi voglio scriverne anche io. E gli studi cinematografici, ovviamente! Non molti siti web li menzionano, ma sono importanti anche per me. Infine, ci saranno le recensioni per tutti i film.

Sulla base della descrizione precedente, suggerisci alcune entità per il database dei film di John.

Soluzione:

Possiamo identificare chiaramente 5 entità nella descrizione:Movie , Actor , Director , Studio e Review .


↑ Fai clic sul logo per visualizzare in anteprima il modello nel tuo browser | Scarica il modello come file png