A Tool for N-way Analysis of Programming Exercises

Abstract Programming exercises are a corner stone in Computer Science courses. If used properly, these exercises provide valuable feedback both to students and instructors. Unfortunately, the assessment of student submissions through code inspection requires a considerable amount of time. In this work we present an interactive tool to support the analysis of code submissions before, during, and after grading. The key idea is to compute a dissimilarity matrix for code submissions, using a metric that incorporates syntactic, semantic and functional aspects of the code. This matrix is used to embed the submissions in 2D space, so that similar submissions are mapped to nearby locations. The tool allows users to visually identify clusters, inspect individual submissions, and perform detailed pair-wise and abridged n-way comparisons. Finally, our approach facilitates comparative scoring by presenting submissions in a nearly-optimal order, i.e. similar submissions appear close in the sequence. Our initial evaluation indicates that the tool (currently supporting C++/GLSL code) provides clear benefits both to students (more fair scores, less bias, more consistent feedback) and instructors (less effort, better feedback on student performance).

, booktitle = {
EuroVis 2020 - Posters
}, editor = {
Byška, Jan and Jänicke, Stefan
}, title = {{
A Tool for N-way Analysis of Programming Exercises
}}, author = {
Andujar, Carlos
Comino Trinidad, Marc
Fairén, Marta
Vinacua, Àlvar
}, year = {
}, publisher = {
The Eurographics Association
}, ISBN = {
}, DOI = {
} }