A colleague of mine (Christopher Anand, [EMAIL PROTECTED]) has an automated, web-based program for automatically grading simple programming assignements (in C, but theoretically that does not matter). This is in current use by a class of first-year computer science students, and has been in use for ~3 years now. He has been pondering the eventual open-sourcing of this project.
The validation and checking is automated, but the testing methodology and the feedback portions need to be designed-in by the author of a particular problem. Infrastructure is provided to help with all these steps. On a somewhat related note, for mathematics (and physics and ...) problems, there does exist such software. See MapleTA from Maplesoft inc (www.maplesoft.com). The 'equivalence' problem for answers to differential equations questions is on the same order of complexity as that of testing if two ~20 line programs denote the same function (ie it is undecidable in general, has many decidable sub-cases which are at least NP-complete, and yet in practice can be effectively done on problems of interest). Jacques -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Chris Douce Sent: October 18, 2004 3:54 AM To: [EMAIL PROTECTED] Subject: PPIG discuss: Automatic marking of programs Hi, This is a two part question that is loosely related to the previous thread: Lets say I have a class of students performing a group of simple progamming assignments in Java (for sake of argument). By assignments I'm thinking of exercises that performs simple temperature conversion, calculate average rainfall, calculates a factorial, or a set of classes to exhibit a particular behaviour through published methods. Does anybody know of any papers that try to address the problem of automated (by computer) validation/checking of student programs, potentially providing feedback regarding student assignments? I appreciate that a lot of checking and validation is performed by a compiler (and the interesting error messages that are created), and that code can be automatically tested through a mechanism like JUnit, providing they are integrated into the software that is to be tested (and written properly)... Do you know whether anybody has investigated or implemented a more 'student friendly' mechanism for automated checking/validation of submitted programs which could be related to particular assignments or programming tasks? Also, if we have a sample program, does anyone know of a tutoring system that may assist students through the automatic generation of natural language questions derived from a submitted program text? I appreciate that most of the time a compiler facilitates the generation of these questions, through user interpretation... All references and comments greatfully appreciated, Many thanks. Chris ---------------------------------------------------------------------- PPIG Discuss List ([EMAIL PROTECTED]) Discuss admin: http://limitlessmail.net/mailman/listinfo/discuss Announce admin: http://limitlessmail.net/mailman/listinfo/announce PPIG Discuss archive: http://www.mail-archive.com/discuss%40ppig.org/ ---------------------------------------------------------------------- PPIG Discuss List ([EMAIL PROTECTED]) Discuss admin: http://limitlessmail.net/mailman/listinfo/discuss Announce admin: http://limitlessmail.net/mailman/listinfo/announce PPIG Discuss archive: http://www.mail-archive.com/discuss%40ppig.org/
