Conceptueel databaseontwerp

Slides:



Advertisements
Verwante presentaties
SQL deel 2: datamodel ontwerp
Advertisements

De elektronische verzamelaanvraag Ruben Fontaine Markt- en Inkomensbeheer – dienst Aangiftes.
Paulus' eerste brief aan Korinthe (20) 23 januari 2013 Bodegraven.
NEDERLANDS WOORD BEELD IN & IN Klik met de muis
ZIEHIER 36 REDENEN WAAROM BIER
1 Resultaten marktonderzoek RPM Zeist, 16 januari 2002 Door: Olga van Veenendaal, medew. Rothkrans Projectmanagement.
November 2013 Opinieonderzoek Vlaanderen – oktober 2013 Opiniepeiling Vlaanderen uitgevoerd op het iVOXpanel.
Uitgaven aan zorg per financieringsbron / /Hoofdstuk 2 Zorg in perspectief /pagina 1.
OOS Object geOrienteerd Software-ontwerp
Personalisatie van de Archis website Naam: Sing Hsu Student nr: Datum: 24 Juni 2004.
Global e-Society Complex België - Regio Vlaanderen e-Regio Provincie Limburg Stad Hasselt Percelen.
Het ER model Een powerpoint presentatie, gemaakt door: F. Triep
7 april 2013 Zoetermeer 1. 1Korinthe Maar, zal iemand zeggen, hoe worden de doden opgewekt? En met wat voor lichaam komen zij? 2.
Electronic Resource Management (ERM) Els Schaerlaekens Anet Gebruikersdag 15 juni 2011.
STAPPENPLAN GRAMMATICUS.
Weddeschalen & Weddebijslagen
Sessie Gebruik zalen OC de Cerf & OC De Stekke Gebruik Guldenberg Alle vergaderaccommodaties & leskeukens & cafetaria’s Dwarsschuur 13 januari 2014.
Ronde (Sport & Spel) Quiz Night !
Entiteit-Relatie Model
Van Nul naar Drie Normaliseren.
Een optimale benutting van vierkante meters Breda, 6 juni 2007.
Start.
F. Rubben NI Lookout 1 06/RIS/05 - NI Lookout VTI Brugge F. Rubben, ing.
© BeSite B.V www.besite.nl Feit: In 2007 is 58% van de organisaties goed vindbaar op internet, terwijl in 2006 slechts 32% goed vindbaar.
Leiden University. The university to discover. ICLON, Interfacultair Centrum voor Lerarenopleiding, Onderwijsontwikkeling en Nascholing Denkgereedschap.
9 januari 2013 Bodegraven 1. 1Korinthe 11 1 Wordt mijn navolgers, gelijk ook ik Christus navolg. 2.
Hoofdstuk 6: Controle structuren
FOD VOLKSGEZONDHEID, VEILIGHEID VAN DE VOEDSELKETEN EN LEEFMILIEU 1 Kwaliteit en Patiëntveiligheid in de Belgische ziekenhuizen anno 2008 Rapportage over.
1 introductie 3'46” …………… normaal hart hond 1'41” ……..
DATABANKEN HET “ENTITY-RELATIONSHIP” MODEL
DATABANKEN HET “ENHANCED ENTITY-RELATIONSHIP” MODEL
Oefeningen F-toetsen ANOVA.
Interaction diagrams: Sequence Diagram
Normalisatie Relationeel databaseontwerp:
Wat levert de tweede pensioenpijler op voor het personeelslid? 1 Enkele simulaties op basis van de weddeschaal B1-B3.
TUDelft Knowledge Based Systems Group Zuidplantsoen BZ Delft, The Netherlands Caspar Treijtel Multi-agent Stratego.
1 WIJZIGINGEN UNIEK VERSLAG. 2 Agenda Verbeteringen Veranderingen formulieren Praktische herinneringen Nieuwe formulieren Sociale en culturele participatie.
“Waarom zouden we Genesis 1 op de letterlijke manier lezen? Genesis 1 is geen krantenverslag.” 3.
1 7 nov Rijnsburg 7 nov Rijnsburg. 2 Hebreeën 7 15 En nog veel duidelijker wordt het, als naar het evenbeeld van Melchisedek een andere priester.
13 maart 2014 Bodegraven 1. 1Korinthe Want gelijk het lichaam één is en vele leden heeft, en al de leden van het lichaam, hoe vele ook, een lichaam.
1. Gereformeerde Synode dr. J.G. Geelkerken 3.
1 19 dec Rijnsburg 19 dec Rijnsburg. 2 Hebreeën 8 1 De hoofdzaak VAN ONS ONDERWERP is, dat wij zulk een hogepriester hebben, die gezeten is.
User management voor ondernemingen en organisaties
2009 Tevredenheidsenquête Resultaten Opleidingsinstellingen.
Database, Document and Content Management
Relationele databases: Logisch databaseontwerp
Databank Beheer Practica Databanken. Vakgroep Telecommunicatie en Informatieverwerking2 Twee practica Schema ontwerp & implementatie –conceptueel ontwerp:
Van Vensoc tot Biztax Vennootschapsbelasting Aj 2011.
ECHT ONGELOOFLIJK. Lees alle getallen. langzaam en rij voor rij
17/08/2014 | pag. 1 Fractale en Wavelet Beeldcompressie Les 5.
17/08/2014 | pag. 1 Fractale en Wavelet Beeldcompressie Les 3.
Fractale en Wavelet Beeldcompressie
De financiële functie: Integrale bedrijfsanalyse©
Samen-bouwen … over paneelbouw en de rest!
1 Amsterdam, april 2005 Drs. Frits Spangenberg Rotary Extern imago.
13 juni 2013 Bodegraven vanaf hoofdstuk 7:1 1. 1Korinthe 7 1 Wat nu de punten betreft, waarover gij mij geschreven hebt, het is goed voor een mens niet.
1 16 jan Rijnsburg 16 jan Rijnsburg. 2 de vorige keer:  "de hoofdsom van het gezegde" (8:1)  de aankondiging van een nieuw verbond (8:8)
1 Zie ook identiteit.pdf willen denkenvoelen 5 Zie ook identiteit.pdf.
12 sept 2013 Bodegraven 1. 2  vooraf lezen: 1Kor.7:12 t/m 24  indeling 1Korinthe 7  1 t/m 9: over het huwelijk  10 t/m 16: over echtscheiding  16.
Datamodellering en –verwerking 8C020 college 2
13 november 2014 Bodegraven 1. 2 de vorige keer: 1Kor.15:29-34 indien er geen doden opgewekt worden...  vs 29: waarom dopen?  vs.30-32: waarom doodsgevaren.
1 Week /03/ is gestart in mineur De voorspellingen van alle groten der aarden dat de beurzen zouden stijgen is omgekeerd uitgedraaid.
1 DE ADVIEZEN VAN BEURSMAKELAAR BERNARD BUSSCHAERT Week
Conceptueel databaseontwerp
23 mei 2013 Bodegraven vanaf hoofdstuk 6: hoofdst.1: de wijsheid van de wereld hoofdst.2: de wijsheid van God hoofdst.3: Gods akker en Gods bouwwerk.
26 sept 2013 Bodegraven 1. 1Korinthe 8 1 Wat het offervlees aangaat, wij weten, dat wij allen kennis bezitten. De kennis maakt opgeblazen, maar de liefde.
Cegeka & TenForce Ronde tafel 17/06/2014 Doelstellingenmanagement VO.
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Databases I Het Entity-Relationship Model
Analyse 3 INFANL01-3 week 2 CMI Informatica.
Transcript van de presentatie:

