ULPGCassignment: multiple files & group assignment

ULPGCassignment: multiple files & group assignment

by Enrique Castro -
Number of replies: 16
Picture of Core developers Picture of Particularly helpful Moodlers
Hi,
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.

Enrique
Average of ratings: -
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Matt Street -
Enrique,

This sounds great, just what we have been looking for! Just three quick questions:

1. Do you have any instructions on how we can integrate this with Moodle?
2. Which version of Moodle are you using?
3. One other piece of functionality that we have been thinking about is to provide the student with the ability to apply for an extensions to the due date. Is this something you have given any thought to?

Regards

Matt
In reply to Matt Street

Re: ULPGCassignment: multiple files & group assignment

by Enrique Castro -
Picture of Core developers Picture of Particularly helpful Moodlers
We are deploying Moodle 1.6.1+ next october and this module works for that. Downgrading to 1.5 may function, I haven't tested. For 1.7 we only need to change a few lines to add the 'has_capability' checkings.

For installing simply drop the ULPGCassigment folder into your moodle/mod/ folder. Move lang files to wwwroot/lang or dataroot/lang as necessary. Then visit you admin page and the tables will get installed. The module is named ULPGCassignment just to make possible to install it cleanly without touching an exisnting regular Assignment module. However, the aim is to replace the regular Assignment if Martin D sees that as a good thing. We have changed the internals of the  assignment base class  to make it more flexible  and  easier to  introduce little customizations into assignment plugin types without actually having to deal with big chunks of code. If Martin and other moodle core developers review the proposed changes and consider that they are valuable those changes may end in standard release.

Regarding the due date extension. I suppose you refer to extending the date for a particular student or group of students. You can always re-set the due date for a running assignment, affecting all students. Is that right? We have not addressed that question, all dates or other settings of the assignment are the same for all students or groups. There are other mods of moodle that may allow what you need, search for conditional activities, or activity locking. I think there was a group hack that allowed to set different dates for different groups.

Enrique
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Matt Street -
Enrique,

Thanks for that, I've installed it successfully and will be spending some time giving it a good workout over the next day or two and will feedback anything I find. Generally it seems to work well, got a few bits of text missing, but that could be my version, I'm new to moodle and I'm still trying to get my head round where everything is and how it works!!!

I found one weired thing you might want to pass onto your testers/developers. . .I submitted an assignment as a student, then I logged in as a tutor, viewed the submitted assignment, clicked Grade, uploaded a response file, then deleted the file and instead of being returned to the grading form I was returned to the Assignment Submission Page, but still in the popup window.

Do you know if there is a way to limit the types of files being uploaded for an assignment? e.g. for Assignment 1 I only want .pdf, for Assignment 2 only .doc, etc.

As for extensions, thanks for the tip, I will have a look around.

Matt
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Jan Toelstede -
>> Downgrading to 1.5 may function, I haven't tested.

No, didnt work. I using 1.5.x, and get message (translated from german):
Modul "ULPGCassignment" could be installed. It needs an recent version of Moodle. Need 2006050512.
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Ton Gorter -

Hi Enrique,

This module seems to deliver exactly the functionality I need. Unfortunately I did not succeed in installing it. I use version 1.7.1.

I have copied the whole ULPGCassignment tree to the mod-folder, and copied the lang-files to the lang folder in the wwwroot, and logged is as admin. I do not see the module in the list of modules.

Do you have any tips?

Thanks in advance.

Ton Gorter

In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Eduardo Hernandez -
Hello Enrique,

I must confess that I loved what you all at ULPG have done. It is a great work. I have just installed it in my local machine to play around.

And while I was trying to delete an uploaded file I got the message:

Fatal error: Call to undefined function delete_record() in C:\moodle\moodle\mod\ULPGCassignment\type\upload\assignment.class.php on line 453

Eduardo
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Simon Bryan -
This is great! Just what we have been looking for!
Have a couple of issues - despite putting the lang file into my en_utf8 file I still see submit and oncesent on the submission screen.

The ablity to upload multiple files is great, but can be tedious if students are submitting a web page with a couple of sub pages and graphics, the ability to upload a zip file and then unzip it in place would be perfect!

Or alternatively being able to do a multiple file select
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by ace riezal -
is it possible for you to provide a documentation, as in the analysis, design or something in uml? really like to have a look at it, oh just wondering have anyone ever done the existing assignment modules uml diagram or some sort.
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Despoina Antonakaki -
Enrique,

at first, thanx a lot for the module.

