Ny læringsteknologi med automatisk evaluering - Elektronikknett
Ny læringsteknologi med automatisk evaluering
Fra prosjektets kick-off høsten 2015 med både lærere og studenter samlet. Studentene på bildet har prosjektoppgaver knyttet til prosjektet. Fra venstre ser vi: Rune Andersen, Høgskolelektor Universitetet I Agder, Anis Yazidi, Førsteamanuensis, Høgskolen i Oslo og Akershus, Joseph Sunday, Mastergradsstudent, Universitetet I Agder, Vera Barstad, Vitenskaplig ansatt i prosjektet, Universitetet I Agder, Hein Meling, Professor, Universitetet i Stavanger, Christian Auby, Høgskolelektor, Universitetet I Agder, Per-Arne Andersen, Vitenskaplig ansatt i prosjektet, Universitetet I Agder, Andre Lucas Carvalho, Bachelorstudent, Universitetet I Agder, Morten Goodwin, Førsteamanuensis, Universitetet I Agder, Tomasz Orzechowski, Professor, AGH UST, Krakow, Poland, Arne Wiklund, Høgskolelektor, Universitetet I Agder.

Ny læringsteknologi med automatisk evaluering

Forskning ved Universitetet i Agder viser hvordan elevene lærer raskere og mer effektivt ved å arbeide i et testdrevet utviklingsmiljø som ligger nært opp til et ekte arbeidslivsmiljø.

Undervisning i programmering treffer tradisjonelt ikke arbeidslivets behov. Dette har Førsteamanuensis Morten Goodwin og hans medarbeidere ønsket å gjøre noe med.

Nye metoder
Goodwin har tatt i bruk nye metoder for å hjelpe sine studenter til å lære seg teknikkene arbeidslivet etterspør. Prosjektet T-FLIP ble  i følge prosjektets nettside innledet høsten 2015. Navnet står for Testdrevet ferdighetslæring i programmering, og har som mål  å prøve ut og etablere en ny læringsteknologi for studentene i programmeringsfag. Dette skal gjøres ved å utvikle løsninger og verktøy som er tett knyttet opp mot den testdrevne ferdighetstreningen de trenger i arbeidslivet, og skal også inkludere automatisk og umiddelbar evaluering av programmeringsoppgavene.

programmering-1 Førsteamanuensis Morten Goodwin mener det nye læreprosjektet i langt større grad forbereder programmerings-studentene på det arbeidslivet som venter. (Foto: Universitetet i Agder)

Opprettet testsenter
Tradisjonell undervisning i programmering i klasseromsammenheng er ofte veldig forskjellig fra hvordan programvareutvikling foregår i arbeidslivet, som ofte bruker en såkalt testdreven utviklingsmetode. Det betyr i korte trekk at, det i tillegg til selve dataprogrammet også programmeres  tester som bekrefter at programmet fungerer.

Med tradisjonell undervisning får elevene derimot gjerne en oppgave som de leverer inn. Læreren vurderer den og gir den tilbake med sine kommentarer etter en viss tid. Dette synes ikke Goodwin og hans medarbeidere er noen spesielt god pedagogisk løsning og den er heller ikke spesielt godt egnet til å forberede studentene på arbeidslivet.

Umiddelbar respons
I stedet har universitetet opprettet et testsenter der elevene får umiddelbar og automatisk respons på arbeidene sine. Systemet  påpeker ikke bare feil, men forteller hva som er feil og hva de må trene mer på. Det presiseres på prosjektets nettside at dette ikke må forveksles med langt enklere evaluering av avkryssingsoppgaver. For å kunne gjennomføre en automatisk analyse av programmeringskoder må det utvikles små testprogrammer, veldig likt slik den testdrevne utviklingsmetoden fungerer i arbeidslivet.

– Denne metoden brukes blant annet som et sikkerhetsnett for at det utviklede programmene fungerer som de skal. Det er en anerkjent metode i programmeringsverdenen. Denne testdrevne metoden har vi tatt inn i  undervisningen. Vi har automatiske små tester som verifiserer at studentenes kode er riktig, forteller IKT-forskeren fra UIA.

Tilpasset arbeidslivet
I tillegg er undervisningen knyttet veldig nært opp mot det arbeidslivet som de fremtidige utviklerne skal arbeide opp mot og de får muligheten til å trene i et miljø som er så likt arbeidslivet som mulig. Testsenteret er bygget slik at de bruker de samme verktøyene som er standard i programmeringsbedrifter. Dette skal forberede studentene på en situasjon som er lik det de faktisk vil oppleve i jobb etter endt utdanning.

programmering-4 En skjematisk oversikt over systemets arkitektur

Verktøy og miljø
– For å  få den testdrevne metodikken til å fungerer, må verktøy og et miljø være på plass. Vi har hatt fokus på å velge verktøy som brukes aktivt av programmeringsbedrifter, slik blir studentene vant til det som brukes i den “virkelige verden", forteller Goodwin. Dette inkluderer versjonskontroll, integrasjons- og  byggemiljø, som helt klart bør sitte i fingrene til uteksaminerte studenter. Med versjonskontroll mener han  programvare som organiserer kode og holder styr på versjoner blant annet fra flere programmerere.

