DIGITAL LIBRARY
COMPUTER-BASED ASSESSMENT SYSTEM FOR E-LEARNING APPLIED TO PROGRAMMING EDUCATION
Faculdade de Engenharia da Universidade do Porto (PORTUGAL)
About this paper:
Appears in: ICERI2011 Proceedings
Publication year: 2011
Pages: 3738-3747
ISBN: 978-84-615-3324-4
ISSN: 2340-1095
Conference name: 4th International Conference of Education, Research and Innovation
Dates: 14-16 November, 2011
Location: Madrid, Spain
Abstract:
The e-learning systems are, currently, extremely useful tools in education, helping to reduce the distance between students and teachers and providing better methods for monitoring the learning process. These systems can play a particularly important role in programming courses, due to students needing to solve a high number of exercises while learning from their mistakes.

The overall learning process can be improved by the use of an automated assessing tool, since it can present the student the feedback he needs to refine his programming skill. Moreover, teachers will benefit from not having to carry these tasks manually, which allows them to provide immediate feedback and more frequent assessment.

In this paper a new Computer-Based Assessment (CBA) system is proposed, based on Moodle and the DOMjudge platform, and developed for supporting the programming components of the courses of the Faculty of Engineering of University of Porto (FEUP). From an initial prototype that had been implemented with a set of essential features, it was improved to provide more complex functionalities that increase the effectiveness of this tool.

This paper starts by presenting a study of state-of-the-art CBA systems in order to compare the features they implement to the basis of the CBA system, followed by an identification of the main points which needed to be addressed to improve its effectiveness. Between the advanced features outlined, the ones that distinguish themselves are the plagiarism detection and the static analysis of code quality. The former aims to motivate students to learn by themselves, while the latter to help students improve their programming style and skill.

An architecture for the CBA system was conceived bearing in mind modularity and scalability. The system currently supports grading parameters such as the definition of the start and end time, maximum number of submissions and configuring the level of feedback on a per exercise basis. This paper covers details of the CBA system implementation as well as the advanced modules developed, with emphasis on the plagiarism detection, static analysis of code quality, feedback system and assessment creation possibilities.

The CBA system was used in a contest proposed by the teachers of a course unit and a report on this case study is also presented in next section, yielding important information on the feedback of teachers and students, but also some limitations that were found on system hardware. Besides, the developed modules were implemented, tested and integrated with extensibility in mind, providing guidelines on how they can be expanded and how to improve a few incomplete advanced features.

Regarding the results, it was concluded that the CBA system can be used in a real working environment, providing it is installed in production servers and all users are warned that the platform is still in test. However, in order to further unleash the educational potential of the system, the advanced modules could benefit from some optimizations and extended functionalities.
Keywords:
e-learning, moodle, domjudge, cba system, static analysis, plagiarism detection.