credo che il modo più semplice sia con un esempio:
Uno zoo vuole mettere su un sistema per censire tutti i suoi animali, organizzandoli per :
- ordine di appartenenza
- specie
- numero di esemplari adulti (maschio/femmina)
- numero di cuccioli(maschio/femmina)
- stato di salute
in generale il dubbio più diffuso è tra relazione con altra entità ed attributo; dunque cominciamo con l’identificare le entità, che volendo semplificare al massimo, sono quelle proprietà il cui valore può essere scelto all’interno di un elenco, popolato in precedenza; per l’esempio di cui sopra, dunque:
- ordine di appartenenza:
- mammiferi,
- rettili,
- uccelli
- ….
- Specie
- numero di esemplari adulti (maschio/femmina)
- numero di cuccioli(maschio/femmina)
- stato di salute
le voci tagliate non sono entità
Procediamo con la progettazione:
l’entità principale è:
animale
a tale entità assegniamo i seguenti attributi:
- identificativo
- sesso
- anno di nascita
l’entità animale è in relazione con l’entità specie, con che cardinalità?
Ad 1 animale posso associare 1 specie
Ad 1 specie posso associare n animali
Concludo che la relazione animale – specie è di tipo n <–> 1
Con analogo ragionamento:
la relazione specie – ordine è di tipo n <–> 1
la relazione animale – salute è di tipo n <–> 1