I just installed successfully ULPGCassignment in windows and I tried to upload a file as a student for a new created assignment. The script of "assignment.class.php" (mod\ULPGCassignment\type\groupupload\assignment.class.php) calls symlink function which is not implemented on Windows platforms.

In order to work in windows, I changed "assignment.class.php" in lines 351 and 304:

$error = symlink($basefile, $copiedfile);

to

if (function_exists('symlink')) {
                                $error = symlink($basefile, $copiedfile);
                        } else {
                        $error = copy($basefile, $copiedfile);
                        }

Despoina Antonakaki
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Nelson King -
I'm a new user (not developer) to Moodle so I can only comment that the functionality in Enrique's module looks great.

When can we expect this module to be added into a released version?  Group assignments is critical functionality for a professor trying to get students to work together.  Moodle grading would in theory be complete enough to use exclusively rather than loading into a spreadsheet or manually adding group grades (mistakes easily made). 

One question on functionality that I did not see addressed.  Can the composition of groups be changed throughout the semester without losing the scores already added?  I randomize my students into groups several times (so they can meet new people) before they settle on a project group for rest of term.

Thanks to all those who are developing/testing and pushing this along.
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Ghassan Geara -
Hi Enrique/All,

I have noticed the following bugs in the ULPGC Assignment:

- Uploaded attached files by the instructor cannot be deleted! The option to "delete" should be possible.
- Import grades from file: When i upload new grades for 2 students, i can no more "update" the grade or the comment. The "Update/Grade" button disappear for these 2 students.
- In the Submissions page: Instructor can delete his reviews one-by-one BUT cannot do it for all reviews.

The option "Delete all my response files" seems not to work. When i click on it, i get in order:

1/ the message "Are you absolutely sure you want to delete this file?"
2/ deleteednotification <review name>.doc
3/ When i click on "Back to Feedback", i get "Error 404 - Not found"

Did anyone face these issues?
Can it be an installation issue rather than a bug issue in the activity itself?

Thanks,
Ghassan

In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Michael Brown -
This is exactly what we are looking for for one of our courses! Any plans to make it Moodle 1.7 compatible in the near future?
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by Rick Barnes -
This looks excellent and covers just about eveything. I have a question though, using the original assignment module I can only grade and provide feedback at the end of the assignment.
Using this assignment module can I provide feedback during the assignment period to help pupils to improve their work. At the moment I have had to close the assignment mark it and leave it closed for a short time before changing the submission date. Using Forums to notify pupils of the changes in status of the assignment.

I have seen a couple of marking tools that I would like to be able to use, one allows you to find ungraded assignments across courses, (I would love to be able to do something similar to find assignments in the draft stage that I have not yet given feedback for without resorting to choking my e-mail using the e-mail teacher option. I have also tried using a program called Markin that works well with .rtf files (not so good with .doc) that I could upload. There is another option to create a web page that I had hoped to use with the online text assignments but pasting the html into the editor just gives me errors. Could you use the teacher upload function to upload a response to an online text assignment?

Rick.
In reply to Rick Barnes

Re: ULPGCassignment: multiple files & group assignment

by Tom Hogan -
Rick,
This response is late, but I thought I should mention it in case your issue still wasn´t resolved or someone else is wondering:

It works to export Markin files to HTML, and then upload the HTML file to Moodle and link it up.

However, it seems that the autolinking feature in Moodle breaks the javascript that Markin produces when exporting, so you need to turn off autolinking of uploaded files.
In reply to Enrique Castro

Re: ULPGCassignment: multiple files & group assignment

by David Turpie -

This module sounds exactly what we're looking for.

have downloaded, copied into the mod folder and moved the lang files, visited the admin section to install the module but i get the following error message during instalation:

Fatal error: Class 'enrolment_base' not found in /home/carmelct/public_html/enrol/internal/enrol.php on line 4

however, in the modules:assignments section of the administration the UPLGCassignment shows up in the list, i just dont seem to be able to add to a course.

any ideas???!! am using 1.8

thanks in advance

david

In reply to David Turpie

Re: ULPGCassignment: multiple files & group assignment

by David Turpie -

ok heres where i am so far, hope someone can help.

i finally got all the issues sorted on the server / moodle site.

since my last installation didnt work, i tried to delete the assignment from the modules admin page, i then completely removed it from the server via ftp. i cam to reinstall it and the tables cant be set up because they already exist. hmm.

2nd problem, i updated to v 1.8.2 on a backup site i have, tried to install the assignment there -this time no problem. untill i try to use it, i can set it up but then as soon as i go to use it i get the following error message:

This SQL relies on obsolete tables! Your code must be fixed by a developer

any ideas if the code is ever going to be updated for v1.8.2?

cheers lots

david