trell.org

Meny for IT-fag

Videregående datamodellering - tips og oppgaver

Tipsene og oppgavene nedenfor baserer seg på at du allerede har en del kunnskap om og trening i datamodellering. Hvis du eventuelt vil repetere og gjenoppfriske dine ferdigheter, kan du først ta for deg siden Datamodellering - tips og oppgaver, og deretter vende tilbake til denne siden.

Flere tips for arbeid med datamodellering

  • Les igjennom teksten flere ganger, gjerne noen ganger raskt og noen ganger langsomt.
  • Husk at alle relasjoner skal ha en beskrivelse (verbalisering). Dette er nødvendig for å klargjøre datastrukturen og for de tilfellene hvor det kan være multiple roller - flere ulike relasjoner - mellom de samme entitetene.
  • Husk at alle relasjoner også skal ha minima. Da må man spørre seg selv: Må entiteten på den andre siden av relasjonen være tilstede, eller kan den mangler. Hvis den være tilstede, skal minimum være 1, hvis den kan mangle, skal minimum være 0.
  • Husk at det kan være flere relasjoner mellom to entiteter. I virkelighetens verden tilsvarer dette at de to gjenstandene, personene eller hendelsene har ulike roller i forhold til hverandre. Tenk alltid nøye igjennom hvilken rolle en entitet har i forhold til en relatert entitet.

Oppgaver i videregående datamodellering

Lag entitetsmodeller for hver av situasjonene nedenfor. Modellene skal ha entiteter, relasjoner, attributter med primær- og fremmednøkler. Relasjonene skal ha både maksima og minima. Oppgavene er av varierende vanskelighetsgrad, og ikke nødvendigvis stigende!

1) Klasse med elever og lærere

a) Start med den enkle situasjonen at vi har en rekke klasser. I hver klasse er det mange elever. Klassen har en klassekode, elevene har et elevnr, navn og fødselsår. Den grunnleggende sammenhengen er at hver elev går i en klasse, mens det i en klasse er mange elever. Men en elev kan ha ytterligere en rolle, i tillegg til at hun har rollen som elev i en klasse: hun kan være tillitselev i klassen. Lag datamodell!

b) Utvid modellen ovenfor slik at den tar med alle lærerne som har klassen i et fag. Mengden av alle lærere som har klassen i et fag kalles Klasselærerråd. I hver klasse er det én lærer som har en spesiell rolle: Han er klassestyrer. Lærerne har en lærerkode, navn og internt telefonnr. Tegn modell!

c) Utvid modellen igjen slik at også fagene tas med. Et fag har en fagkode, et fagnavn og et antall timer per uke. Hver lærer underviser en klasse i ett eller flere fag. Hver elev tar også ett eller (som oftest) flere fag, men av disse fagene er det ett som er elevens favorittfag! Ikke alle elever har et bestemt favorittfag. Ta også med eventuelle andre attributter som er naturlige i denne situasjonen.

2) Langrennsski

a) Skiidrettslaget "Planken" driver med langrenn. Ledelsen har nå bestemt seg for at de vil ha et databasesystem for å holde orden på løperne i idrettslaget og deres ski. Skiløperne har et medlemsnummer, et medlemsnavn, kjønn og et fødselsår. Skiene har et nummer, et fabrikat og en lengde. Hver skiløper har mange par ski som brukes til trening, men bare ett av disse parene brukes til konkurranser! Tegn modell.

b) Etter å ha laget denne modellen viser du den til treneren for Planken. Etter at du har forklart ham hva modellen viser, gjør han deg oppmerksom på at det er to atskilte typer ski: Én type som brukes til klassisk stil, og en annen type som brukes til skøyting. Etter å ha fått denne informasjonen, trekker du den slutningen at det nok også må være ett par av hver sort som brukes til konkurranser. Tegn modell!

3) Billettsystem for jernbane

