This poster presents MATLAB Critiquer, a system that examines code submissions and provides feedback to first year engineering students who are learning to program in MATLAB. Code Critiquers act as substitute mentors, when instructors are not available, and give students experience with interactive, test-driven development. Students using our critiquer are engaged in communication by proxy with the instructor. This communication does not replace instructor feedback; rather, it codifies common feedback scenarios to assist the instructor in reaching students just when the student is engaged in problem solving and learning. Our critiquer uses the MATLAB Java API; connecting to the MATLAB Engine that parses and executes student code submissions. We process error messages that are returned using regular expressions, then use these results to craft feedback for the students. Static code analysis is used to provide feedback on style. The critique covers code structure, shakedown test results, and programming style in a manner appropriate for novice coders.
[1]
Stephen H. Edwards,et al.
Web-CAT: automatically grading programming assignments
,
2008,
ITiCSE.
[2]
David Hovemeyer,et al.
Experiences with marmoset: designing and using an advanced submission and testing system for programming courses
,
2006,
ITICSE '06.
[3]
Eleni Stroulia,et al.
JDeodorant: identification and application of extract class refactorings
,
2011,
2011 33rd International Conference on Software Engineering (ICSE).
[4]
Christopher K. Riesbeck,et al.
An Incremental Model for Developing Educational Critiquing Systems: Experiences with the Java Critiquer
,
2008
.
[5]
Nathan Griffiths,et al.
The boss online submission and assessment system
,
2005,
JERC.
[6]
Arto Vihavainen,et al.
Test My Code: An Automatic Assessment Service for the Extreme Apprenticeship Method
,
2013
.