Impendulo: A Tool for Analysing Programmer Behaviour

Date
2015-03
Journal Title
Journal ISSN
Volume Title
Publisher
Stellenbosch : Stellenbosch University
Abstract
ENGLISH ABSTRACT : Automated submission systems for Computer Science courses are common- place today, however, these systems are typically solely focused on grading submissions and their ability to provide analysis and feedback is vastly under- utilised. This thesis seeks to address this by presenting Impendulo, a platform for analysing programmer behaviour. Impendulo allows one to study student per- formance at both a group and an individual level. This is achieved through the use of a customisable set of software analysis tools which Impendulo runs on user submissions. The results produced by the tools are parsed by Impendulo to produce rich feedback in the form of interactive charts, annotated code and detailed reports. In order to ascertain whether Impendulo's approach is viable, experimental trials were conducted with it throughout its development process. These trials consisted of a group of students using the Impendulo system while solving a set of programming problems. After each trial, the results were studied and used to determine which aspects of the system needed to be improved. At the end of Impendulo's development, all of the experiments were studied again to gain insight into the tested students' programming.
AFRIKAANSE OPSOMMING : Outomatiese inhandigings sisteme vir rekenaarwetenskap kursusse is vandag 'n algemene verskynsel, maar hierde sisteme is tipies net gefokus daarop om werk te gradeer en hulle kapasiteit om analise en terugvoer te lewer word nie benut nie. Hierdie tesis beoog om hierdie kwessie aan te pak met die ontwikkeling van Impendulo, 'n platform vir die analise van programmeerder gedrag. Impendulo laat gebruikers toe om studente se vordering te monitor op beide 'n individele en 'n groep vlak. Dit word bereik deur 'n student se werk te analiseer met 'n aanpasbare stel analise sagteware. Die resultate wat deur die sagteware geproduseer word, word deur Impendulo ontleed sodat dit terugvoer kan gee in die vorm van interaktiewe gra eke, geannoteerde kode en gedetailleerde verslagte. Eksperimente is geloop tydens Impendulo se ontwikkeling om te bepaal of ons benadering prakties is. Hierdie eksperimente het bestaan uit 'n groep van studente wat die Impendulo sisteem gebruik terwyl hulle aan 'n stel probleme werk. Na elke eksperiment is die resultate daarvan ontleed en gebruik om te bepaal watter aspekte van die sisteem aandag benodig. Aan die einde van Impendulo se ontwikkeling is al die eksperimente weer na gegaan om insig te kry oor hoe die getoetste studente programmeer.
Description
Thesis (MSc)--Stellenbosch University, 2015.
Keywords
Programming assessment tools, Software analysis tools, Student assessment tools, Programmer behaviour assessment, Static analysis tools., UCTD, Behavioral assessment
Citation