Melange User stories need to be grouped to spot common themes, so that we avoid writing ‘the same code’ many times over in different disguises. A first try at grouping the user stories is done here.

Stories Presenting Read-Only Pages

Story 28, ‘creating a page’ is one story which leads in to many others. Once a new page is created by the host, it is read only, at least for most readers. The created page can include a table. The author chooses what table, what fields from that table and what formatting.

  • Melange will need many read only pages which present the results of a ‘query’. Stories 8,9,28,35,36,40,41,43,54,55,56 could be implemented using one generic technique for creating pages.
  • Story 20 and 19 are about looking up information. A read-only table with an alphabetical list of ‘linknames’ with corresponding e-mail addresses could provide these.
  • The original ‘Story 28’ was written as being only for ‘hosts’. This ability to create custom pages for their organisation could be given to ‘org admins’ too, using the same code.
IDForSummary
Issue 8 (on Google Code)SummitHosts need to be able to set basic Program home page content
Issue 9 (on Google Code)GSoCHosts need to be able to specify feed URLs for Program home pages
Issue 28 (on Google Code)SummitHosts should be able to create per-Program Documents
Issue 35 (on Google Code)Summit“program name” links for Active Programs on User Roles page should point to per-Program home page
Issue 36 (on Google Code)GSoC“program name” links for past Programs on User Roles page should point to per-Program history pages
Issue 40 (on Google Code)Summit“org name” links in Active Programs on User Roles page should point to per-Program per-Org home page
Issue 41 (on Google Code)GSoC“org name” links in past Programs on User Roles page should point to per-Program, per-Org history pages
Issue 43 (on Google Code)GSoCUser Roles page should link to historical read-only view of past Roles
Issue 54 (on Google Code)SummitTask list view
Issue 55 (on Google Code)GHOPEach GHOP org needs a list of tasks
Issue 56 (on Google Code)GHOPGHOP students need a task list
Issue 20 (on Google Code)GHOP“Public” information should be used to look up Users
Issue 19 (on Google Code)SummitHosts and site admins should be able to look up Users by Google Account

Questionnaire Stories

Stories 21, 22, 23, 26, 29, 57 are all about creating or answering QuestionnairePages.

  • Some questionnaires have a ‘finalise’ step - there‘s no going back after the step. If you’re a potential mentor organisation applying to google, you can't edit your responses after you click submit. A similar thing happens when you accept terms of service. With that feature as part of making a questionnaire we can add stories 24, 30 and 42 to this group.

Google forms provides a good interface for creating questionnaires. It's worth looking in some detail at the differences between what it provides and what we need.

IDForSummary
Issue 21 (on Google Code)SummitAuthors need to be able to create Questionnaires
Issue 22 (on Google Code)SummitUsers need to be able to create a Response to a Questionnaire
Issue 23 (on Google Code)GHOPSite admins should be able to create a Terms of Service “Questionnaire”
Issue 26 (on Google Code)GHOPHosts should be able to create per-Program Terms of Service “Questionnaires”
Issue 29 (on Google Code)SummitHosts should be able to create per-Program Organization Application “Questionnaires”
Issue 57 (on Google Code)GSoCHosts of a GHOP Program create the Task template
Issue 24 (on Google Code)SummitUsers need to agree to a site-wide Terms of Service
Issue 30 (on Google Code)GHOPUser can apply per-Program to create an organization
Issue 42 (on Google Code)GHOPUsers need to agree to per-Program Terms of Service or Contest Rules

ACL Related Stories

The difficulty of stories 1,4,5,6,7,15,17,31,32,33,37 is mainly in the logic for who has the rights to do what. This needs to be cleanly factored in the design. See AccessControl for details and discussion.

IDForSummary
Issue 1 (on Google Code)GHOPClaiming a Task
Issue 4 (on Google Code)SummitSite administrators need to be able to create Sponsor organization profiles
Issue 5 (on Google Code)SummitSite administrators need to be able to designate Users as Hosts in a Sponsor organization
Issue 6 (on Google Code)SummitUsers who have been given Host roles by site administrators need to complete a profile
Issue 7 (on Google Code)SummitHosts need to be able to create a new Program
Issue 15 (on Google Code)GHOPDocuments should have Role-based access control lists
Issue 17 (on Google Code)GSoCHosts need to be able to nominate new Hosts
Issue 31 (on Google Code)GHOPHosts need to be able to review and approve Organization Applications
Issue 32 (on Google Code)SummitUser Roles page should display Pending Roles
Issue 33 (on Google Code)GHOPUser Roles page should display Potential New Roles
Issue 37 (on Google Code)SummitUser Roles page should display Active Roles

Media Specific Stories

This group, 13,16,25,34,52 involves features such as e-mail and image upload which do not lend themselves to generic approaches.

IDForSummary
Issue 13 (on Google Code)GHOPOpt-in email should be available to communicate certain events
Issue 16 (on Google Code)GSoCRole-specific feeds should be provided for events
Issue 25 (on Google Code)GSoCAn image upload/crop/scale/accept view is needed
Issue 34 (on Google Code)GSoCUser Roles page may need a tabbed or tree interface
Issue 52 (on Google Code)GSoCHosts should be able to attach date-sensitive reminders to evaluations

Profile Stories

Stories 38 and 39 are to ensure profiles work well.

IDForSummary
Issue 38 (on Google Code)GSoCChanging a per-Role profile in an active Role should offer to update other Roles
Issue 39 (on Google Code)GSoCThe profile for a new User Role should be prepopulated