Skrywers:
(1) Philipp Straubinger, Universiteit van Passau, Duitsland;
(2) Gordon Fraser, Universiteit van Passau, Duitsland.
2.2 Gamifikasie van sagtewaretoetsing
3 Gamifying deurlopende integrasie en 3.1 Uitdagings in die onderrig van sagtewaretoetsing
3.2 Gamifikasie-elemente van Gamekins
3.3 Gamified Elements en die toetskurrikulum
4 Eksperimentopstelling en 4.1 Sagtewaretoetskursus
4.2 Integrasie van Gamekins en 4.3 Deelnemers
4.5 Bedreigings vir Geldigheid
5.1 RQ1: Hoe het die studente Gamekins tydens die kursus gebruik?
5.2 RQ2: Watter toetsgedrag het die studente getoon?
5.3 RQ3: Hoe het die studente die integrasie van Gamekins in hul projekte ervaar?
7 Gevolgtrekkings, erkennings en verwysings
Toetsing speel 'n deurslaggewende rol in sagteware-ontwikkeling, en dit is noodsaaklik vir sagteware-ingenieurstudente om behoorlike toetsonderrig te ontvang. Dit kan egter uitdagend wees om studente te motiveer om toetse te skryf en outomatiese toetse te gebruik tydens sagteware-ontwikkeling. Om hierdie kwessie aan te spreek en studentebetrokkenheid by toetsing te verbeter wanneer hulle kode skryf, stel ons voor om studente aan te spoor om meer te toets deur deurlopende integrasie te speel. Hiervoor gebruik ons Gamekins, 'n instrument wat naatloos in die Jenkins deurlopende integrasieplatform geïntegreer is en speletjie-elemente gebruik wat gebaseer is op verbintenisse tot die bronkode-bewaarplek: Ontwikkelaars kan punte verdien deur toetsuitdagings en take te voltooi wat deur Gamekins gegenereer word, meeding met ander ontwikkelaars of spanne op 'n puntelys, en ontvang prestasies vir hul toetsverwante prestasies. In hierdie vraestel bied ons ons integrasie van Gamekins in 'n kursus op voorgraadse vlak oor sagtewaretoetsing aan. Ons sien 'n korrelasie tussen hoe studente hul kode toets en hul gebruik van Gamekins, sowel as 'n beduidende verbetering in die akkuraatheid van hul resultate in vergelyking met 'n vorige iterasie van die kursus sonder gamification. As 'n verdere aanduiding van hoe hierdie benadering toetsgedrag verbeter, het die studente genot gerapporteer om toetse met Gamekins te skryf.
CCS KONSEPTE
• Sagteware en sy ingenieurswese → Sagtewaretoetsing en ontfouting; • Sosiale en professionele onderwerpe → Sagteware-ingenieursopvoeding
SLEUTELWOORDE
Sagtewaretoetsing, Gamifikasie, Deurlopende Integrasie, Onderwys
ACM-verwysingsformaat:
Philipp Straubinger en Gordon Fraser. 2024. Gamifying van 'n sagtewaretoetskursus met deurlopende integrasie. In 46ste Internasionale Konferensie oor Sagteware-ingenieurswese: : Sagteware-ingenieursopleiding en -opleiding (ICSESEET '24), 14–20 April 2024, Lissabon, Portugal. ACM, New York, NY, VSA, 12 bladsye. https://doi.org/10.1145/3639474.3640054
Sagtewaretoetsing is 'n goed gevestigde konsep en word wyd gebruik in die industrie [13]. Ten spyte van die beskikbaarheid van verskeie instrumente wat die toetsproses vergemaklik, soos toetsondersteuning in geïntegreerde ontwikkelingsomgewings (IDE) [26] en outomatiese toetsuitvoering in deurlopende integrasie (CI) platforms [8], word toetsing egter dikwels in die praktyk oor die hoof gesien. Gespekuleerde redes hiervoor sluit in ontwikkelaars se gebrek aan motivering om betrokke te raak by toetsaktiwiteite en 'n gebrek aan opvoeding in sagtewaretoetsing [14, 30, 41, 49, 50]. Alhoewel die dikwels onvoldoende behandeling van toetsing in hoër onderwys [41] onlangs teengewerk is met 'n toenemende erkenning van die belangrikheid van toetsing [9, 29, 35], word dit nietemin belemmer deur leerders net soos ontwikkelaars wat geneig is om toetsing as vervelig te beskou en vervelig [32]. As gevolg hiervan ly die bedryf aansienlike verliese as gevolg van onvoldoende sagtewarekwaliteit en onvoldoende toetsing [31].
Gamification-tegnieke bied 'n geleentheid om studente te motiveer om te toets ten spyte van hul persepsie dat dit vervelig of vervelig is. Gamification behels die inkorporering van elemente wat algemeen in speletjies voorkom, soos ranglyste en prestasies, in nie-speletjie-kontekste [15]. Daar is gedemonstreer dat hierdie benadering studente help om by sagteware-ingenieurswese-onderwys betrokke te raak [24], byvoorbeeld deur lesings of nutsmiddels om sagteware-toetsing te onderrig [7, 12, 16, 22, 36] te speel. Ten einde egter vir studente om toetsing te internaliseer en dit as 'n integrale deel van hul ontwikkelingsbenadering te vestig, argumenteer ons dat naatlose integrasie van gamification van toetsing in die sagteware-ontwikkelingsproses nodig is.
Om dit te bereik, integreer ons gamification in deurlopende integrasie (CI) stelsels wat deur studente gebruik word. Spesifiek, ons gebruik Gamekins [47], 'n inprop wat ontwerp is vir die wyd gebruikte CI-platform Jenkins[1], wat gamification naatloos in die sagteware-ontwikkelingswerkvloei integreer. Deur bronkode en toetsresultate te ontleed, identifiseer Gamekins areas waar toetsing verbeter kan word op grond van kodedekking [53] of mutasie-analise [28] en stimuleer dan verbetering deur gebruik te maak van gamification-konsepte soos uitdagings en take, beloon goeie toetsing met punte, prestasies, en ranglys ranglys. Ons het die voordele van die integrasie van Gamekins in 'n voorgraadse sagtewaretoetskursus geëvalueer en die impak daarvan op die kursus se leerdoelwitte en studentegedrag ondersoek. In besonderhede is die bydraes van hierdie artikel soos volg:
• Ons stel die gebruik van gamification voor as 'n manier om toetsaktiwiteite in GI aan te spoor en te beloon.
• Ons stel Gamekins bekend as 'n instrument wat gebruik kan word in 'n voorgraadse-vlak sagteware toets kursus.
• Ons evalueer empiries die uitwerking van die integrasie van Gamekins in die sagteware-toetskursus, vergelyk met 'n vorige kohort sonder gamification en ondersoek die studente.
Die resultate van die studie demonstreer 'n korrelasie tussen studente se toetsgedrag en die gebruik van Gamekins, sowel as 'n beduidende verbetering in korrekte resultate in vergelyking met die vorige uitgawe van die kursus, waar geen gamification op dieselfde opdragte gebruik is nie. Alhoewel nie alle aspekte van Gamekins universeel deur studente gehou is nie, het hulle in die algemeen die gebruik daarvan deur die kursus geniet, wat bevestig dat Gamekins 'n lewensvatbare onderriginstrument is.
Hierdie vraestel is beskikbaar op arxiv onder CC BY-SA 4.0 AKTE-lisensie.
[1] https://www.jenkins.io/