Her skal du ta utgangspunkt i oppgaven Togbilletter i Datamodellering - tips og oppgaver og gjøre denne noe mer realistisk. Du skal som en begynnelse beholde ideene om en registrert kunde og om en billett. Men etter å ha analysert denne problemstillingen nærmere, så har det vist seg at man ikke kan bruke Togavgang i den formen dette ble vist i datamodellen Togbilletter. Dette skyldes jo at en togrute er innom mange stasjoner hvor den har ulike ankomster og avganger, og det må være mulig å kjøpe en billett fra en hvilken som helst stasjon til en hvilken som helst stasjon. En togrute består også av et tog, i tillegg til disse togavgangene (togstoppene). Toget består av et lokomotiv eller en trekkvogn, og en rekke vogner. Lokomotivet har et loknummer, på tilsvarende måte har vognene sine vognnumre. Lokomotivet har en lokfører, det er alt du vil ta med i denne modellen. Vognene har flere egenskaper: De har en klasse (1. klasse, 2. klasse), de kan ha kafé, og de kan ha en fraktseksjon. På hvert tog er det også et antall personale, disse kan være konduktører (det er gjerne 3 av disse) og de kan være kafépersonale (det er gjerne et par stykker her).

4) Russebil

a) Når det går mot vår går det også mot russetid, og mange i 3. klasse på videregående skoler lurer på om det skal anskaffes en russebil. Her er det jo en løsning at flere elever går sammen om å kjøpe én russebil. Én av elevene står formelt som eier. Én elev (ikke nødvendigvis den samme) står som fast sjåfør.

b) Kombiner denne modellen med det du kom frem til i oppgave 1)!

5) Klesbutikk

Den nye klesbutikken "Tøy for Deg" vil satse på et profesjonelt, it-basert system, og du har påtatt deg å hjelpe dem med å utvikle dette. I samarbeid med den nyansatte butikksjefen har du kommet frem til følgende om hvordan butikken skal drives:

Butikken skal ha fire ulike avdelinger: Herre, Dame, Ungdom og Barn. De ansatte (betjeningen) skal være spesialopplært, så de skal bare arbeide i én avdeling hver. Én av de ansatte i hver avdeling skal være avdelingsleder og ha utvidet ansvar for salget i denne avdelingen. Vareutvalget er også knyttet opp mot avdelingene, slik at et bestemt plagg bare selges i den avdelingen hvor det naturlig hører hjemme. Når kundene handler, får de en kassalapp med alle nødvendig informasjon om varene de handler, også hvilken avdeling varen tilhører, kunden kan jo kjøpe varer fra ulike avdelinger samtidig. Informasjon om selger og kasse må også stå på kassalappen.

Dette systemet skal bare brukes til salg og drift, ikke til lønn eller kommunikasjon med de ansatte. Én av de ansatte er butikksjef, og det er henne du har kontakt med som systemutvikler.

6) Veinett

Veinettet i Norge er nokså komplisert. Veidirektoratet ønsker nå et IT-basert system for å få oversikt over dette. For å lage en forenklet prototyp først, har du påtatt deg å utvikle et system som er avgrenset til å gjelde riksveiene i Norge. Lokalveiene er dermed holdt utenfor dette systemet.

Det er lokalisasjonen av veinettet det er aktuelt å modellere i denne omgang. Du må derfor ta med informasjon om hvilke fylker og kommuner veiene går igjennom. Ta også med i betraktning at en kommune ligger i et fylke. En kompliserende faktor er at de fleste riksveier krysser andre riksveier. Disse kryssene må også tas med i betraktning. I denne modellen er det forholdene mellom veier, kommuner og fylker og veier seg i mellom som er det sentrale. Det trengs foreløpig ikke annen informasjon om fylker og kommuner enn fylkesnr (hhv kommunenr) og fylkesnavn (hhv kommunenavn). Riksveien har et veinr (f.eks. E18) og en lengde (f.eks. 360km).

Lag først en modell hvor du beholder alle mange-til-mange-relasjoner, deretter en hvor du entitetiserer disse. (PS. Hvordan vil du løse problemet med Oslo, som både er et fylke og en kommune?)

7) Fartskontroll

Her skal du ta utgangspunkt i oppgaven Fartskontroll i Datamodellering - tips og oppgaver og gjøre denne noe mer realistisk. Følgende hensyn skal tas, i tillegg til det som står i den opprinnelige oppgaven:

