The nineteenth commit is up, but it's high time I started discussing the design of the app itself.
(I think I've been through all the technical odds and ends. There's also support for server-sent events and websockets, but I'm not putting that in this app.)
Screenshot at latest commit
Trying to keep it simple, the app centres around Groups and Tasks in a course. So that's what students will see on the course's Assessory page.
It turns out there are some interesting relationships between tasks and groups.
The first task
The first task I'm going to need to write is the group peer critique task.
Students are in two kinds of group:
A Tutorial Group
There are two tutorial sessions, with approximately half the
class in each
A Project Group
Each project group has 3 to 5 students in it
(These categories correspond to "Group Sets" in Assessory.)
Groups are going to be presenting their work in the tutorial on Monday. That means that the critique task has to care about both group sets -- it has to allocate each student to review another project from the same tutorial.
If it allocated them the same project group, well you can't assess yourself; and if it allocated them a group from the other tutorial, they wouldn't be there to see the presentation.
The second task
When students critique each other's work, they also get to critique the critique.
The second task we want is for each student to read the critiques their group has received, and mark whether or not they were constructive and useful.
So back to it...
So, now all the course and group pre-enrolments are in and working, it's time to get these tasks written.