Christmas is approaching and soon it will be time to combine all those grades from individual activities into a final coursework grade. Currently Moodle simply adds all the individual grades together to get a Total. That is of course not good enough. At our department we need the following steps:
1) each activity gets a weighting factor which multiplies the number of points. This allows in particular to ignore some activities alltogether by giving them a weight of 0,
2) marks from several activities may be grouped together, for example to arrive at one mark per week or per topic,
3) the weighted total mark from each group of activities will be converted into percentage points, so each group will have points out of 100,
4) only the best n of the marks obtained by steps 1 to 3 will be added together, where n is some number that for us in York usually is around 3/4 of the total number of marks,
5) the resulting total for the course will then be normalized. For example if the course is assessed 30 % by coursework and 70% by final exam then one would probably normalize the final coursework mark to be out of 30.
I would be interested to hear whether a scheme like this would be flexible enough also for other users.
After agreeing on how flexible the scheme should be we will have to figure out how to implement it. Clearly there needs to be some form interface where the lecturer can set the information needed, in the scheme above that would be the weights, the groupings, the number n and the final maximum mark. This information would then have to be stored for each course in the database.
That is all straightforward but there is one point of philosophy to be decided: the weighting factors for example are clearly associated with an activity, so naturally would be stored with the activity. However that would require updates to all modules that give grades together with some definition of how the modules would communicate this information to Moodle. I would therefore opt for the slightly less clean but much more easily implemented solution of storing all the information about how to calculate the final grade in the course database.