Conceptueel databaseontwerp Database, Document and Content Management Conceptueel databaseontwerp Hoofdstuk 3

Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Overzicht Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Het ontwerp van een (E)ER-diagram

Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Overzicht Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Het ontwerp van een (E)ER-diagram

Het databaseontwerpproces Overzicht informatie- vergaring domeinanalyse functionele analyse behoefteanalyse conceptueel ontwerp conceptueel model (bijvoorbeeld EER-diagram) functionele beschrijving databasemodel- onafhankelijk logisch ontwerp dbms- onafhankelijk logisch databaseschema (bijvoorbeeld relationeel) gedragspecificaties fysieke ontwerp DDL-scripts implementatie van gedrag

Het databaseontwerpproces Informatievergaring Communicatie Onderzoek Software Data Handleidingen Rapporten Abstrahering, modellering en implementatie Abstrahering Modellering

Het databaseontwerpproces EER-diagram Stuk stuknr plaatsnr opge- voerd reser- vatie 1 N betaald titel soort organisator uitvoerder duur Voorstelling tijdstip datum beginuur Klant klantnr naam adres Plaats Zone tarief M prijs in

Het databaseontwerpproces Functionele beschrijvingen Controle_periode (IN Periode IN Artiest.Geboren IN Artiest.Gestorven OUT Status) EXCEPTIE (OnmogelijkePeriode) –operatie om te controleren of de periode van het schilderij wel valt binnen de leefperiode van de schilder van het schilderij. Ouderdom (IN Periode OUT Ouderdom) EXCEPTIE (PeriodeOnbekend) –operatie om de ouderdom van een schilderij te bepalen. Daartoe wordt de periode van het schilderij vergeleken met de huidige datum. Opmerking: UML

