Rättningsverktyget Umbridge
Umbridge är ett verktyg för att automaträtta inlämningar i programmeringskurser.
Källkoden för verktyget kan ni hitta på GitHub.
#Hur det funkar
Det finns enhetstester kopplade till varje inlämning. Enhetstesterna är skrivna så att de täcker upp alla kraven. På så sätt är vi 99% säkra på att studenten har utfört uppgifterna på lämpligt sätt för att uppnå godkänt om alla tester passerar.
Processen består av fyra steg, där egentligen det bara är steg två och tre som är en del av Umbridge.
Förberedelse fasen. Studenten laddar upp sin kod så den finns tillgänglig för Umbridge och lämnar in på Canvas.
Var 5:e minut kopplar Umbridge upp sig mot Canvas och samlar in alla inlämningar som inte är rättade.
För varje inlämning laddar Umbridge ner studentens kod och kör testerna. Om testerna passerar sätts betyget PG (preliminärt godkänt) annars sätts Ux (komplettering). När betyget sätts skickar Umbridge också med en loggfil med utskriften av testerna och en länk som kan användas för att titta på studentens kod.
Sista steget i processen är att en rättare kollar igenom alla inlämningar som har betyg PG. Rättaren dubbelkollar innehållet i loggfilen, läser igenom redovisningstexten och kollar på studentens kod.
Det sista steget är viktigt för att säkerställa att studenterna inte skriver kod för att lura testerna och för att inspektera hur bra koden är skriven. Då kan rättaren ge feedback på hur koden är skriven, om den bör förbättras.
#Syfte
Varför valde vi att börja med automaträttning och varför utvecklade vi systemet själva istället för att köpa in en färdig tjänst?
Det finns främst två anledningar till att vi började med automaträttning, tid och snabb återkoppling. Studenter behöver inte vänta i några dagar på att en rättare ska få tid att kolla på deras inlämningar. Istället kan studenten själv köra testerna som finns innan inlämning för att vet om de är klara eller inte. Samtidigt kan de se vad som är fel, som de behöver fixa. Studenterna kan också jobba iterativt och nästa lite TDD. Forskningen visar också på att det är bra för studenter när de kan få återkoppling direkt om de är klara eller inte. I sektionen Forskning kommer vi, en vacker dag när vi har tid över, sammanfatta hur forskningsläget ser ut för automaträttning. Rättningen går väldigt mycket snabbare när rättarna bara behöver kolla på inlämningar som de vet har uppnått kraven för inlämningen, de slipper laddar ner kod och köra kod som inte alltid funkar. Det är tid vi kan lägga på att vara aktiva i chatten eller utveckla kursen istället.
Vi valde att utveckla ett eget system för att existerande tjänster kostar väldigt mycket pengar och vi anser inte att tjänsten är komplex nog att förtjäna sin prislapp. Sen är vi också väldigt förtjusta i konceptet “kan själv”, budord 3. Vi behöver också öva och lära oss nya saker, som vi kan använda i våra kurser. Därför var detta ett ypperligt tillfälle att utveckla ett eget verktyg.
#Forskning
Vad säger forskningen om automaträttade uppgifter?
TO-DO
#Revision history
- 2021-06-22: (A, aar) Första versionen.