itfag | Teknologi. Data. Læring. Deling.

TAG | linux

I dette innlegget intervjuer vi studentene Torvald Lekvam og Jan Egil Jægersborg som i sin bacheloroppgave har laget et system for sikker digital eksamen

Hva har dere skrevet oppgave om, og hvem er oppdragsgiver?

Oppgaven, som vi har valgt å kalle eXamify, dreier seg i korte trekk om å lage en løsning slik at man kan bruke sin egen laptop på eksamen under trygge forhold. Oppgaven er egenvalg og godkjent av HiST AITeL.

Hva er utfordringer og ulemper med dagens eksamensordning som gjør at vi trenger noe nytt?

Dette finnes det flere grunner til, men i hovedsak har vi hentet motivasjon fra hvordan programmeringseksamener blir avlagt idag. Vi har selv vært med på flertallige eksamener i programmering hvor vi har vært nødt til å skrive på papir. Det å programmere er ikke en prosedural avhandling – men heller en iterativ prosess hvor skjelett bygges først og innmat etterpå. I tillegg byr progammering på et hav av bilioteker som man dynamisk får bruke og gjøre oppslag mot i et realtisk arbeidsmiljø – dette får man ikke på en papireksamen. I tillegg har det etablert seg et større press fra studentene, både fra HiST, NTNU, og andre, hvor studenter krever digitale eksamener i større grad. Dette skyldes antakeligvis det at man lever i nyere tider samtidig som dette kan være med å lette presse/stresset blant mange studenter med skrivevansker o.l.

Hvordan fungerer teknologien deres overordnet?

Vi har ut i fra Ubuntu-distrubusjonen laget vår egen Live Linux-løsning som kjøres fra USB. Dette betyr at alle eksamenskandidatene får utdelt hver sin USB-minnepenn på eksamen som det starter i fra. På denne måten starter ikke eksamenskandiatene fra sitt egen operativsystem, men heller et nytt og parallellt operativsystemet, som om det skulle vært to harddisker i samme maskin. Dette operativsystmet, eXamify, vil automatisk logge seg inn i ett kjent vindus-miljø hvor eksamenskandidaten kan skrive sin eksamensbesvarelse.

Dette er et restriktert miljø hvor kun enkelte applikasjoner er installert og tillatt. I bakgrunnen kjøres det prosesser som sørger for at eksamensbesvarelsen blir synkronisert med enserver fremme i eksamenlokalet til en hver tid. Dette gjør at eksamendeltakeren kan hente tilbake sin eksamensbesvarelse når som helst hvis det skulle oppstå problemer med datamaskinen eller besvarelsen. I tillegg står det en redundant server ved siden av hovedserveren som passer på ta over hvis hovedserveren skulle krasje. Hver eksamenskandidat klikker bare på ikonet for å levere besvarelsen når de er ferdige og besvarelsen blir trygt forseglet på serveren i lag med et bekreftet kandidatnummer.

Er systemet sikkert?

Sikkerheten har vært vår høyeste prioritet. Dette fordi utdanningsinsitusjoner gjerne skulle tillatt egen laptop på eksamen, hadde det ikke vært for risiko for fjusk. Vår løsning tilbyr et restriktivt brukermiljø for eksamensdeltakerene – og alle forsøk på fjusk blir rapportert. Alle eksamensdeltakerene går gjennom en heftig valideringsprosess fra serveren ved oppstart som vil kunne detektere blant annet om programvaren er manipulert, om den kjører i et virtuellt miljø eller f.eks. om eksamenskandidaten har tilgang på applikasjoner og resursser som ikke er tiltenkt.

Hva kreves av tid til administrasjon og oppsett i forkant?

Å sette opp systemet for første gang krever en dag, kanskje to, av en person som vil sette opp servere, router og kopiere opp minnepinner. Deretter er vedlikehold og bruk neglisjebart. Før en eksamen skal avholdes, setter faglærer (evt. ansvarlig eksamenspersonell) opp eksamen på serveren som skal brukes. Han/hun legger da inn startdato, varighet på eksamen, og eventuelle resursser som skal være tilgjengelig på eksamenen. Dette kan være f.eks ekstra programmer, bilder, videosnutter osv. Dette blir så tildelt kandidaten under eksamen. På eksamensdagen må eksamensvaktene trille inn serverene i eksamenslokalet på eksamensdagen, koble nettverksutstyr og skru på strømmen. Serverne starter automatisk programvaren, og starter backuprutiner om flere servere blir koblet til.

Hvorfor valgte dere å bygge systemet på Linux?

Valget falt naturlig da Linux tilbyr den tilpassing som er nødvendig, for å kunne lage et slik system. Man kommer tettere inn på operativsystemet, og har full mulighet til å tilpasse alt man vil, uten å tenke på lisenser. Begge utviklerene er også godt kjent med plattformen, og vet hva den er i stand til.

Hva skal til for å modifisere en Linux-distro? Må dere dypt inn i kildekoden for å få til det? Hvordan går dere typisk fram?

For å kunne modifisere en Linux distro kreves litt kunnskap til kommandolinjen og verktøy som er tilgjengelig derifra. Hoveddelen av refaktoriseringen av operativsytemet gjør vi selv. Vi kjører egne bash script som fjerner unødvendige komponenter, legger inn nødvendige pakker, setter opp brannmur, setter adgangsrettigheter på verktøy for kommunikasjon. Til slutt pakkes filsystemet slik at det blir bootbart på en USB-minnepinne. Vi bruker også remastersys, som er et program som hjelper oss med å lage de bootbare USB-ene, men selve konfigurasjonen gjøres av våre egne script.

Linux er fri kildekode. Er det mulig å gjøre forretning på et slikt konsept som dere har når Linux er fritt? Har dere ambisjoner om å ta dette et steg videre?

Siden Linux er fri kildekode er det fullt mulig å konfigurere en distro, for så å videreselge. Vi vil i første omgang la HiST få systemet, til fritt bruk, om de vil prøve det ut, og se om det fungerer bra. Om løsningen blir en «hit», er de jo fullt mulig for andre utdanningsinstitusjoner å kunne bruke det og. Da vil vi kanskje vurdere å gjøre forretning av systemet.

Har arbeidet med bachelor vært lærerikt?

Prosjektet har i stor grad vært lærerikt. Vi har måtte tenke oss grundig om for å finne løsninger på hvordan systemet skulle takle forsøk på fjusk. Dette har ført til pøving og feiling, som i seg selv er meget lærerrikt. Vi har og gått dypt inn i materien når det kommer til selve bootingen av et Linuxsystemet, og hvordan man egentlig kan hente et helt operativsystem fra en USB og kjøre dette i minne. Dette kommer av et hav av ulike konfigurasjoner, samt at det ikke er satt noen standard for hvordan man skal boote en USB-minnepinne, på ulike PCer.

Hva tenker dere å gjøre etter fullført bachelorgrad?

Begge har søkt informatikk ved NTNU, så om vi får innpass der, blir vi nok masterstudenter.

Vi ønsker lykke til videre, og takker for god innsikt i både hvordan en slik Linux-basert løsning kan bygges opp, og digital eksamen. Ville du (som leser) foretrekke digital eksamen fremfor papirbasert?

Dette innlegget har 5 kommentarer. Gjerne bidra :-)

Theme Design by devolux.nh2.me