Het databaseontwerpproces CASE-tools

Het databaseontwerpproces COMPANY TOOL FUNCTIONALITY Embarcadero Technologies ER Studio Database Modeling in ER and IDEF1X DB Artisan Database administration and space and security management Oracle Developer 2000 and Designer 2000 Database modeling, application development Popkin Software System Architect 2001 Data modeling, object modeling, process modeling, structured analysis/design Platinum Technology Platinum Enterprice Modeling Suite: Erwin, BPWin, Paradigm Plus Data, process, and business component modeling Persistence Inc. Pwertier Mapping from O-O to relational model Rational Rational Rose Modeling in UML and application generation in C++ and JAVA Rogue Ware RW Metro Resolution Ltd. Xcase Conceptual modeling up to code maintenance Sybase Enterprise Application Suite Data modeling, business logic modeling Visio Visio Enterprise Data modeling, design and reengineering Visual Basic and Visual C++

Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Overzicht Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Het ontwerp van een (E)ER-diagram

Het uitgebreid ‘entity-relationship’ model Entiteittypes en relatietypes Structurele aspecten Een entiteit is een “ding” dat een zelfstandig bestaan leidt in de reële wereld Een entiteittype karakteriseert een collectie van entiteiten en wordt gekenmerkt door een naam en een verzameling van attributen

Het uitgebreid ‘entity-relationship’ model Voorbeelden en visualisatie Artiest Eigenaar Schilderij Naam Plaats Land ID Periode Waarde Gestorven Voornaam Geboren

Het uitgebreid ‘entity-relationship’ model Een relatietype is een verwantschap tussen twee of meerdere al dan niet verschillende entiteittypes. Men spreekt respectievelijk van een binair, ternair of n-air (n>3) relatietype. Verder wordt elk relatietype gekenmerkt door een naam. Een relatietype kan attributen hebben.

Het uitgebreid ‘entity-relationship’ model Voorbeelden en visualisatie Werknemer Schilderij Plaats is partner Procent werkt plan- ning Bedrijf Persoon Tentoonstelling

Het uitgebreid ‘entity-relationship’ model Karakteristieken en restricties Attributen Meerwaardige versus enkelwaardige attributen Samengestelde versus enkelvoudige attributen Afgeleide attributen Sleutelattributen (sleutel en surrogaatsleutel) Talen meerwaardig Plaats samengesteld Straat Nummer Postcode Leeftijd afgeleid Naam sleutelattribuut

