vix.ing · top · new · best · stats · spec

Teaching Python programming with automatic assessment and feedback provision

2015/09/11 by Hans Fangohr, Fangohr, Hans, Neil O'Brien +6
Computer Science · Engineering · #Computers and Society (cs.CY) #Experimental Learning in Engineering #FOS: Computer and information sciences #Software Testing and Debugging Techniques #Teaching and Learning Programming #cs.CY

paper · pdf · doi:10.48550/arxiv.1509.03556

26 pages

arxiv created 2015/09/11 · openalex publication_date 2015/09/11 · arxiv updated 2015/09/14 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

We describe a method of automatic feedback provision for students learning programming and computational methods in Python. We have implemented, used and refined this system since 2009 for growing student numbers, and summarise the design and experience of using it. The core idea is to use a unit testing framework: the teacher creates a set of unit tests, and the student code is tested by running these tests. With our implementation, students typically submit work for assessment, and receive feedback by email within a few minutes after submission. The choice of tests and the reporting back to the student is chosen to optimise the educational value for the students. The system very significantly reduces the staff time required to establish whether a student's solution is correct, and shifts the emphasis of computing laboratory student contact time from assessing correctness to providing guidance. The self-paced nature of the automatic feedback provision supports a student-centred learning approach. Students can re-submit their work repeatedly and iteratively improve their solution, and enjoy using the system. We include an evaluation of the system and data from using it in a class of 425 students.

Related