Regression Verification for Automated Evaluation of Students Programs
Computer Science and Information Systems, Tome 17 (2020) no. 1
Cet article a éte moissonné depuis la source Computer Science and Information Systems website
Regression verification is a form of software verification based on formal static analysis of code, which is used, since recently, in several domains. In this paper we examine potentials of using it in one novel domain — in automated evaluation of students programs. We propose an approach that provides precise assessment of functional correctness of student programs (while it does not address nor affect the teaching methodology). We describe our open-source, publicly available implementation of the approach, which is built on top of the compiler infrastructure LLVM and the software verification tool LAV. The results of evaluating the proposed approach on two real-world corpora of student programs and on a number of classic algorithms show that the proposed approach can be used as a precise and reliable supplementary technique in grading of student programs at introductory programming courses, algorithms courses and programming competitions.
Keywords:
software verification, regression verification, automated evaluation of student programs, computer-supported education
@article{CSIS_2020_17_1_a11,
author = {Milena Vujo\v{s}evi\'c Jani\v{c}i\'c and Filip Mari\'c},
title = {Regression {Verification} for {Automated} {Evaluation} of {Students} {Programs}},
journal = {Computer Science and Information Systems},
year = {2020},
volume = {17},
number = {1},
url = {http://geodesic.mathdoc.fr/item/CSIS_2020_17_1_a11/}
}
Milena Vujošević Janičić; Filip Marić. Regression Verification for Automated Evaluation of Students Programs. Computer Science and Information Systems, Tome 17 (2020) no. 1. http://geodesic.mathdoc.fr/item/CSIS_2020_17_1_a11/