Het uitgebreid ‘entity-relationship’ model Orthogonaliteit Regiocode Landcode Nummer Plaats Functie Groep Nummer Tel.nr. Scores Gebouw Registratie

Het uitgebreid ‘entity-relationship’ model Zwakke entiteittypes Identificerende entiteittypes Identificerend relatietype Partiële sleutel Een zwak entiteittype karakteriseert zwakke entiteiten. Dit zijn entiteiten die niet op zichzelf kunnen bestaan, maar voor hun bestaan afhankelijk zijn van het bestaan van andere, identificerende entiteiten.

Het uitgebreid ‘entity-relationship’ model Voorbeelden en visualisatie Artiest Patiënt Student Cursus Naam PID Nummer Code maakt voor legt af Naam Jaar Zittijd Schilderij Medisch dos. Examen

Het uitgebreid ‘entity-relationship’ model Relatietypes Kardinaliteitrestricties één of meerdere Participatierestricties totaal of partieel Voorbeelden en visualisatie Werknemer Boek Schilderij Plaats M N 1 1 Procent is partner werkt ontleent plan- ning N 1 1 1 N Bedrijf Persoon Lezer Tentoonstelling

Het uitgebreid ‘entity-relationship’ model Alternatieve notatie: (min,max)-notatie Werknemer Boek Schilderij Plaats (1,M) (0,N) (0,1) (0,1) Procent is partner werkt ontleent plan- ning (0,1) (0,1) (0,N) (0,1) (1,N) Bedrijf Persoon Lezer Tentoonstelling

Het uitgebreid ‘entity-relationship’ model Subtypes, supertypes en overerving Structurele aspecten Het subtype ‘erft’ alle attributen en verwante relatietypes van het supertype kan daarnaast nog eigen attributen en relatietypes hebben Een subtype is een entiteittype data een sub- collectie van entiteiten karakteriseert. Het entiteittype van de collectie waarbinnen deze subcollectie wordt beschouwd, wordt het supertype genoemd.

Het uitgebreid ‘entity-relationship’ model Voorbeelden en visualisatie Kunstwerk Werknemer         Schilderij Beeldhouw Administratie Technicus Manager Wandtapijt Juweel Kaderlid

Het uitgebreid ‘entity-relationship’ model Supertype/subtype-netwerken Supertype/subtype-hiërarchieën Meervoudige overerving: beperking Het creëren van specifiekere subtypes voor een een gegeven entiteittype wordt specialisatie genoemd. Het creëren van een algemeen supertype dat de gemeenschappelijke attributen en relatietypes van een aantal gegeven entiteit- types verenigt, wordt generalisatie genoemd.

Het uitgebreid ‘entity-relationship’ model Voorbeeld en visualisatie Doek Hout Perkament Schilderij Kunstwerk Juweel Beeldhouw Wandtapijt  Papier Olieverf Was Waterverf Acryl Outfit Kledij

Het uitgebreid ‘entity-relationship’ model Karakteristieken en restricties Overlappende versus disjuncte subtypes Kunstwerk Artiest d o        Schilderij Beeldhouw Schilder Beeldhouwer Wandtapijt Juweel Tekenaar

Het uitgebreid ‘entity-relationship’ model Geconditioneerde subtypes Attribuutgedefinieerde supertype/subtype-verwantschap Naam ID Periode Waarde Schilderij Kunstwerk Wandtapijt Beeldhouw Juweel  d Type ‘sch’ ‘wnd’ ‘jwl’ ‘bld’

Het uitgebreid ‘entity-relationship’ model Participatierestrictie voor supertype/subtype-verwantschappen Totale versus partiële participatie van het supertype Kunstwerk Werknemer Type d d  ‘sch’    ‘bld’     Schilderij Beeldhouw Administratie Technicus Manager ‘wnd’ ‘jwl’ Wandtapijt Juweel Kaderlid