Informasjon om bileieren skal tas med i systemet. Det må også gå tydelig frem om føreren er den samme som bilens eier, eller om det er en annen person. Både fører og eier må dermed knyttes opp mot førerkortregisteret. Hvis føreren ikke har førerkort, skal dette registreres i forbindelse med kontrollen.

På en kontrollpost vil det alltid være flere polititjenestemenn. Dette skal gå frem av modellen. Én av disse vil være hovedansvarlig for den aktuell kontrollposten.

8) Rasekattforening

Vest-Agder Rasekattforening ønsker et elektronisk databasesystem med informasjon om medlemmenes katter, deres slektskap og premiering. Du skal utarbeide en datamodell som skal danne grunnlag for et slikt system.

Det er nødvendig med en oversikt over medlemmene, deres telefon, adresse og postadresse. Om kattene må man vite hvilken rase de tilhører, kjønn, vekt, når de er født, om de kan brukes til avl og hvilke foreldre de har. Det skal også holdes orden på premier den enkelte katt måtte ha fått, når konkurransen fant sted, antall oppnådde poeng, og sted for arrangementet.

Om rasene er det litt informasjon: Hvilket opprinnelsesland rasen har, spesielle kjennetegn og informasjon om fôr. For hver rase er det også en kontaktperson blant medlemmene, en med lang erfaring med denne rasen og det er også en rasesekretær som holder orden på det skriftlige.

9) Videoutleie

a) Du har fått i oppgave av videobutikken FLIMMER å utarbeide et databasert system for utleie av videoer. Som et ledd i dette arbeidet skal du lage en datamodell som systemet skal baseres på. Du intervjuer innehaveren av butikken og får vite følgende:

Man vil selvfølgelig ha en del informasjon om de videoene som er til leie. Butikken regner med stor pågang av kunder, så den må ha flere eksemplarer av hver av de mest populære filmene. Kundene skal registreres med navn, adresse, alder for de som er under 18 år, telefonnummer og hva slags legitimasjon som har blitt brukt ved registreringen. Filmene skal registreres med tittel, årstall for utgivelsen, regissør, genre og distributør. Utleiebutikken har kontakt med 4-5 store distributører som sammen dekker det som er av utleievideo. Man vil også ha oversikt over disse, med navn, adresse, telefon og fax. Kundene skal normalt bare kunne leie en film i ett døgn. Beholdes den lengre vil man etter 3 dager kontakte kunden og purre. Kunden må betale et gebyr hvis videoen leveres tilbake for sent. Nye filmer (utkommet det siste året) leies ut for 40 kr, eldre videoer skal koste 30 kr.

b) Etter en ukes tid kommer du tilbake til FLIMMER med en prototyp som fungerer noenlunde. Når du sammen med innehaveren skal teste denne, blir det oppdaget et par svakheter: Enkelte filmer har mer enn én genre! Det er også behov for å registrere hvilke skuespillere som er med i en film, kundene ønsker i noen tilfeller å få vite hvilke filmer som finnes f eks med Tom Cruise. Utvid modellen slik at disse forholdene også blir tatt med.

10) IT-messe

Det skal startes et årlig messearrangement i Sørlandshallen med IT-utstyr, produkter og leverandører. Her vil siste nytt av PCer, tilbehør, kommunikasjonsutstyr og programvare bli presentert av ulike forhandlere. Et 40-talls ulike forhandlere og importører vil være representert ved messen, alle disse må arrangøren kunne ha løpende kontakt med før, under og etter messen, per telefon, e-post og post.

Messen er organisert i "stands", hver stand representerer ofte én forhandler, men i en del tilfeller er det mindre forhandlere som går sammen om en felles stand. De største forhandlerne har flere stands på ulike steder i lokalet. Alle stands er nummerert og de er angitt på et kart over messeområdet med beskrivelse, navn på forhandler(ne) og hvilken forhandler som er hovedansvarlig for vedkommende stand.

Messearrangøren vil også knytte en produktkatalog til messekartet. Denne skal deles inn i fire hovedkategorier: PCer, tilbehør, kommunikasjonsutstyr og programvare. Her må det gå tydelig frem hvem som forhandler aktuelt produkt og hvor i messehallen dette presenteres. Det må være en henvisning til messekartet med område- og standnummer.

