Notes:
- Many of the following should be considered "if allowed", where whether they are allowed is dependent on institutional configuration options
Have ignored implementation-specific requirements that have surfaced in past (e.g. paging)-figure we'll get to these later
Coding of requirements:
CF=current functionality (may be via branch)
RF= requested functionality
NF=potentially needed functionality if we are going to integrate various membership-related functions from the following tools: Section Info, Site Info (including those on Edit Site Information, Add Participants, Manage Groups, Edit Class Rosters), Roster
IF=Imagined functionality (e.g. my imagination or design ideas in CM work, or perhaps inspired by things I've seen, but no explicit request)
Defining group(s)
1. (CF) specify name for group
2. (CF) specify meeting times and locations (could be multiple) for each group
3. (CF) specify maximum size for group or that there is no maximum
4. (RF) Choose if maximum size for groups (or certain types of groups) is maximum that system will enforce as a hard limit (impossible to add beyond this) or will treat as a soft limit (just warn when about to exceed that maximum) (SAK-13010)
5. (CF) specify type (category) of group (e.g. official institutional section types, e.g. lab, discussion, etc. as is currently in Section Info tool
6. (IF) specify type (category) of group: could be other less-formal, less defined types we know of such as "project groups" or "tutorial groups"). Could also be "generic", or allow user to specify & define a new group type
7. (NF) specify set of groups (e.g. "Week 1 project groups", "mid-term study groups") that may be differentiated from another set of groups (different rules and options) (SAK-10803 SAK-9077 refers to need for this in terms of site joining options being category specific)
8. (RF) create subsite (collaboration space) for group (SAK-7953)
a. ("Since students may typically spend more time in a group space than a course space, the group site should not require navigation through the course site.")
9. (IF) have templates for "known" types of groups with smart default "rules" (e.g. sections, role-based, study groups, project groups)
10. (RF) Re-use group definitions from another site (SAK-8127)
11. (RF) As student (s), organize into student groups (SAK-10803--details need to be worked out for this)
Putting/getting members into groups
1. (CF) individually/manually,
a. (CF)whle viewing name & ID
b. (RF) while being able to see what groups individuals are already in (SAK-13473)
2. (CF) automatically based on section (SAK-13413)
3. (RF) automatically based on membership in some other university entity (group provider)
4. (CF)based on role in the site (SAK-13413)
5. (RF) via bulk upload (SAK-8590)
6. (RF) randomly (SAK-7953)
7. (RF) import groups from another site (SAK-7953, SAK-8127)
8. (CF)site members sign up for groups
a. (IF) Send site members email about signing up for groups (CM requirements)
b. (RF) limited student joining to a time period (SAK-10803)
c. (RF?) Site members request membership in group, group owner(s) okay it. (this seems to be perhaps similar to SAK-8167 which refers to site joining rather than group joining)
d. (RF) at the same time they join the site (SAK-757)
Managing membership
1. (CF) Remove an individual from a group (presumably if group not automatically updated)
2. (CF) As a student, change membership for self:
--switch groups
--remove self from group
Managing groups/group settings
1. (CF) Edit group settings: name, meeting time(s) and location(s), maximum size, etc.
2. (CF) Remove group(s)
3. (CF) specify whether membership of groups should be updated automatically based on external membership changes
4. CF) specify whether groups should be updated automatically based on role...(assume this available in branch SAK-13413)
5. (CF) Assign leader(s) to group(s) one group at a time. (TA is most common kind of leader, i.e. for sections, but there could be others.)
6. (RF) Assign leader(s) to multiple groups at one time
(concerns: Streamline process for adding TA's to sections (Bridge the need for having to go outside Section Info too to add TAs to sections) (from CM design requirements working doc)
7. (RF) Specify whether TA(s) can manage section membership (SAK-2544)
8. (CF) As instructor, specify if group(s) can be joined by students(s) (available in Section Info)
9. (IF) delegate group management capabilities (only) to someone else (e.g. staff, TA)
Viewing groups and group membership
1. (CF) See list of groups
2. (IF) See descriptions for groups
3. (CF) Sort list of groups by TA, Day, Time, Location, Number of members, how many spaces available.
4. (CF) download or print a roster list that provides each student's group memberships (2.5 release)
5. (CF) As a student, see what groups I am in
6. (CF) See what groups each site member belongs to (section info)
7. (CF) As leader, see which groups I am leading and who is in them.
Managing site's group options
(IF) As site/owner instructor, indicate whether students are allowed to create groups and what the options/rules are for those groups