These are the use cases that I'm focusing most of my design work around (#7 and #4 being the ones I've incorporated in any kind of detail so far on the mockups page):
Group management within a site context
- randomly distribute all students into x number of groups
- create group based on role (may need to include multiple roles in a single group, e.g. at Berkeley GSI's and head GSI's)
- create groups defined by official courses sections (may want all the sections associated with a course, or a subset of them)
- create groups defined by other external memberships
- create set of empty groups (e.g. Proposition 1A study group, Proposition 2 study group, Proposition 3 study group,etc.)
- find out who is not assigned to any group (of a certain set of groups) and assign them to groups that aren't full
- create group(s) and place members manually, thinking about member characteristics as I do so
- import groups (including members) from another site (i.e. groups may span multiple sites)
- as a student, join a group
User tasks that require groups within site context
Group management outside a site context
- Request to join a group, or send/accept invitation
User tasks that require groups outside site context
- Send a message to a large administrative grouping (e.g. all faculty, all first-year engineering students)
- Share a folder or file with all members of an administrative grouping (e.g. all faculty of a certain department)
- Create a new group or site based on membership of group in a site context (e.g. a project team in a course wants to create its own independent site for a study group, or a research collaboration that will extend beyond the course)
(Ok, so I'm not *sure* exactly how common these all are but they're the ones that have been explicitly mentioned in a variety of settings)