Siden messen skal arrangeres årlig, i hvert fall i en 5-års-periode fremover, så må det være mulig å bruke det samme systemet kontinuerlig. Mange av forhandlerne vil jo være de samme fra år til annet, mens nye kommer til og enkelte forsvinner. Arrangøren ønsker å ha full oversikt over hvem som deltok hvilket år, med hvilke produkter og på hvilken stand.

11) Jubileumsselskap

Det er nok ikke så vanlig å representere selskapslivet i et datasystem, men la oss likevel tenke oss at det er dette vi har bestemt oss for å gjøre. Kanskje det her er et udekket behov og muligheter for en rask fortjeneste?

Situasjonen kan være slik: I et jubileumsselskap er det alltid invitert mange gjester. Én av disse gjestene er hovedtaler og en annen av gjestene er hedersgjest. Det er også en økonomiansvarlig blant gjestene. I løpet av året er det mange jubiléer, og folk kan selvsagt inviteres til flere slike selskaper. Hver nyttårsaften går folk igjennom de ulike selskapene i tankene og bestemmer seg for hvilket selskap som var det beste. Først nyttårsdag skal alle registrerte personer ringe systemoperatøren (som er deg !) og fortelle om sitt favorittselskap - dette skal så registreres i systemet.

12) Skoleturer

I løpet av skoleåret skal skolens elever på flere turer. På disse turene reiser man med buss : På hver tur kan det være flere busser, og elevene behøver ikke bruke samme bussen hver gang. Men noen av elevene har månedskort (de som ellers bruker buss hver dag), og noen av elevene har det ikke (de som bor nærme skolen). De som ikke har månedskort må betale bussbillett ved hver tur.

Skolen vil innføre en refusjonsordning slik at de som må kjøpe bussbillett får tilbake en del av beløpet. I tillegg vil skolen holde orden på hvilken elev som har reist med hvilken buss i det enkelte tilfelle, og dato og beløp for når elevene har fått utbetalt refusjon for den enkelte reise. Alle turene i løpet av hele året skal med i denne ordningen.

I hver buss er det en sjåfør (ikke en elev!) og en ansvarlig lærer. Læreren krysser av på en liste alle elevene som er tilstede i bussen. Hvis en elev synger i bussen skal læreren merke av dette med dato og klokkeslett.

13) Fotokjede

I området rundt Kristiansand er det en kjede med flere fotobutikker, FotoExpressen AS. I disse butikkene kan du kjøpe diverse fotoutstyr, men du kan også få fremkalt dine filmer. FotoExpressen har spesialisert seg på digital film, og fremkaller ikke lengre vanlig film. Kundene kan levere inn sine digitale bilder via FotoExpressen sin hjemmeside for fremkalling i kjedens sentrale laboratorium. Dette ligger i Sogndalen. Kundene kan også komme med bildene til en av butikkene og levere de fra en minnebrikke eller fra en CD-R-plate. Bildene blir da sendt fra den enkelte butikk til laboratoriet. Med bildene kan kunden oppgi antall papirkopier av hvert eksemplar. De ferdig fremkalte bildene sendes med posten til kundene som betaler enten med VISA eller pr postoppkrav nå bildene hentes.

Alle kunder som handler via web-sidene blir registrert i kjedens kundearkiv. Halvårlig sendes det ut tilbudslister og annet materiale til kundene.

Ved salg i en av butikkene skal det registreres i hvilken butikk det selges, og hvilken selger det gjelder. En kort sammenfatning av denne informasjonen skal også stå på kvitteringen. Selgerne er ansatt for å arbeide i en bestemt butikk, de flytter ikke rundt i kjeden. I hver butikk er én av de ansatte butikkansvarlig.

Butikkjeden kjøper inn fotoapparater, tilbehør og kopipapir til fremkalling hos flere ulike leverandører. Spesielt for kopipapiret er det viktig til enhver tid å holde rede på hvor man kan få dette til laveste innkjøpspris.

trell.org | enklere oppgaver i datamodellering | Toppen av siden

kontakt: