Ciao!
Sto progettando una base di dati per un catalogo di film. Ho realizzato lo schema concettuale e vorrei avere qualche parere, opinione o consiglio.
Questo è lo schema:
http://img24.imageshack.us/img24/4589/44879474.jpg
Per realizzare lo schema sono partito dai seguenti requisiti:
Si vuole realizzare una base di dati per la gestione di un catalogo di film. Di ogni film si vuole memorizzare il titolo sia della versione originale che di quella italiana, il genere, tenendo presente che un film può classificarsi in diversi generi, l'anno di produzione/rilascio. Tra due film può esserci una relazione, cioè un film può essere il sequel, il prequel oppure il remake dell'altro. Per ogni film si vuole memorizzare inoltre il regista, può trattarsi di più persone, e gli attori che formano il cast. Per i registi e gli attori si vuole memorizzare il nome, il sesso, la data di nascita ed eventualmente quella di morte. Si tenga presente che un regista può essere attore o viceversa, e che i ruoli possono combaciare nello stesso film. Infine si vuole memorizzare i premi ottenuti dai film nelle rassegne cinematografiche a cui hanno partecipato. Le rassegne cinematografiche sono divise in edizione annuali e ai premi sono associate nomination e vincitore.
Ho adottato una strategia di tipo "bottom-up" costruendo due schemi parziali: la parte superiore relativa a film, regista e attore, e la parte inferiore relativa alle rassegne cinematografiche. Il difficile è stato unirle. Alla fine ho creato un'entità NOMINATION collegata al premio in palio, al film candidato ed eventualmente al regista/attore candidato. Vi spiego le cardinalità delle relazioni che interessano l'entità NOMINATION:
- NOMINATION – PREMIO, uno a molti: ogni nomination è legata ad un solo premio e un premio ha più nomination.
- NOMINATION – FILM, uno a molti: ogni nomination è legata ad un solo film e un film può riceve più nomination.
- NOMINATION – PERSONA, uno a molti (opzionale): una nomination può essere legata anche ad una persona (regista o attore) e una persona può ricevere più nomination.
L'entità NOMINATION è poi una generalizzazione dell'entità VINCITORE, infatti il vincitore non è altro che una caso particolare delle nomination.
Spero di essere stato abbastanza chiaro nella spiegazione. Aspetto qualche considerazione, correzione o consiglio! Grazie!