A Tool for Assisted Correction of Programming Exercises in Java Based in Computational Reflection
Published date: 21/11/2018
INTRODUCTION: This work reports on the creation and use of a tool to verify compliance in java programming exercises. The solution is based on the hypothesis that computational reflection can provide a way to automatically assess the programing competences of students. The work reflects the concern to make students learning a programming language have practical activities in parallel to what they learn in theoretical classes. OBJECTIVE: Attesting the effectiveness of using computational reflection to automatically correct programming exercises. Provide the teacher with a tool to support the follow-up of practical activities. Provide students with immediate feedback on their learning, so as to encourage them to behave more autonomously. METHOD: A case study was carried out with two classes of a computer sciencecourse. They answered five practical programming exercices and their responses for each activity were collected in source code format, which were used as the basis of solutions, totaling 100 responses.A comparative analysis was made between the notes obtained through CodeTeacher and the notes assigned by a group of  teachers. RESULTS: Comparing the expected notes and the actual notes, the automatic correction obtained an accuracy of 90.17%. CONCLUSION: The use of computational reflection techniques for assisted correction in programming classes can bring beneficial result. Teachers can optimize their work and have performance reports of their students. Students can also be benefited by having an immediate feedback, so they can perceive themselves capable of achieving the learning objectives defined by the teacher.