Continuando il nostro viaggio attraverso diverse notazioni ERD, esaminiamo la notazione Chen ERD.
Peter Chen, che ha sviluppato la modellazione entità-relazione e ha pubblicato il suo lavoro nel 1976, è stato uno dei pionieri dell'utilizzo dei concetti di relazione entità nella modellazione e nella progettazione di software e sistemi informativi. La notazione Chen ERD è ancora utilizzata ed è considerata un modo più dettagliato di rappresentare entità e relazioni.
Entità
Un'entità è rappresentata da un rettangolo che contiene il nome dell'entità.
Nella notazione Chen, distinguiamo tipi di entità :
-
entità
-
entità debole – un'entità che non può essere identificata in modo univoco solo per i suoi attributi. L'esistenza di un'entità debole dipende da un'altra entità chiamata entità proprietaria. L'identificatore dell'entità debole è una combinazione dell'identificatore dell'entità proprietaria e della chiave parziale dell'entità debole.
-
ente associativo – un'entità utilizzata in una relazione molti-a-molti (rappresenta una tabella aggiuntiva). Tutte le relazioni per l'entità associativa devono essere molte
Attributi
Nella notazione Chen, ogni attributo è rappresentato da un ovale contenente il nome dell'attributo:
Gli attributi sono collegati all'entità con linee rette:
Esistono tipi di attributi specifici :
-
attributo chiave – un attributo che identifica in modo univoco una particolare entità. Il nome di un attributo chiave è sottolineato:
Ad esempio, poiché il numero di identificazione del veicolo (VIN) è un codice univoco utilizzato per identificare i singoli veicoli (nessun veicolo ha lo stesso VIN), "VIN" può essere considerato l'attributo chiave per l'entità "CAR":
-
attributo chiave parziale (discriminatore) – un attributo che, combinato con l'attributo chiave dell'entità proprietaria, fornisce un'identificazione univoca per l'entità debole. Sottolineiamo il discriminatore con una linea tratteggiata:
-
attributo multivalore – un attributo che può avere molti valori (ci sono molti valori distinti inseriti per esso nella stessa colonna della tabella). L'attributo multivalore è rappresentato da un doppio ovale:
Ad esempio, ogni utente può avere diversi hobby, quindi l'“hobby” può essere considerato come un attributo multivalore per l'entità “utente”:
-
attributo derivato (o attributo calcolato) – un attributo il cui valore è calcolato (derivato) da altri attributi. L'attributo derivato può o meno essere fisicamente archiviato nel database.
Nella notazione Chen, questo attributo è rappresentato da un ovale tratteggiato:
Ad esempio, dopo aver indicato il prezzo IVA esclusa e l'aliquota IVA, possiamo calcolare il prezzo IVA inclusa:
Alcuni attributi possono essere ulteriormente suddivisi in parti più piccole. Ad esempio, l'attributo "indirizzo" può essere suddiviso in nome della via, numero civico, numero dell'appartamento, città, provincia, codice postale e paese.
Questi sono chiamati attributi compositi e sono rappresentati come segue:
Relazioni
Nella notazione Chen, una relazione è rappresentata da un diamante (rombo) contenente il nome della relazione.
Si distinguono due tipi di relazione:
-
rapporto forte – una relazione in cui l'entità è indipendente dall'esistenza di altre entità e la PK di Child non contiene la componente PK dell'entità padre. Una relazione forte è rappresentata da un unico rombo:
-
relazione debole (di identificazione) – una relazione in cui l'entità figlio dipende dall'esistenza dal genitore e PK dell'entità figlio contiene il componente PK dell'entità padre. Questa relazione è rappresentata da un doppio rombo:
Opzionalità di una relazione
-
Analogamente alla notazione di Barker, un obbligatorio relazione è rappresentata da una linea continua:
-
Un opzionale relazione è rappresentata da una linea tratteggiata come nella notazione di Barker:
Cardinalità
Il grado di parentela (cardinalità ) è rappresentato dai caratteri “1”, “N” o “M” posti solitamente alla fine delle relazioni:
-
uno a uno (1:1)
Il dipendente può gestire un solo reparto e ogni reparto può essere gestito da un solo dipendente:
-
uno a molti (1:N)
Il cliente può effettuare più ordini, ma ogni ordine può essere effettuato da un solo cliente:
-
molti a uno (N:1)
Molti dipendenti possono appartenere a un reparto, ma un determinato dipendente può appartenere a un solo reparto:
-
molti a molti (M:N)
Uno studente può appartenere a più di un'organizzazione studentesca e un'organizzazione può ammettere più di uno studente:
Limiti di partecipazione
Un insieme di entità può partecipare a una relazione in tutto o in parte.
-
Partecipazione totale significa che ogni entità nell'insieme è coinvolta nella relazione, ad esempio, ogni studente deve essere guidato da un professore (non ci sono studenti che non siano guidati da alcun professore). Nella notazione Chen, questo tipo di relazione è rappresentato come una doppia linea.
-
Partecipazione parziale significa che non tutte le entità del set sono coinvolte nella relazione, ad esempio, non tutti i professori guidano uno studente (ci sono professori che non lo fanno). Nella notazione Chen, una partecipazione parziale è rappresentata da una singola riga.
La relazione sopra mostrata significa che ogni studente, senza eccezioni, deve essere guidato da un professore scelto, e un professore, ma non tutti, può guidare molti studenti. Quindi non c'è studente che non sia guidato da un professore, e d'altra parte ci possono essere professori che non guidano nessuno studente.
Ora, vediamo come appare il nostro esempio con libro e capitolo (presentato nella parte precedente) nella notazione Chen.