Het uitgebreid ‘entity-relationship’ model Categorieën Structurele aspecten Elke entiteit van de categorie is slechts entiteit van juist één van de supertypes Een categorie is een ‘speciaal’ subtype met meerdere supertypes, dat wordt ingevoerd om de entiteiten van deze supertypes te groeperen

Het uitgebreid ‘entity-relationship’ model Voorbeeld en visualisatie Persoon Eigenaar Bedrijf  U Museum

Het uitgebreid ‘entity-relationship’ model Karakteristieken en restricties Geconditioneerde supertypes Persoon Eigenaar Bedrijf  U Museum Soort ‘particulier’ ‘bedrijf’ ‘museum’

Het uitgebreid ‘entity-relationship’ model Participatierestrictie voor categorieën Totale versus partiële participatie van de categorie Persoon Eigenaar Bedrijf  U Museum Soort ‘particulier’ ‘bedrijf’ ‘museum’ Software Hardware U  Configuratie

Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Overzicht Het databaseontwerpproces Het (uitgebreid) ‘entity-relationship’ model Het ontwerp van een (E)ER-diagram

Het ontwerp van een (E)ER-diagram Bijzonder aandachtspunt: de ‘connection trap’ Een ternair relatietype is semantisch NIET equivalent aan drie binaire relatietypes. Schilderij Tentoonstelling Plaats komt voor 1 N locatie gebruik M  plan- ning

Het ontwerp van een (E)ER-diagram Echter: Schilderij Tentoonstelling Plaats is voor 1 planning bevat is deel N plan- ning M Opmerking: ondersteuning door CASE-tools

Het ontwerp van een (E)ER-diagram Case studie: Database voor een jeugdvereniging Een jeugdvereniging wenst een database op te zetten, ter ondersteuning van haar ledenadministratie en werking. Daarbij moet rekening worden gehouden met de volgende aspecten. Bij de inschrijving krijgt elk lid een uniek lidnummer. Gegevens zoals naam, voornaam, adres, geslacht en geboortedatum worden geregistreerd. In het begin van het werkjaar worden de leden ingedeeld in verschillende groepen volgens leeftijdsklassen. Er kunnen meerdere groepen zijn voor één leeftijdsklasse. Elke groep heeft een leid(st)er. Een leid(st)er is maximaal verantwoordelijke voor één groep. De leiding vormt zelf ook een groep, die correspondeert met de hoogste leeftijdsklasse. De leid(st)ers organiseren allerhande activiteiten voor de leden. Een dergelijke activiteit kan bestemd zijn voor één of meerdere groepen tegelijkertijd. Tevens kunnen meerdere activiteiten voor dezelfde groep worden gepland (op verschillende uren). Aan sommige activiteiten kunnen extra kosten verbonden zijn. Los daarvan kan het zijn dat de leden zich op voorhand voor een activiteit moeten inschrijven (en de kosten vereffenen). subtypes, supertypes en categorieën identificatie van entiteittypes,

Het ontwerp van een (E)ER-diagram Oplossing Lid Groep Activiteit creatie entiteittypes

Het ontwerp van een (E)ER-diagram Case studie: Database voor een jeugdvereniging Een jeugdvereniging wenst een database op te zetten, ter ondersteuning van haar ledenadministratie en werking. Daarbij moet rekening worden gehouden met de volgende aspecten. Bij de inschrijving krijgt elk lid een uniek lidnummer. Gegevens zoals naam, voornaam, adres, geslacht en geboortedatum worden geregistreerd. In het begin van het werkjaar worden de leden ingedeeld in verschillende groepen volgens leeftijdsklassen. Er kunnen meerdere groepen zijn voor één leeftijdsklasse. Elke groep heeft een leid(st)er. Een leid(st)er is maximaal verantwoordelijke voor één groep. De leiding vormt zelf ook een groep, die correspondeert met de hoogste leeftijdsklasse. De leid(st)ers organiseren allerhande activiteiten voor de leden. Een dergelijke activiteit kan bestemd zijn voor één of meerdere groepen tegelijkertijd. Tevens kunnen meerdere activiteiten voor dezelfde groep worden gepland (op verschillende uren). Aan sommige activiteiten kunnen extra kosten verbonden zijn. Los daarvan kan het zijn dat de leden zich op voorhand voor een activiteit moeten inschrijven (en de kosten vereffenen). identificatie van zwakke entiteittypes en hun identificerende relatietypes

