I want to present an early version of the assignment module we will use at ULPGC virtual campus the next academic year starting in October. The module is fully functional, but it is not tested extensively (we are in that process now). I have included language files for english and spanish.
The module is a gathering of functions published previously here, but rewritten to work together. And adds a new type of assignment: a Group Assignment.
This GroupAssignment allows a small team of students (gathered in a moodle group) to make a single collective submission, and the teacher to grade that single submission with grades (and feedback coments files etc.) replicated for all members of the team. Let me show the functions of each assignment type within ULPGCassignment, I hope I am not missing any feature:
|Students can review sumissions by peers (after they have submitted and the assignment is closed: no new submissions are accepted). || all but offline (nothing to show)|
selectable on/off by teacher
|Two separate steps: uploading files and commiting a submission for marking||upload, uploadfull, groupupload|
|Students can submit several files|| upload, uploadfull, groupupload|
selectable on/off by teacher
|Students can delete their own files (while on 'draft' mode, not after submission)|
If a student delete all files uploaded, the 'draft' submission is deleted at all.
|upload, uploadfull, groupupload|
|Teachers can upload one or multiple files as corrections/response files ||upload, uploadfull, groupupload|
|Both student and teacher files are shown as links in the main submission list||upload, uploadfull, groupupload|
|Several teachers can upload corrections files separately. The student see what teacher made each correction file. (However only one grade is admitted)||upload, uploadfull, groupupload|
|Teachers can delete all their uploaded files at once||uploadfull, groupupload|
|teachers can batch-upload grades and comments from a CSV text file.|| offline, uploadfull, groupupload|
|In addition teachers can save a CSV file with grades and comments||uploadfull, groupupload|
|Teachers can make a ZIP archive with all files submitted by students||uploadfull, groupupload|
|A student can submit a file acting as a group-member||groupupload|
|The teacher can set GroupAssesment mode to see submissions list ordered by groups, not individual students|| groupupload|
GroupAssessment mode on/off by the teacher
|The teacher can assess the group and grade and feedback are automatically assigned to all students members of the group||groupupload|
|The teacher can revert to individual assessment mode to assign individual grades to each member of a team/group||groupupload|
The code to perform all these functions comes from multiple sources. Original ideas and some code comes from Echo-assignment and Upload&Review assignment types. Other from the upload multiple from Gustav Delius and Drop box from AUassignment. However, we have rewritten very diferently the AUassignment to take advantage of OO nature of the assignment class.
The GroupAssignment type is designed to be used in visible/sepasate groups mode. It will not allow to submit to users that are not members of any group. When the students enter the Assignment view they will see a menu to select the group to wich the submission will be atributted. An error should occur if he is not a member of that group. A checking is performed to ensure that any member of that group has not submitted before as member of other group (in a multiple group membership scenario). The group assigment is designed to be used with groups in where each student is member of a single group. In other words, checkings are performed to ensure that there is a single submission for each student (versus A submission as member of group X and B submission as member of Group Y, that would mess grading). If a student that is member of several groups gets confused and make a submission as member of the wrong group, he can delete his own submission.
I would appreciate any comments on the features and orgatization of this module. We are polishing it yet, but works well enough to test and playing around. I will update when we have a better version.