This page was saved using WebZIP 7.1.2.1052 offline browser (Unregistered) on 09/07/08 0:47:50.
Address: http://www.instruct-online.nl/docent_pagina.php?p=6338
Title: Instruct-online.nl - Electronische Leeromgeving Instruct  •  Size: 13922

M8 - Schematechnieken en databases       2 - Gegevensanalyse met ERM    Grafische voorstelling

 

Hoofdstuk 2.1 Hoofdstuk 2.2 Hoofdstuk 2.3 Hoofdstuk 2.4 Hoofdstuk 2.5 Hoofdstuk 2.6 Hoofdstuk 3.1 Hoofdstuk 3.2 Hoofdstuk 3.3 Hoofdstuk 3.4 Hoofdstuk 3.5

1 - Grafische voorstelling
2 - Entiteittypen en relatietypen
3 - Identificatie
4 - Tekstuele beschrijving

 



1 - Grafische voorstelling © Instruct

 

De samenhang tussen entiteiten geven we schematisch weer in een Entity Relationship Diagram, afgekort tot ERD. ERD’s behoren tot de informatieanalysemethode ERM: Entity Relationship Modeling.

Een ERD bevat de entiteittypen, relatietypen en cardinaliteiten. Op deze wijze krijgen we een grafisch informatiemodel en dat is veel duidelijker dan een beschrijving van de diverse objecten met hun kenmerken en relaties.

Voor de weergave van al deze elementen bestaan natuurlijk afspraken. Wanneer iedereen zich daaraan houdt, kan een grafisch model makkelijk geïnterpreteerd worden.


Je kunt Dia downloaden van de Dia-homepage: www.gnome.org



Er zijn diverse pakketten op de markt om ERD's te tekenen. De diagrammen beelden ze elk op hun eigen manier af, maar in grote lijnen maken ze gebruik van óf de notatiemethode van Peter Chen óf de notatiemethode van Charles Bachman.
De diagrammen zijn getekend met behulp van Dia, een open source programma; de notatiewijze is die van Chen.



Links de notatiewijze van Chen, rechts die van Bachman.

We gaan nu na welke regels er gelden voor de notatiewijze binnen ERD’s.

 

 


 



2 - Entiteittypen en relatietypen © Instruct

Entiteittypen
Een entiteittype wordt grafisch weergegeven door middel van een rechthoek. Het entiteittype Student ziet er als volgt uit:

Het entiteittype Klas wordt weergegeven als:

 
  Relatietypen
  Een relatietype geven we weer met behulp van een ruitvorm. De ruit vormt de verbinding tussen de entiteittypen die een relatie met elkaar hebben. Hierna zie je het relatietype ‘zit in’ tussen de entiteittypen Student en Klas.

Het relatietype ‘leent’ tussen de entiteittypen Student en Boek is afgebeeld in de volgende figuur.

Deze twee figuren kunnen worden samengevoegd tot één figuur, met als resultaat:

Je ziet dan dat het entiteittype Student twee relatietypen heeft.

Door op deze wijze verder te gaan krijg je een grafisch informatiemodel waarin meer entiteittypen en relatietypen getoond kunnen worden. Zo’n model laat binnen een totale organisatie zien hoe alle gegevens met elkaar samenhangen.

 

 


 



3 - Identificatie © Instruct

  Als er meer studenten Petra heten terwijl je op zoek bent naar juist die ene, heb je een probleempje. Hoe maak je duidelijk welke Petra je bedoelt? Wat hier speelt wordt in de databasewereld identificatie genoemd. Hoe zorg je ervoor dat als je binnen een database naar één entiteit vraagt, je er met zekerheid ook maar één krijgt? Dit bereik je door aan elke entiteit een attribuutwaarde toe te voegen die uniek is voor die entiteit.

Studentnummer
Zo biedt het studentnummer een mogelijkheid om de gegevens van één bepaalde student bij elkaar te houden en ze niet te verwisselen met die van een andere student. De studentnaam biedt hiervoor geen garantie, want er kunnen best twee studenten met dezelfde achternaam zijn. Ook de achternaam in combinatie met de geboortedatum geeft geen garantie. Twee studenten met dezelfde achternaam kunnen op dezelfde dag geboren zijn: een tweeling.

Een methode als ERM vereist dat er bij elk entiteittype wordt aangegeven welk attribuuttype de identificatie van dat entiteittype is. Een bekend voorbeeld van identificatie is het burgerservicenummer, dat aan elke Nederlander is toegekend en waarvan er geen twee hetzelfde zijn. En op school heeft elke leerling een uniek leerlingnummer.

Een identificatie hoeft niet per se uit één attribuuttype te bestaan. Je kunt ervoor kiezen om twee of meer attribuuttypen samen de identificatie van een entiteittype te laten vormen.

Zo hoeft de aanduiding 2C voor een klas niet uniek te zijn. Als er binnen een scholengemeenschap een klas 2C bestaat voor de havo-afdeling en een andere klas 2C voor de vwo-afdeling, is 2C niet uniek. Er zijn in dat geval twee attribuuttypen nodig om een klas te identificeren:
  • het attribuuttype Afdeling (havo, vwo enzovoort)
  • het attribuuttype Klasnummer (2A, 2B, 2C enzovoort)

 

 


 



4 - Tekstuele beschrijving © Instruct

  In het informatiemodel wordt ook gebruik gemaakt van een tekstuele beschrijving. Deze is bedoeld om aan te geven welke attribuuttypen de identificerende attribuuttypen zijn. Verder wordt in deze beschrijving opgenomen welke attribuuttypen deel uitmaken van het betreffende entiteittype.

De tekstuele beschrijving bestaat per entiteittype uit drie groepen:

  1. De benoeming van het entiteittype: entitytype.
  2. De benoeming van de identificerende attribuuttypen: identifier.
  3. De opsomming van de attribuuttypen van het betreffende entiteittype: description.

We volgen hierbij de gewoonte om de Engelse aanduidingen te gebruiken:
  • Entitytype: entiteittype
  • Identifier: identificatie
  • Description: beschrijving

Entiteittype Student
Als voorbeeld geven we de tekstuele beschrijving van het entiteittype Student.

Entitytype Student
Identifier studentnummer
Description studentnummer
 naam
 adres
 postcode
 woonplaats
 geslacht
 geboortedatum

Je ziet dat het identificerende attribuuttype ‘studentnummer’ vermeld wordt na het woord identifier, maar ook voorkomt bij de beschrijving. Dat is niet altijd het geval.

Entiteittype Klas
Nog een voorbeeld: het entiteittype Klas, dat meer dan één attribuuttype heeft als identificatie.

Entitytype Klas
Identifier afdeling
klasnummer
Description afdeling
klasnummer
aantal studenten