MarkUs Blog

MarkUs Developers Blog About Their Project

Caching for graphs

with one comment

I’m going to start working on creating a caching system for the grade distribution (for now – we’re likely to have more things to cache in the future). I’m going to create a model called assignment_stats with the following columns for now:

t.column  :assignment_id,  :int

t.column  :grade_distribution_percentage, :text,

:default => “0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0\n”

The model has a foreign key to an assignment, and a CSV of a grade distribution as percentage – which defaults to a blank distribution. I think it would make the most sense to update the cached distribution every time a mark is denoted as complete (update_marking_state in results_controller) if we want professors to see the distribution as assignments are being graded, or just when the marks are released if not. (Vivien or Misa: we’ll have to figure out when to refresh the distribution after a re-mark together). On top of that the admin will be able to request that the distribution be calculated or re-calculated at any time (by means of a button in the dashboard). Any suggestions about this? Should the distribution be automatically re-calculated when a result is denoted as complete or only when the marks are released? Will profs find it useful to see the distribution as the assignments are being marked? Any other comments or suggestions?

Written by horatiu

November 15th, 2010 at 9:47 pm

Posted in Uncategorized

One Response to 'Caching for graphs'

Subscribe to comments with RSS or TrackBack to 'Caching for graphs'.

  1. “I think it would make the most sense to update the cached distribution every time a mark is denoted as complete”

    That makes sense to me. If we can do the recalculation fairly easily. I’m not sure how useful it will be to see the distribution as the assignments are being marked. (It can be misleading to look at partial results.) On the other hand, I’d like to see the distribution before I release the marks.

    It would be a good when working on the caching system to keep in mind that we may want to cache other intermediate results and not just grades. Also, remember that grades can come from the grade entry form or from the two different types of rubrics.

    Looks good!

    Karen

    18 Nov 10 at 11:46 am

Leave a Reply