Va bene avere un'entità in un diagramma ER senza una relazione?


8

Sto creando un diagramma ER per un incarico di classe e mi chiedevo se sarebbe stato possibile creare un'entità che non aveva una relazione diretta con qualsiasi altra entità e semplicemente usare chiavi esterne per collegarle. Lo schema seguente mostra cosa mi piacerebbe fare

inserisci qui la descrizione dell'immagine

Fondamentalmente, il mio diagramma sta iniziando a diventare davvero complesso e sarebbe bello se non dovessi mantenere una connessione tra ogni singola entità.

FWIW, sto usando la notazione di Chen e Crow's Foot, se questo è di aiuto.

Risposte:


13

Un diagramma ER è semplicemente uno strumento per aiutarti nello sviluppo. Un diagramma ER non richiede nemmeno per mandato di mostrare tutte le entità nel sistema.

Quindi, per rispondere alla tua domanda con un percorso: è perfettamente accettabile avere un'entità su un diagramma che non ha alcuna relazione con nessun'altra entità. Considerare una tabella delle impostazioni utilizzata da una semplice applicazione per memorizzare le impostazioni del programma. Non avrebbe bisogno di altre entità per fare il suo lavoro. Ma sarebbe comunque un oggetto esistente nell'ambito del datastore.

Quindi, per rispondere alla tua domanda con un altro percorso: è possibile visualizzare sul diagramma ER il numero di diagrammi ER che è necessario per mostrare le informazioni che si sta tentando di rappresentare. Ma se si sceglie di omettere una relazione a fini di chiarezza, sarebbe comunque opportuno prendere nota del fatto che la R è omessa. Personalmente, ma -{#}con un numero all'interno dei cerchi relativi per ciascuna entità, con una nota a piè di pagina per quel numero nella parte inferiore della pagina. In questo modo gli altri lettori non dovranno chiedere se ci dovrebbe essere un'altra relazione.

Questo è il mio valore $ 0,05 su questo comunque. Il punto qui è che questo è in parte una questione di stile. Alcune persone ti diranno che devi sempre mettere le relazioni (come, ad esempio, il tuo capo potrebbe richiederlo, e questo vincerebbe il mio consiglio). Ma la verità finale è ciò che è nel database.


"Un diagramma ER non richiede nemmeno per mandato di mostrare tutte le entità nel sistema" - inoltre per i sistemi complessi è molto comune non farlo, avendo un diagramma ER per ogni sottoparte anziché uno che tenta di coprire tutto . Se un'entità ha collegamenti a entità non presenti nel diagramma corrente, è necessario includere un'entità o nota a piè di pagina "fittizia", ​​come suggerito sopra. Va bene che la stessa entità esista anche in più diagrammi all'interno dell'insieme, se la tua convenzione di denominazione è chiara dovrebbe essere ovvio che questo è il caso in cui l'hai fatto.
David Spillett,

1
Dovresti modificare la risposta per rendere più esplicito il feedback come questo
jcolebrand

Non ero del tutto sicuro che aggiungesse un vantaggio fondamentale alla risposta o che dovessi rimanere come una nota a piè di pagina - di solito lascio che il risponditore originale modifichi il extra se lo desiderano in questi casi. Felice di modificarmi se preferisci, però.
David Spillett,

1
No, vai avanti e modificalo. Questo è un sito della comunità, stai aggiungendo buoni dettagli.
jcolebrand

4

In virtù del fatto che due entità sono "correlate" tramite una chiave esterna, esiste una relazione diretta tra loro. Il fatto che tu scelga o meno di tracciare questa relazione in modo convenzionale dipende da te, tuttavia farei riferimento alla tua notazione come qualcosa come "Chen-Wilson" o "Chris's Crow Foot", dal momento che non è più "puro" Chen o Crow's Foot . Sono d'accordo con jcolebrand; documentare sicuramente il connettore di relazione mancante in modo che il tuo istruttore non penserà che tu abbia commesso un errore.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.