Automating the assessment of programming assignments in higher education institutions is important to provide prompt feedback to the students, reduce teachers’ workload on repetitive tasks, avoid human errors, and enable the exploration of new educational paradigms such as gamification and course adaptation based on learning analytics.However, the automatic assessment of programming assignments is challenging because of the variety of programming languages, the variety of assessment strategies, the difficulty to assess quality attributes beyond functional correctness, and the need to integrate with e-learning and students management platforms. There are several platforms for automatic assessment that are used namely in programming contests, but that support only one assessment strategy or do not integrate with students management platforms.To overcome those limitations, the authors, from the Faculty of Engineering of the University of Porto, developed an extensible web based platform for the automatic evaluation of programming assignments, integrated with the students management platform, and supporting multiple programming languages (ranging from Assembly to Java) and assessment strategies (input/out, API), as well as gamification and analytics features.The platform, in a controlled and secure environment (protected against malicious code, infinite loops, etc.), executes the code submitted by students against test suites submitted by the teacher, reporting the results to the students and relevant statistics to the teachers.The platform was successfully applied in real class environment, involving 340 students from two different courses, significantly reducing the time for feedback and teachers workload as compared to previous editions.
José Cardoso, University of Porto, Portugal
João Pascoal Faria, University of Porto and INESC-TEC, Portugal
Bruno Lima, University of Porto and INESC-TEC, Portugal
Stream: e-learning and collaborative learning
Added on Tuesday, June 20th, 2017
This paper is part of the ECE2017 Conference Proceedings (View)
View / Download the full paper in a new tab/window