ER-diagrammen
Wat is een entiteit-relatiediagram?
Een entiteit-relatiediagram (ook wel een ER-diagram of simpelweg ERD genoemd) laat zien welke interactie entiteiten (personen, objecten en concepten) met elkaar hebben. Met deze conceptuele gegevensmodellen kunnen ontwikkelaars en ontwerpers de relaties tussen belangrijke software-elementen visualiseren. ERD's, gemaakt door computerwetenschapper Peter Chen in de jaren 70, worden veel gebruikt door bedrijven bij het ontwerpen van databases. Maar ERD's kunnen ook relaties tussen andere bedrijfselementen aangeven, zoals rollen (bijvoorbeeld de relatie tussen een productmanager en een ontwikkelaar), tastbare bedrijfsobjecten (zoals een product of dienst) en niet-tastbare bedrijfsobjecten (zoals een product backlog). Het diagram zelf is een soort flowchart. Het is een logisch model dat laat zien hoe gegevens van de ene entiteit naar de andere stromen. Met deze eenvoudig te volgen indeling kunnen softwareontwikkelaars en -ontwerpers de structuur van een systeem duidelijk visualiseren.
Symbolen in een entiteit-relatiediagram
Elk diagram bevat een selectie entiteit-relatiediagramsymbolen. Hier volgen de meest voorkomende symbolen:
Rechthoeken
Rechthoeken geven de bovenliggende entiteiten aan. Ze hebben vaak zwakke entiteiten (dubbele rechthoeken) die van ze afhankelijk zijn.
Ovalen
Attributen worden weergegeven door ovalen. Deze beschrijven de kenmerken van een entiteit.
Ruiten
Ruiten worden gebruikt om de relaties tussen entiteiten weer te geven.
Pijlen en verbindingslijnen
Lijnen en pijlen worden gebruikt om te laten zien welke entiteiten aan elkaar zijn gerelateerd.
Kardinaliteiten
Kardinaliteiten geven aan hoeveel informatie van de ene naar de andere stroomt (hierover later meer).
Waarom is ERD belangrijk in databaseontwerp?
Voor het lanceren van nieuwe software hebben ontwikkelaars en databaseontwerpers een eenvoudige maar effectieve manier nodig om de structuur te visualiseren. Ze moeten weten hoe de entiteiten samenwerken, wat de attributen van de entiteiten zijn en hoe de entiteiten aan elkaar zijn gerelateerd. Hierbij kan een logisch ER-model helpen. Met een ERD kunnen ontwikkelaars alle belangrijke elementen van een nieuwe database in kaart brengen. Ze kunnen zien hoe de software zal werken, bepaalde relaties van te voren testen en eventuele zwakke punten in de software opsporen voordat deze live gaat. Dit leidt tot een soepeler proces voor het ontwikkelteam wanneer alles live gaat. Het maken van een ERD helpt ontwikkelaars ook verbeterpunten te identificeren in bestaande databases. In een ER-diagram kan gemakkelijk worden gevisualiseerd op welke punten de huidige software moet worden verbeterd. Ontwikkelaars kunnen vervolgens de fouten in databases opsporen om de software te verbeteren.
Wat zijn de drie hoofdonderdelen van een ER-diagram?
De drie onderdelen van een entiteit-relatiediagram zijn:
Entiteiten
Entiteiten worden meestal weergegeven als rechthoek en het zijn zelfstandige naamwoorden (objecten, personen, concepten of gebeurtenissen). Verschillende symbolen staan vaak voor verschillende soorten entiteiten. Zo wordt een sterke entiteitenreeks meestal weergegeven met een rechthoek en een zwakke entiteitenreeks met een dubbele rechthoek.
Attributen
Attributen zijn de kenmerken van een entiteit. Stel dat je ER-diagram de software in kaart brengt die studenten gebruiken om zich aan te melden een universiteit. Onder de entiteit Student wordt de volgende informatie genoemd als attributen: Student_No, Student_Name en Course_Of_Study.
Relaties
In een ER-diagram hebben de verbindingslijnen en pijlen labels. Deze labels geven weer hoe de entiteiten interactie hebben en laten daardoor de ontwikkelaar de onderlinge relaties zien. Verschillende soorten verbindingslijnen hebben ook verschillende betekenissen en tonen ontwikkelaars hoeveel gegevens van de ene entiteit naar de volgende stromen. Dit zijn kardinale relaties, die later nader worden uitgelegd. Met deze drie onderdelen kunnen ontwikkelaars de belangrijkste elementen van een nieuwe of bestaande database weergeven.
Voordelen van een entiteit-relatiediagram
Het gebruik van een entiteit-relatiediagram heeft een aantal voordelen.
1. Relaties visualiseren
Een ERD is een fysiek model van de relaties tussen entiteiten. Hiermee kun je visualiseren hoe entiteiten zich tot elkaar verhouden, hoe hun relaties werken en op welke punten deze relaties kunnen worden verbeterd.
2. Complexe systemen vereenvoudigen
Maak complexe systemen en databases inzichtelijk met een ER-diagram. Bekijk hoe onderling verbonden entiteiten verbinding maken en overlappen om beter te begrijpen hoe het systeem werkt.
3. Medewerkers en stakeholders informeren
Gebruik een logisch gegevensmodel (zoals een ER-diagram) om nieuwe en bestaande medewerkers te laten zien hoe je systemen werken. Gebruik het om interne en externe stakeholders bij te praten en iedereen op de hoogte te houden.
4. Eenvoudig te maken
Entiteit-relatiemodellen zijn eenvoudige diagrammen en gemakkelijk te begrijpen. Je hoeft geen softwareontwikkelaar te zijn om het diagram te maken, en je hebt ook geen technische kennis nodig om het te begrijpen. En met een virtuele werkomgeving als Miro kun je een kant-en-klare template gebruiken om mee te beginnen.
Voorbeeld van een ER-diagram
Bekijk de template voor entiteit-relatiediagrammen voor een voorbeeld van een fysiek gegevensmodel in actie. Het diagram laat een ERD zien voor de stadia van de klantreis tijdens het kopen en ontvangen van een product. Als de bestelling is geplaatst, identificeert het bedrijf het correcte product en levert het aan de klant.
Dit ERD laat zien hoe deze entiteiten samenwerken, te beginnen bij de klant en diens attributen. Hiervandaan geeft het diagram alle attributen weer die aan de specifieke bestelling zijn gerelateerd en gebruikt de 'een-op-veel' kardinaliteit van de klant ten opzichte van de bestelling. In essentie kan één klant meerdere bestellingen plaatsen of meerdere artikelen bestellen tijdens één aankoop. De bestellingsentiteit splitst zich vervolgens in twee richtingen. De diagramstroom loopt naar de producten en de productcategorieën aan de rechterkant. Dit wordt gebruikt om precies te bepalen welke producten klanten hebben besteld. Als deze informatie is ontvangen, gaan de gegevens verder naar de leveringsfase, waarin de klant de bestelling ontvangt. Dit is een voorbeeld van een ER-diagram dat goed illustreert hoe veelzijdig het diagram kan zijn.
Een entiteit-relatiediagram maken
De digitale werkomgeving van Miro is het perfecte platform voor samenwerkende teams om een intuïtief en visueel aantrekkelijk ERD te maken. Begin met het selecteren van deze gratis template voor entiteit-relatiediagrammenen volg de onderstaande stappen om een ER-diagram te maken.
1. Entiteiten identificeren
De eerste stap is het identificeren van alle entiteiten waaruit je database of proces bestaat. Deze stap ziet er voor iedereen anders uit. Als je een database of een stuk software in kaart brengt, identificeer je alle hoofdelementen van de software. Maar als het gaat om een proces of bedrijfsstructuur, dan richt je je op bedrijfselementen en relevante rollen. Uiteindelijk ben jij degene die de juiste entiteiten identificeert op basis van het model dat je in kaart wilt brengen. Om je op weg te helpen, geven we hier enkele voorbeelden van ERD-entiteiten:
Een persoon
Voorbeelden zijn een klant, medewerker, student of patiënt.
Objecten
Voorbeelden zijn producten, machines en voertuigen.
Gebeurtenissen
Voorbeelden zijn klantenwerving, een verkoop voltooien of een vernieuwing uitvoeren.
Op dit punt in het proces hoef je je nog niet te veel zorgen te maken over het in een bepaalde volgorde zetten van de elementen. Dat doe je pas wanneer je de relaties identificeert. Richt je in plaats daarvan op het opnemen van elke entiteit om te zorgen dat je databasediagram zo nauwkeurig mogelijk is.
2. Attributen toevoegen
Nu kun je attributen toevoegen om de entiteiten te karakteriseren. We gebruiken een voorbeeld om dit te illustreren. Stel dat een van je entiteiten een productkleur is. Binnen deze entiteit kunnen attributen het volgende bevatten: — Naam van de kleur — Kleurcode — Kleur-id Al deze informatie voegt details toe aan de entiteit. Of je nu een database of een bedrijfsproces wilt weergeven, attributen zijn essentieel. Ze definiëren alle eigenschappen die een entiteit definiëren, en brengen daarmee de belangrijkste informatie naar de voorgrond van het diagram.
3. Relaties tussen entiteiten identificeren
Als de entiteiten en attributen op hun plek staan, is het tijd om de relaties aan te geven. Gebruik verbindingslijnen en pijlenom de entiteiten te verbinden en daarmee hun relaties aan te geven. Niet alle entiteiten zijn met elkaar verbonden – dat is oké. Richt je op de elementen die aan elkaar gerelateerd zijn en verbind deze. Als alle verbindingslijnen zijn geplaatst, kun je labels toevoegen om het type relatie te beschrijven. Stel dat je twee entiteiten hebt: een klant en een bestelling. Dan kun je een label aan de verbindingslijn toevoegen om de relatie tussen deze entiteiten te laten zien. Op het label staat 'Plaatsen', wat betekent dat de entiteiten aan elkaar gerelateerd zijn door een specifieke actie (als een klant een bestelling plaatst). Hoewel dit maar een bescheiden stukje informatie is, biedt het extra context, waardoor iedereen die het diagram leest, makkelijker kan begrijpen hoe en waarom bepaalde elementen verbonden zijn.
4. Kardinaliteiten definiëren
Een andere manier om extra informatie te geven is het gebruik van kardinaliteiten. Kardinaliteiten definiëren de numerieke attributen van relaties tussen entiteiten. Deze laten zien hoeveel informatie of gegevens er tussen entiteiten stromen. Voorbeelden van gebruikelijke kardinaliteiten zijn:
Een een-op-een relatie
Een klant die maar één product tegelijk kan kopen.
Een een-op-veel relatie
Een klant die meerdere producten tegelijk kan kopen.
Een veel-op-veel relatie
Een groep klanten die meerdere producten tegelijk kunnen kopen.
Deze numerieke waarden worden weergegeven met kleine symbolen op elke verbindingslijn of pijl. De symbolen variëren afhankelijk van de hoeveelheid informatie die er stroomt, en in welke richting. Als je je diagram zo helder en beknopt mogelijk wilt houden, moet je rekening houden met kardinaliteit. Hiermee kun je precies aangeven hoeveel informatie er tussen entiteiten stroomt, en ook in welke richting. Daardoor zal iedereen die het diagram leest, direct een duidelijk beeld hebben van hoe de gegevens door de hele database of het hele systeem stromen.
5. Je ERD delen
Als je uiteindelijke diagram klaar is, kun je het delen met de relevante stakeholders. Hierdoor kunnen teamleden en externe partijen (zoals investeerders en aandeelhouders) vragen stellen en feedback geven. Met Miro's tool voor entiteit-relatiediagrammenkunnen teams eenvoudig samenwerken tijdens dit proces. Deel het diagram eenvoudig met de betreffende partijen en ze kunnen direct op het board opmerkingen toevoegen.
6. Updaten en herhalen
In de loop van de tijd zal je conceptuele model waarschijnlijk veranderen. Software moet soms worden bijgewerkt, databases kunnen nieuwe elementen nodig hebben en teamstructuurdiagrammen kunnen snel achterhaald raken. Als je zeker wilt weten dat je ERD actueel is, moet je het regelmatig updaten. Dit betekent dat je, steeds wanneer er wijzigingen zijn, teruggaat naar de tekentafel om deze te implementeren. Zelfs als je denkt dat er geen wijzigingen zijn, is het toch de moeite waard om het diagram opnieuw te bekijken en te controleren of het nog up-to-date is. Hoe vaker je ernaar kijkt, hoe makkelijker je kunt zien of je diagram een nauwkeurige weergave is van je database of proces. Het regelmatig bijwerken van een diagram kan tijdrovend lijken, maar de digitale werkruimte van Miro maakt het proces eenvoudig. Gebruik de functie voor slepen-en-neerzetten om onderdelen van je entiteit-relatiediagram en nieuwe entiteitsvormen te verplaatsen, en met een paar klikken je bestaande tekst aan te passen. Doordat alle wijzigingen in realtime plaatsvinden, ziet iedereen in je team altijd de meest actuele versie, waar ze ook zijn.