Het ontwerp van een (E)ER-diagram Case studie: Database voor een jeugdvereniging Een jeugdvereniging wenst een database op te zetten, ter ondersteuning van haar ledenadministratie en werking. Daarbij moet rekening worden gehouden met de volgende aspecten. Bij de inschrijving krijgt elk lid een uniek lidnummer. Gegevens zoals naam, voornaam, adres, geslacht en geboortedatum worden geregistreerd. In het begin van het werkjaar worden de leden ingedeeld in verschillende groepen volgens leeftijdsklassen. Er kunnen meerdere groepen zijn voor één leeftijdsklasse. Elke groep heeft een leid(st)er. Een leid(st)er is maximaal verantwoordelijke voor één groep. De leiding vormt zelf ook een groep, die correspondeert met de hoogste leeftijdsklasse. De leid(st)ers organiseren allerhande activiteiten voor de leden. Een dergelijke activiteit kan bestemd zijn voor één of meerdere groepen tegelijkertijd. Tevens kunnen meerdere activiteiten voor dezelfde groep worden gepland (op verschillende uren). Aan sommige activiteiten kunnen extra kosten verbonden zijn. Los daarvan kan het zijn dat de leden zich op voorhand voor een activiteit moeten inschrijven (en de kosten vereffenen). identificatie van attributen, hun karakteristieken en hun restricties

Het ontwerp van een (E)ER-diagram Oplossing leeftijd minimum maximum naam lidnummer geb.datum voornaam adres straat postcode nummer omschrijving kost tijdstip geslacht Lid Groep Activiteit creatie attributen

Het ontwerp van een (E)ER-diagram Case studie: Database voor een jeugdvereniging Een jeugdvereniging wenst een database op te zetten, ter ondersteuning van haar ledenadministratie en werking. Daarbij moet rekening worden gehouden met de volgende aspecten. Bij de inschrijving krijgt elk lid een uniek lidnummer. Gegevens zoals naam, voornaam, adres, geslacht en geboortedatum worden geregistreerd. In het begin van het werkjaar worden de leden ingedeeld in verschillende groepen volgens leeftijdsklassen. Er kunnen meerdere groepen zijn voor één leeftijdsklasse. Elke groep heeft een leid(st)er. Een leid(st)er is maximaal verantwoordelijke voor één groep. De leiding vormt zelf ook een groep, die correspondeert met de hoogste leeftijdsklasse. De leid(st)ers organiseren allerhande activiteiten voor de leden. Een dergelijke activiteit kan bestemd zijn voor één of meerdere groepen tegelijkertijd. Tevens kunnen meerdere activiteiten voor dezelfde groep worden gepland (op verschillende uren). Aan sommige activiteiten kunnen extra kosten verbonden zijn. Los daarvan kan het zijn dat de leden zich op voorhand voor een activiteit moeten inschrijven (en de kosten vereffenen). identificatie van reguliere relatietypes, hun attributen, karakteristieken en restricties

Het ontwerp van een (E)ER-diagram Oplossing leeftijd minimum maximum naam lidnummer geb.datum voornaam adres straat postcode nummer omschrijving kost tijdstip geslacht Lid Groep Activiteit lid van N leider voor schrijft in 1 M betaald creatie relatietypes