– Vi benytter oss av versjonskontrollsystemet git. Integrasjons- og byggemiljø er programvare- byggerkode som  knytter opp alle avhengighetene samt kjører tester for å se om koden fungerer som det skal, forteller programmeringslæreren fra Campus Grimstad.

Behovsbasert og individuelt tilpasset
Systemet legger opp til at studentene kan jobbe i eget tempo og uavhengig av lærerens tilgjengelighet. På den måten blir det lettere for elevene å arbeide med de emnene de har behov for å trene mest på. Evalueringsverktøyet som brukes skal også være i stand til å lære seg hver enkelt students utfordringer og foreslå behovsbaserte oppgaver. Dermed kan studentene arbeide individuelt med hver sine emner og på den måten lærer de både raskere og mer effektivt enn ved tradisjonell undervisning. Slik bidrar universitetet i følge Goodwin til at arbeidslivet får nettopp de utviklerne som de trenger. Goodwin forteller at dette systemet ikke er noe de har arbeidet fram helt alene.

– Vi har utviklet dette med finansiering fra Norgesuniversitetet, og i samarbeid med Universitetet i Stavanger, Høgskolen i Oslo, og Noroff University College, forteller han.

Unikt prosjekt
Prosjektet er ganske nytt. IKT-forskeren ved campus Grimstad forteller at dette var noe de startet med i  august 2015 og som skal vare fram til august 2017. Det har i følge ham vært i drift fra første stund.  – Hensikten er både at studentene får umiddelbar tilbakemelding på besvarelsene, og at de jobber i et næringslivsrettet miljø. I løpet av undervisningen får de erfaring med verktøy fra næringslivet samtidig som de får automatisk tilbakemelding, forteller han.

programmering-5 Slik ser brukergrensesnittet ut.

Til sammenligning kan han fortelle at NTNU har et opplegg hvor de får tilbakemelding på en ganske annen måte. Der er det ikke knyttet til verktøy fra næringslivet.  – Det å ta den testdrevne utvikling til undervisningen i det omfanget vi gjør er , så vidt meg bekjent, vi de eneste som gjør, legger han til.

Mer uavhengige
Det nye læresystemet har i følge ham blitt godt tatt imot både av lærere og studenter.  Han opplever at det gjør studentene mer uavhengige, samtidig som læreren kan fokusere på andre deler av undervisningen enn å rette oppgaver. Automatisk testing er likevel ikke noen erstatning for læreren. –  Det er mye de automatiske testene ikke kan vise eller hjelpe meg som krever menneskelig kompetanse.  Automatiske tester er etter vår erfaring et veldig godt supplement for å øke læringen i programmeringsfag, samt etablere en rutine for å gi studentene erfaring i å jobbe i et arbeidslivsnært miljø, mener han.

Testene gjør det  mulig å kjøre flere oppgaver uten at det går utover kapasiteten til læreren, og læreren kan fokusere på å evaluere oppgaver som ikke lar seg enkelt teste.

Fornøyde studenter
Studentene er i følge ham også veldig godt fornøyd med systemet: – Studentenes holdning til automatisk tilbakemelding er utelukkende positiv og de bruker det aktivt. De føler at de får mer og raskere tilbakemelding nå enn uten automatisk testing. De har også frihet til å jobbe når de ønsker, og er ikke avhengig av lærerens begrensede tid for hjelp, forteller han.

Det å  jobbe i et testdrevet arbeidslivsnært miljø er i følge ham veldig formelt, og bruk av den testdrevne metodikken krever en formell prosedyre fra studentene. Den formelle prosedyren er slik at ”nesten riktig” kode ikke er godt nok, akkurat slik det også vil være i en reell utviklingssituasjon.

Mestring
–  Mange studenter sliter med denne formen for arbeid, men etter noen uker mestrer de fleste studentene dette, sier han.  Goodwin forteller også at noen studenter også synes versjonskontroll er vanskelig, spesielt i samarbeidsoppgaver.  Utfordringer studenter har med versjonskontroll kan noen ganger gå på bekostning av læringsmålene for andre oppgaver. – Det er uten tvil vesentlig bedre å trene på versjonskontroll i studietiden enn å ikke kunne dette etter endt utdannelse, mener han.

Næringslivet positiv
UIA-forskeren kan også fortelle at de også har fått noen tilbakemeldinger fra næringslivet. – Vi har jobbet med næringslivet for innspill til hvordan vi kan utføre testingen. Vi har blant annet hatt innspill fra Skatteetaten, som har et stort utviklingsmiljø nær campus Grimstad ved UiA, og mindre utviklingsbedrifter. Næringslivet er veldig positiv til endringene vi gjør i programmeringsfagene, forteller han.

Kommentarer