Download de presentatie
GepubliceerdNelly Lambrechts Laatst gewijzigd meer dan 10 jaar geleden
1
Informatica Hoofdstuk 11 LauwersCollege Buitenpost Informatica
Informatie-analyse met FCO-IM Het maken van een bruikbare en betrouwbare database is een vak apart. Er zijn meestal heel veel tabellen in zo'n database, maar hoe kom je er achter hoeveel tabellen er nodig zijn in een database, en welke kolommen er in die tabellen voorkomen? Als je dat zo goed mogelijk probeert uit te zoeken dan ben je bezig met informatiemodellering of informatieanalyse. LauwersCollege Buitenpost Informatica
2
LauwersCollege Buitenpost Informatica
Informatie-analist Een informatie-analist (dat is een database-bouwer, een ICT'er) vraagt mensen van het bedrijf, waarvoor de database gemaakt moet worden, welke informatie ze belangrijk vinden en wat er vastgelegd moet worden. Hij gaat praten met mensen uit het bedrijf die weten waar het om draait in het bedrijf, zo iemand wordt een domeindeskundige genoemd. LauwersCollege Buitenpost Informatica
3
Stappen bij het maken van een database
Bij het ontwerpen van een database moet je de volgende stappen ondernemen: Je moet eerst weten welke eisen er aan het systeem gesteld worden. Je moet weten welke informatie van belang is voor het systeem Je moet de structuur van de gegevens bepalen Je moet het ontwerp van de database maken LauwersCollege Buitenpost Informatica
4
LauwersCollege Buitenpost Informatica
Herhaalde kolommen Herhaalde kolommen, zoals in de tabel hier onder, moet je voorkomen. Achteraf nog kolommen toevoegen is lastig. Ook overzichten per bedrijf zijn moeilijk te maken doordat verschillende leveranciers in verschillende kolommen staan. Het kan niet voor elke leverancier met dezelfde query LauwersCollege Buitenpost Informatica
5
LauwersCollege Buitenpost Informatica
Redundantie Dezelfde gegevens meer dan één keer in de database opnemen (zoals in de tabel hier onder) wordt redundantie genoemd, en dat moet je proberen te voorkomen. Je kunt dan gemakkelijk tegenstrijdige informatie in de tabel krijgen: bij een leverancier staan bijv. verschillende tel.nummers op verschillende plaatsen. Je zegt dan dat de database inconsistent is. LauwersCollege Buitenpost Informatica
6
LauwersCollege Buitenpost Informatica
Dit zijn de gegevens die we willen verwerken: De eindexamencijfers van een klas LauwersCollege Buitenpost Informatica
7
LauwersCollege Buitenpost Informatica
Welke tabellen met welke kolommen zijn in Access nodig om deze gegevens vast te leggen? Stap 1: Verwoord de informatie in zinnen. LauwersCollege Buitenpost Informatica
8
LauwersCollege Buitenpost Informatica
Informatie verwoordt in zinnen Leerling 2358 heet Janke Deelstra, ze heeft als mentor PB, en ze heeft voor ne een 7, voor en 6, voor gs 6, voor wb 6, voor na 6 en voor bi 7 Leerling 2477 heet Fokke de Jong, hij heeft als mentor VR, en hij heeft voor ne een 6, voor fa 6, voor en 6, voor wb 5, voor na 6 en voor ec 6 Leerling 2189 heet Akke van der Meer, ze heeft als mentor PB, en ze heeft voor ne een 6, voor en 7, voor gs 7, voor ak 7, voor wb 5, en voor na 6 LauwersCollege Buitenpost Informatica
9
LauwersCollege Buitenpost Informatica
Stap 2: Splits de zinnen, zodat je zo kort mogelijke zinnen krijgt. Daarbij mag er geen informatie verloren gaan! De zinnetjes die je dan krijgt noem je elementaire feiten LauwersCollege Buitenpost Informatica
10
LauwersCollege Buitenpost Informatica
Splits de zinnen in elementaire feiten Leerling 2358 heet Janke Deelstra, ze heeft als mentor PB, en ze heeft voor ne een 7, voor en 6, voor gs 6, voor wb 4, voor na 6 en voor bi 7 Leerling 2358 heet Janke Deelstra PB is de mentor van leerling 2358 Leerling 2358 heeft voor ne een 7 Leerling 2358 heeft voor en een 6 Leerling 2358 heeft voor gs een 6 Leerling 2358 heeft voor wb een 4 Leerling 2358 heeft voor na een 6 Leerling 2358 heeft voor bi een 7 elementaire feiten LauwersCollege Buitenpost Informatica
11
LauwersCollege Buitenpost Informatica
Ternaire feiten Leerling 2358 heeft voor ned een 7 Leerling 2358 heeft voor eng een 6 Splitsen? Leerling 2358 heeft ned gedaan. Leerling 2358 heeft eng gedaan. Leerling 2358 heeft een 7 Leerling 2358 heeft een 6 Dit kan niet, er is informatieverlies, want welk cijfer hoort bij welk vak? LauwersCollege Buitenpost Informatica
12
LauwersCollege Buitenpost Informatica
Stap 3: Zoek de feiten die op elkaar lijken. Dat zijn feittypen Geef de invulplaatsen aan. LauwersCollege Buitenpost Informatica
13
LauwersCollege Buitenpost Informatica
Zoek de feittypen Leerling 2358 heet Janke Deelstra. Leerling 2477 heet Fokke de Jong. Leerling 2189 heet Akke van der Meer. PB is de mentor van leerling 2358. VR is de mentor van leerling 2477. PB is de mentor van leerling 2189. Leerling 2358 heeft voor ned een 7. Leerling 2358 heeft voor eng een 6. Leerling 2358 heeft voor gs een 6. Leerling 2358 heeft voor wb een 4. Leerling 2477 heeft voor ned een 6. Leerling 2477 heeft voor fa een 6. LauwersCollege Buitenpost Informatica
14
LauwersCollege Buitenpost Informatica
Stap 4: Zoek uit welke objecten een rol spelen. De objecten worden ook wel invulplaatsen genoemd omdat je bij het feittype verschillende objecten in kunt vullen. Dit heet kwalificeren. LauwersCollege Buitenpost Informatica
15
LauwersCollege Buitenpost Informatica
Welke objecten spelen een rol PB staat voor een Docent <Docent> is de mentor van leerling 2358 PB leerling 2358 staat voor een Leerling <Docent> is de mentor van <Leerling>. PB leerling 2358 LauwersCollege Buitenpost Informatica
16
LauwersCollege Buitenpost Informatica
Stap 5: Zoek uit met welke labels de objecten worden aangegeven. Een object wordt op een bepaalde manier (mb.v. een "etiketje") aangegeven, een leerling kan bijv. met zijn voornaam of met zijn leerlingnummer of met zijn voornaam+achternaam worden aangegeven. Die "etiketjes" noem je labels. LauwersCollege Buitenpost Informatica
17
LauwersCollege Buitenpost Informatica
Een docent wordt aangeduid met de docentcode <Docent> is de mentor van <Leerling>. <docentcode> leerling 2358 PB LauwersCollege Buitenpost Informatica
18
LauwersCollege Buitenpost Informatica
Een leerling wordt aangeduid met een leerlingnr <Docent> is de mentor van <Leerling>. <docentcode> <leerlingnr> PB 2358 LauwersCollege Buitenpost Informatica
19
LauwersCollege Buitenpost Informatica
Kwalificeren: drie lagen Feittype: is de mentor van <Docent> is de mentor van <Leerling>. <docentcode> <leerlingnr> PB 2358 LauwersCollege Buitenpost Informatica
20
LauwersCollege Buitenpost Informatica
Objecttypen <Docent> is de mentor van <Leerling> <docentcode> <leerlingnr> PB 2358 LauwersCollege Buitenpost Informatica
21
LauwersCollege Buitenpost Informatica
Labeltypen <Docent> is de mentor van <Leerling>. <docentcode> <leerlingnr> PB 2358 LauwersCollege Buitenpost Informatica
22
LauwersCollege Buitenpost Informatica
Kwalificeer op de zelfde manier de andere feiten <Leerling> heeft voor <Vak> een <Cijfer>. <leerlingnr> <vakcode> <getal> 2358 ne 7 Heb je dit met alle elementaire feiten gedaan dan noem je dat het Informatie-grammatica (het IG) LauwersCollege Buitenpost Informatica
23
LauwersCollege Buitenpost Informatica
Stap 6: Teken het diagram. (het IGD) Nog handiger: Laat het casetool het diagram tekenen! LauwersCollege Buitenpost Informatica
24
LauwersCollege Buitenpost Informatica
Het labeltype in een diagram Een labeltype teken je als een gestippelde cirkel, met de naam erbij LauwersCollege Buitenpost Informatica
25
LauwersCollege Buitenpost Informatica
Het objecttype in een diagram Een objecttype teken je als een gewone cirkel, met de naam erbij. In de bol staat een rechthoek: de invulplek. LauwersCollege Buitenpost Informatica
26
LauwersCollege Buitenpost Informatica
De rol in een diagram verbinden met het label De rechthoek verbind je met het labeltype. De rechthoek of invulplek noemen we een rol. LauwersCollege Buitenpost Informatica
27
LauwersCollege Buitenpost Informatica
Het feittype in een diagram Een feittype teken je als een aantal rechthoeken. Bij mentor zijn er twee rechthoeken (voor Docent en Leerling), dus er zijn twee rollen. LauwersCollege Buitenpost Informatica
28
LauwersCollege Buitenpost Informatica
Diagram van het feittype is mentor van Ook de rollen in het feitype moet je verbinden met de objecten die daar ingevuld mogen worden. Het casetool zet de voorbeelden er bij en geeft nummers LauwersCollege Buitenpost Informatica
29
LauwersCollege Buitenpost Informatica
Diagram van het feittype heet De rol kan ook worden ingevuld door een labeltype, zoals je ziet, het object bij naam vervalt hier. LauwersCollege Buitenpost Informatica
30
LauwersCollege Buitenpost Informatica
De drie feittypen in een enkel diagram LauwersCollege Buitenpost Informatica
31
LauwersCollege Buitenpost Informatica
Stap 7: Zoek de beperkingsregels. Uniciteitsbeperkingen en Totaliteitsbeperkingen LauwersCollege Buitenpost Informatica
32
LauwersCollege Buitenpost Informatica
De uniciteitsbeperking Bij een uniciteitsregel zoek je uit of een object maar één keer voor mag komen PB is de mentor van leerling 2358. PB is de mentor van leerling 2189. Twee keer dezelfde docent, kan dat? Ja, dus de docent voldoet niet aan de uniciteitsbep. LauwersCollege Buitenpost Informatica
33
LauwersCollege Buitenpost Informatica
De uniciteitsbeperking Bij een uniciteitsregel zoek je uit of een object maar één keer voor mag komen PB is de mentor van leerling VR is de mentor van leerling Twee keer dezelfde leerling, kan dat? Nee, dus de leerling voldoet wel aan de uniciteitsbep. LauwersCollege Buitenpost Informatica
34
LauwersCollege Buitenpost Informatica
Uniciteits-beperking : dubbele pijl. LauwersCollege Buitenpost Informatica
35
LauwersCollege Buitenpost Informatica
Uniciteitsbeperking bij een ternair feittype: bekijk combinaties van twee Leerling 2358 heeft voor ne een 7 Leerling 2358 heeft voor bi een 7 Dit kan, dus llnr + cijfer geen uniciteitsbeperking Leerling 2358 heeft voor en een 6 Leerling 2477 heeft voor en een 6 Dit kan, dus vak + cijfer geen uniciteitsbeperking Leerling 2358 heeft voor wb een 4 Leerling 2358 heeft voor wb een 6 Leerling heeft twee cijfers voor één vak: dit kan niet, dus llnr + vak voldoen aan de uniciteitsbeperking LauwersCollege Buitenpost Informatica
36
LauwersCollege Buitenpost Informatica
Nu een dubbele pijl over twee rollen. LauwersCollege Buitenpost Informatica
37
LauwersCollege Buitenpost Informatica
Totaliteitsbeperking : elk object heeft er een Heeft iedere leerling een mentor? Ja, dus leerling voldoet aan de totaliteitsbep. Is elke docent mentor van een of andere leerling? Nee, dus docent voldoet niet aan de totaliteitsbep. Totaliteitsbeperkingen worden met een stip aangegeven. LauwersCollege Buitenpost Informatica
38
LauwersCollege Buitenpost Informatica
Totaliteits-beperking : een dikke stip. LauwersCollege Buitenpost Informatica
39
LauwersCollege Buitenpost Informatica
Alle beperkingen aangegeven in het diagram LauwersCollege Buitenpost Informatica
40
LauwersCollege Buitenpost Informatica
Stap 8: Tabellen ontwerpen. Dat kun je het casetool laten doen! Maar je moet het ook zelf kunnen. LauwersCollege Buitenpost Informatica
41
LauwersCollege Buitenpost Informatica
In het diagram staan al veel kleine tabellen, zeven in dit voorbeeld, kijk maar LauwersCollege Buitenpost Informatica
42
LauwersCollege Buitenpost Informatica
Groeperen Sommige tabellen kun je samenvoegen. Een feittype haal je dan binnen de cirkel van een object. Dit heet groeperen. Dit mag als er een uniciteitsbeperking over de rol van dat object staat, kijk maar in de volgende dia Als je in FCO-CASE het GLR-algoritme step-by-step laat uitvoeren kun je volgen wat er gebeurt LauwersCollege Buitenpost Informatica
43
LauwersCollege Buitenpost Informatica
Groeperen uniciteit over de rol van Leerling Wordt: Rol 5 (llnummer) niet meer nodig, Rol 6 (naam) bij leerling. LauwersCollege Buitenpost Informatica
44
LauwersCollege Buitenpost Informatica
Hetzelfde kan met feittype mentor uniciteit over de rol van Leerling Rol 2 (llnummer) niet meer nodig, Rol 1 (mentor) bij leerling. Wordt: LauwersCollege Buitenpost Informatica
45
LauwersCollege Buitenpost Informatica
Lexicaliseren en reduceren Daarna worden de cirkels weggehaald. (in het casetool heet dit lexicaliseren) De objecten waar niets is bijgekomen verdwijnen ook (in het casetool heet dit reduceren) LauwersCollege Buitenpost Informatica
46
LauwersCollege Buitenpost Informatica
Lexicaliseren en reduceren bol weg niets erbij, helemaal weg! LauwersCollege Buitenpost Informatica
47
LauwersCollege Buitenpost Informatica
De eerste tabel Docent verdwijnt, Leerling raakt de cirkel kwijt. We hebben nu een tabel voor de database. LauwersCollege Buitenpost Informatica
48
LauwersCollege Buitenpost Informatica
Het eindresultaat: Twee tabellen ! LauwersCollege Buitenpost Informatica
49
LauwersCollege Buitenpost Informatica
In Access dus twee tabellen: Cijfer en Leerling tabel Cijfer tabel Leerling Einde LauwersCollege Buitenpost Informatica
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.