Het ontwerp van een (E)ER-diagram Eindoplossing lid van N Lid Groep Activiteit leeftijd minimum maximum naam lidnummer geb.datum voornaam adres straat postcode nummer omschrijving kost tijdstip leider voor schrijft in 1 M betaald geslacht

Het ontwerp van een (E)ER-diagram Case studie: Reservatiesysteem voor een theater In een theaterzaal worden verschillende soorten stukken opgevoerd (toneel, ballet, opera, enz.). Doorgaans worden meerdere voorstellingen van een bepaald stuk opgevoerd. Voor elk stuk wordt de titel, de duur, de soort, de organisator, de uitvoerder en een uniek nummer bewaard. Van iedere voorstelling wordt de datum en het beginuur opgeslagen. Aangezien er maar één zaal is, kan op hetzelfde ogenblik maar één voorstelling worden geprogrammeerd. De zitplaatsen in de zaal worden doorlopend genummerd en zijn ingedeeld in zones die een aparte naam hebben. De toegangsprijs is afhankelijk van de zone van de zitplaats. De verkoop van tickets verloopt uitsluitend via reservatie. De klant moet hierbij zijn naam en adres opgeven en kan dan één of meerdere zitplaatsen reserveren voor een voorstelling. Er wordt bijgehouden of voor deze reservaties reeds werd betaald.

Het ontwerp van een (E)ER-diagram Eindoplossing Stuk stuknr plaatsnr opge- voerd reser- vatie 1 N betaald titel soort organisator uitvoerder duur Voorstelling tijdstip datum beginuur Klant klantnr naam adres Plaats Zone tarief M prijs in

Het ontwerp van een (E)ER-diagram Case studie: Database voor een softwarefirma Een softwarefirma wenst een database op te zetten als hulp bij het controleren en corrigeren van fouten die ontdekt worden in haar softwareproducten. Aan elk softwareproduct wordt een uniek productnummer toegekend en een beschrijving toegevoegd. Van een product worden verschillende versies uitgebracht, die per product een versienummer krijgen. Daarnaast wordt ook de datum waarop de versie werd uitgebracht bewaard. Een versie van een product kan zowel door externe als door interne gebruikers (bijvoorbeeld programmeurs en systeemtesters) worden gebruikt. Interne gebruikers mogen alle versies van alle producten gebruiken zonder voorafgaande aanvraag. Externen dienen de versie van het product eerst aan te kopen. Bij de verkoop wordt voor elk verkocht exemplaar een uniek registratienummer –dat geldt voor één of meerdere externe gebruikers– en de registratiedatum vastgelegd. Wanneer een gebruiker een probleem vaststelt, zal hij hierover een probleemrapport opstellen (en overmaken aan de ‘maintenance’-afdeling). Een dergelijk rapport kan zowel door een interne als door een externe gebruiker worden opgemaakt en vermeldt naast een verwijzing naar het product en de versie, ook de datum en een omschrijving van het probleem. Aan elk rapport wordt verder een uniek rapportnummer, een prioriteit en een status (aan te passen door de maintenance-afdeling) toegekend. Aangezien externe gebruikers enkel een rapport mogen sturen in verband met de versies waarvoor zij geregistreerd zijn, dienen zij steeds hun registratienummer te vermelden. Interne gebruikers dienen enkel hun werknemernummer op te geven, terwijl externen geïdentificeerd worden via de combinatie van hun naam en de naam van hun bedrijf. Van alle gebruikers wordt tenslotte ook nog het telefoonnummer, adres en e-mail adres bijgehouden (indien gekend).

Het ontwerp van een (E)ER-diagram naam werknemernr Eindoplossing gebruikerID Ext_Gebr. Int_Gebr. bedrijf productnr N Product U  telefoon beschr. 1 Gebruiker adres bezit van 1 e-mail datum door rapportnr N versienr Versie 1 N omschr. Rapport datum 1 status over d prioriteit voor   N M Int_Rapport Ext_Rapport registratienr N 1 Registratie N over datum