Finally, websubmit can invoke a designated
program or script each time an assignment is made. The intention is for
that program to trigger automatic
grading of the assignment. The program to be invoked is
specified via a <grader>
element.
<assignment>
<title>CS361: Keeping Your Distance</title>
<roster>/home/zeil/cs361/Assignments/f10/roster.dat</roster>
<directory>/home/zeil/cs361Submissions/editd</directory>
<file>
<filter>editdist.cpp</filter>
<text>Your implementation of the editDistance function.</text>
<required>1</required>
</file>
<file>
<filter>README.txt</filter>
<text>Notes to the grader, if any.</text>
</file>
<solutionDirectory>/home/zeil/cs361/Solutions/editd</solutionDirectory>
<solutionDate>7/31/2010</solutionDate>
<grader>/home/zeil/bin/requestGrading.pl /home/zeil/cs361/Build/Assignments/sum10/distance/distance.pl</grader>
</assignment>The text of the <grader> element
will be passed to the shell for execution, with two additional command
arguments appended:
the student's login name, and
the directory within which the submitted files have been placed
This script could do grading (the example shown queues up the assignment submissions for handling by my autograder program) or might do something simpler such as send an email to the instructor or graders informing them of the submission.
For security reasons, the command named in this element must be executable by group faculty but not executable by the world.