Uitgebreide entiteit-relatiediagrammen, of EERD's, zijn gespecialiseerde ER-diagrammen die zeer nuttig kunnen zijn voor het modelleren van uw database. EERD's gebruiken verscheidene concepten die nauw verwant zijn aan objectgeoriënteerd ontwerp en programmeerwerk.
Dit artikel leest u in 3 minuten
Wil jij je eigen ER diagram maken? Probeer Lucidchart. Het is snel, simpel en compleet gratis!
Wat is een uitgebreid ER-diagram?
Uitgebreide entiteit-relatiemodellen (EERD's), in het Engels bekend als enhanced entity-relationship models of extended entity-relationship models, zijn geavanceerde databasediagrammen die sterk lijken op normale ER-diagrammen. Uitgebreide ERD's zijn modellen van hoog niveau die de vereisten en complexiteit van complexe databases weergeven.
Uitgebreide ER-diagrammen omvatten dezelfde concepten als gewone ER-diagrammen. Daarnaast bevatten EERD's ook:
-
Subtypes en supertypes (soms gekend als subklassen en superklassen)
-
Specialisatie en generalisatie
-
Categorie of unietype
-
Overname van attributen en relaties
Wil jij je eigen ER diagram maken? Probeer Lucidchart. Het is snel, simpel en compleet gratis!
Een ERD makenDefinities en voorbeelden uitgebreide ERD
De definities van de onderstaande concepten zijn uniek voor uitgebreide entiteit-relatiediagrammen en kunnen het begrip vergroten van de verschillen tussen de modelleringsconcepten van EERD's en ERD's. Als u uw kennis over de basisconcepten van ERD's wilt opfrissen, bekijk dan onze tutorial over ER-diagrammen en deze gids voor de fundamentele symbolen voor ER-diagrammen. Zodra u de ERD-structuur volledig begrijpt, bent u er klaar voor om uitgebreide entiteit-relatiediagrammen te maken.
Supertypes en subtypes
-
Supertype - een entiteitstype dat een relatie heeft met een of meerdere subtypes.
-
Subtype - een subgroep van entiteiten met unieke attributen.
-
Overname - het concept dat entiteiten van een subtype de waarden van alle attributen van het supertype overnemen of erven.
Let op: instanties van subtypes worden ook als instanties van supertypes geklasseerd.
Generalisatie & specialisatie
-
Generalisatie - het proces waarbij een algemeen entiteitstype uit een verzameling gespecialiseerde entiteitstypes wordt gedefinieerd.
-
Specialisatie - het tegenovergestelde van generalisatie, omdat het subtypes van het supertype definieert en relaties tussen die twee bepaalt .
Beperkingen
-
Disjunctiebeperkingen - u zult moeten bepalen of een instantie van een supertype tegelijk lid mag zijn van twee of meer subtypes. De disjunctieregel dwingt subklassen om disjuncte groepen van entiteiten te hebben. De overlapregel dwingt een subklasse (ook gekend als een instantie van een supertype) om een overlappende reeks entiteiten te hebben.
-
Volledigheidsbeperkingen - bepalen of een instantie van een supertype ook lid moet zijn van ten minste één subtype. De volledige specialisatieregel vereist dat elke entiteit in de superklasse tot een subklasse moet behoren. Net als bij een gewone ERD wordt volledige specialisatie voorgesteld door entiteiten met een dubbele lijn te verbinden. De gedeeltelijke specialisatieregel laat een entiteit toe om van geen enkele subklasse deel uit te maken. Dit wordt voorgesteld met een enkele lijn.
Discriminatoren van subtypes
Een subtypediscriminator is een attribuut van het supertype dat het subtype van een entiteit aangeeft. De waarden van het attribuut bepalen het bedoelde subtype.
-
Disjuncte subtypes - eenvoudige attributen die alternatieve waarden moeten hebben om mogelijke subtypes aan te geven.
-
Overlappende subtypes - samengestelde attributen waarvan de subdelen betrekking hebben op verschillende subtypes. Elk subdeel heeft een Booleaanse waarde die aangeeft of de instantie tot het gerelateerde subtype behoort.
Een effectieve EERD maken
Een goed ontworpen EERD zal u helpen om duurzame en nuttige opslagsystemen te bouwen. Houd rekening met het volgende wanneer u uw entiteit-relatiediagram evalueert om ervoor te zorgen dat u aan een systeemontwerp werkt dat voldoet aan belangrijke zakelijke vereisten:
-
Stabiliteit: Zal het diagram de veranderende noden van het bedrijf ondersteunen?
-
Breedte: Kunnen alle gegevens die we moeten opslaan worden georganiseerd in het model?
-
Flexibiliteit: Kunnen de gegevens in dit model opnieuw worden georganiseerd ter ondersteuning van bijkomende informatiebehoeften?
-
Efficiëntie: Is dit model de eenvoudigste oplossing? Zijn de gegevens gemodelleerd met de juiste symbolen?
-
Toegankelijkheid: Kunnen zowel de makers als de eindgebruikers van uw EERD het gemakkelijk begrijpen?
-
Conformiteit: Zal het model naadloos integreren met uw bestaande databasestructuur?