Last modified: 8 June 2011
Currently all coaches have only one effective "study group". Students are automatically added to it when they authorize a coach. Coaches have no way to separate their students into different groups, so for those that have more than a few students, the current class stats page becomes unwieldy.
Here's what the existing pages looks like.
Class statistics page
Make student management easier for coaches by allowing them to place students into different study groups. Coaches can create as many groups as they want, and can place the same student in multiple groups.
Class stats page
This is the same as the existing stats page, except it's now scoped to a particular group. The group is a selected in a dropdown. The add or remove link now points to the groups page. The site will remember which group was selected in the dropdown between visits (thanks Ben!).
The students page is has been revamped to include information about groups. Note that in the mockups below, the word 'list' is used instead of 'group'. Here's what the page looks like with no groups.
Once some groups have been added, the page will look like this:
Every coach has a default group called 'All students' that always contains all students that have a relationship with this coach. This default group can't be deleted. If a student is deleted from this view, it severs the coach-student relationship.
When looking at a particular group, the view is similar
This page allows coaches to create groups (interface not shown, probably inline row edit) and delete groups (inline x link, one per row).
In the middle is a bulk add textarea that could be cut if we want to keep things simple. It could be hidden by default too. The idea here is that teachers may already have a text file with students' email addresses. It's easier to just paste this in rather than clicking a bunch of checkboxes.
Workflow doesn't change
Students authorize a coach in the same way they add a coach right now. Once a coach is authorized, the student is automatically added to the coach's default study group. There will be no visible change to students.
Right now students aren't able to access any information about the rest of the class/study group. This means the above change will not affect how students use the site at all. A potential change to this would be allowing a 'public' kind of study group where the students themselves have access to the statistics page. This scenario could be useful for a group of friends who are studying together - you'd know who to approach for help if you were stuck, as you could see what exercises your friends had mastered. It also allows a form of friendly, opt-in competition.
A related change could be multiple coaches per study group.
Both of these extensions should be able to be implemented on top of the above proposal if the study group data model is designed to have multiple coaches from the beginning. The UI could be done later.
One of the things that would really help me would be to have the ability to group my students according to class period. Right now, when my students add me as a coach, they are all lumped together on my class statistics reports, and I have to pick out who is in what class as I analyze their data. Having a separate progress report, daily activity report, exercise progress over time graph, and class points per minute graph for each class would be incredibly be helpful.
Simple solution is to just let any coach organize students into categories... But there could be a more generalized solution where we create a "study group" concept, where the group could exist and there are 0, 1, or many coaches for it. You can imagine lots of scenarios where the "class" concept and terminology is too school specific and the ability for students to self-organize without teachers could be cool. It may be that we do both, but just wanted to throw it on the table as you all think through design.
Attachments for Marcia's comments below:
-- Showing group's roster + in-line add/remove
-- Current interface to add related videos to an exercise. Perhaps we can add students to groups in a similar way?