190 likes | 444 Views
ER-diagrammer (databaser, del 4). Videre fra data-flow diagrammer. Ved hjælp af data-flow diagrammer kan vi begynde at indse, hvilke entiteter vi skal lagre data om i databasen Kan også supplere med almindelige beskrivelser af domænet
E N D
Videre fra data-flow diagrammer • Ved hjælp af data-flow diagrammer kan vi begynde at indse, hvilke entiteter vi skal lagre data om i databasen • Kan også supplere med almindelige beskrivelser af domænet • De indgående entiteter – samt relationerne mellem dem – beskrives i et ER-diagram RHS – Informationsteknologi
Entiteter og Relationer • Entiteter og Relationer er de ting, som indgår i et ER-diagram, deraf navnet… • Entiteter = Ting eller begreb. Vi ønsker at registrere data om entiteter. • Relationer = Relationer… Vi ønsker at modellere relationer mellem entiteter. Relationer er ikke ting… RHS – Informationsteknologi
Hvorfor lave ER-diagrammer? • Slutmålet er at lave en data-base, bestående af tabeller. • Nemmere (for mennesker) at beskrive og forstå verden med ER-diagrammer, end direkte med tabeller • Rimeligt ”mekanisk” at lave ER-diagrammer om til tabeller RHS – Informationsteknologi
ER - historier • Fint nok, men hvorfor kan vi ikke bare skrive det ned…? • Her på skolen går der mange elever fordelt i klasser, hver elev går i én klasse. Hver klasse har mange timer i forskellige fag, og disse fag afholdes i mange forskellige lokaler. På skolen arbejder flere lærere, som underviser i flere klasser (bla bla bla bla….) RHS – Informationsteknologi
ER - historier • Husk hele tiden, at målet med alle disse værktøjer er at forstå problem-domænet. • Når vi kan skrive en fyldestgørende ”ER-historie” for problem-domænet, har vi nok forstået domænet godt nok • Vi burde deraf kunne udlede de indgående entiteter og relationer RHS – Informationsteknologi
Symboler for Entiteter og Relationer Entitet Elev f.eks. Relation Går i f.eks. RHS – Informationsteknologi
Hvordan finder jeg dem…? • Se på teksten fra før… • Her på skolengår der mange elever fordelt i klasser, hver elev går i én klasse. Hver klasse har mange timer i forskellige fag, og disse fag afholdes i mange forskellige lokaler. På skolen arbejder flere lærere, som underviser i flere klasser • Navneord og Udsagnsord RHS – Informationsteknologi
E & R for en skole Lærer Klasse Fag Arbejder Går i Skole Underviser i Elev Time Afholdes i Lokale Går RHS – Informationsteknologi
Relationer er mellem entiteter • Med disse ”brikker” kan vi prøve at få lavet nogle relationer mellem entiteter: Går i Elev Klasse Afholdes i Fag Lokale RHS – Informationsteknologi
En relations kardinalitet • Kardinaliteten siger noget om, hvor mange af hver entitet der indgår i en relation • Det kaldes også for relationens type: • 1-til-1 relation • 1-til-mange relation • Mange-til-mange relation En kardinal… RHS – Informationsteknologi
Typer af relationer RHS – Informationsteknologi
Hvordan finder jeg relationstyper? • Se på teksten fra før… • Her på skolengår der mangeelever fordelt i klasser, hver elev går ién klasse. Hver klasse har mangetimer i forskellige fag, og disse fag afholdes imange forskellige lokaler. På skolen arbejderflerelærere, som underviser iflere klasser • Se efter ”talord”…eller hvad det nu hedder… RHS – Informationsteknologi
ER – nu med kardinalitet • Ud fra beskrivelsen – og vores egen viden – kan vi nu tilføje kardinaliteter til vores relationer m 1 Går i Elev Klasse m Afholdes i m Fag Lokale RHS – Informationsteknologi
Så skal vi endelig bygge! • Byg relationerne op en efter en, hver for sig • Få styr på kardinaliteten for hver relation • Sæt de færdige relationer ind i selve ER-diagrammet, uden at lave ”dubletter” af entiteter. RHS – Informationsteknologi
m Går i 1 m Underviser m Elev Klasse Lærer m m Skal have Underviser i m m Afholdes i m Lokale Fag m Vores skole ER-diagram …og så videre, og så videre… RHS – Informationsteknologi
Den 8. dødssynd • MAN MÅ IKKE forveksle et ER-diagram med et Data-Flow diagram!! • Der er ikke ”tid” og flow i et ER-diagram • Der er ikke relationer mellem entiteter i et Data-Flow diagram Ei8ht RHS – Informationsteknologi