Skip to content

Checklist

Luke Cassar edited this page Jul 17, 2018 · 16 revisions

Software Requirement Specification Checklist

This page is current as of 14th July 2018

Points to be completed before the next the deadline have a checkbox next to them.

Public (unauthenticated) users

  • Public users must be able to register accounts using a Google Account.
  • Public users must be able to register accounts using an email and password.
  • Public users must accept the terms and conditions during registration.
  • Public users must be given the option to consent to be added to the GovHack mailing list.
  • Public users must be able to login to accounts using a Google Account.
  • Public users must be able to login to accounts using an email and password.
  • Public users must be able to browse published projects.
  • Public users must be able to browse challenges.
  • Public users must be able to search/sort/filter/browse projects by location/challenge/title.
  • Public users must be able to browse events.
  • Public users must be able to browse data.
  • Public users must be able to search/sort/filter data by name/region/description.
  • Public users must be able to register to attend National Events with a promo code.
  • Public users must be able to download CSV non sensitive versions of all projects.
  • Public users must be able to download CSV non sensitive versions of all challenges.
  • Public users must be able to download CSV non sensitive versions of all datasets.
  • Public users must be able to download CSV non sensitive versions of all event locations.

Authenticated users

  • Authenticated users must be able to manage their account.
  • Authenticated users must be able to browse published projects.
  • Authenticated users must be able to browse challenges.
  • Authenticated users must be able to search/sort/filter/browse projects by location/challenge/title/favourite.
  • Authenticated users must be able to browse events.
  • Authenticated users must be able to browse data.
  • Authenticated users must be able to search/sort/filter data by name/region/description.
  • Authenticated users must be able to favourite a project.
  • Authenticated users must be able to unfavourite a project.
  • Authenticated users must be able to download CSV non sensitive versions of all projects.
  • Authenticated users must be able to download CSV non sensitive versions of all challenges.
  • Authenticated users must be able to download CSV non sensitive versions of all datasets.
  • Authenticated users must be able to download CSV non sensitive versions of all event locations.
  • Authenticated users must be able to register to attend an Event Location.
  • Authenticated users must be able to register to attend State Events with or without an invitation.
  • Authenticated users must be able to register to attend National Events with an invitation.
  • Authenticated users must be able to register to attend National Events with a promo code.
  • Authenticated users must be able to unregister from attending an event.
  • Authenticated users must be able to register to attend multiple events.
  • Authenticated users must be able to waitlist to attend an event if it is a capacity.
  • Authenticated users must be able to logout.

Accounts

Note regarding must in following: the system must allow it however unless required, the field is not mandatory for users to save the account.

  • Accounts must record email address. Required.
  • Accounts must record a full name. Required.
  • Accounts must record a preferred name.
  • Accounts must record a profile picture.
  • Accounts must record social media handles. (Facebook, Twitter, LinkedIn).
  • Accounts must record ‘how did you hear about us’.
  • Accounts must record dietary requirements.
    • Prompted as part of event registration process.
  • Accounts must record communication preferences. Default to none.
    • Can be contacted by sponsors of a challenge if I am placed in a challenge.
    • Can be contacted by sponsors of a challenge if I enter a challenge.
    • Can be contacted by sponsors that are interested in my project.
    • Can be contacted by GovHack.
    • Consent to be added to the GovHack mailing list.
  • Accounts must record t-shirt size.
  • Accounts must record bank details.
  • Accounts must not ask for bank details unless triggered by GovHack Management Team.
  • Accounts must be able to be set to ask for bank details by GovHack Management Team.
  • Accounts must record travel information.
    • Full legal name
    • Departure Airport
    • Flight Preference
    • Room Share Preferences
  • Accounts must not ask for travel information unless triggered by GovHack Management Team.
  • Accounts must be able to be set to ask for travel information by GovHack Management Team.

Increased Privileges

  • Accounts can be marked as GovHack Management Team.
  • Accounts can be marked as GovHack Volunteers.
  • Accounts can be marked as Sponsor Contacts.
  • Accounts can be marked as Judges.
  • Accounts can be marked as Sponsorship Director.
  • Accounts can be marked as Competition Director.
  • Accounts can be marked as Chief Judge.
  • Accounts can be marked as Region Directors.
  • Accounts can be marked as Region Support.
  • Accounts can be marked as Event Host.
  • Accounts can be marked as Event Support.
  • Accounts can have Increased Permissions removed.

Projects

Note regarding must in following: the system must allow it however unless required, the field is not mandatory for users to save the project.

  • Projects must have a title. Required.
  • Projects must have a thumbnail image.
  • Projects must have a high resolution image.
    • Upload an image that best shows off your project. We’ll use this on our website, in any promotional materials and at the awards night - so choose well and provide a high-resolution image.
  • Projects must have a description.
    • Tell us about your project - why did you choose to build it, what does it do, who is it for, et cetera.
  • Project description must be written using Markdown.
  • Projects must have a data story.
    • Tell us about the data that you have reused and how you have reused it.
  • Project data story must be written using Markdown.
  • Projects must have a team.
  • Projects must be able to list datasets used.
    • Name and URL of 1 or more datasets used.
  • Projects must have a Region. Required.
    • Automatically filled based on team member make up. Where differences - give choice between.
  • Projects must have a Event Location. Required.
    • Automatically filled based on team member make up. Where differences - give choice between.
  • Projects must have up to five state/territory region challenges enter.
    • Ranked Checkboxes generated from region and national challenge lists.
  • Projects must have up to five national region challenges enter.
    • Ranked Checkboxes generated from region and national challenge lists.
  • Projects must only be able to add a challenge to a ranked slot if the associated checkpoint in The Competition has not occurred.
  • Projects must be able to remove a challenge after the associated checkpoint in The Competition has occurred.
  • For each challenge, projects must have a justification for why their entry meets the requirements of the challenge.
    • Not publically viewable.
  • Projects must have a source code URL.
  • Projects must have a video URL.
  • Projects must have a homepage URL
  • Projects must be able to be updated by any member of the team.
  • Projects must be able to be updated until the competition closes.
  • Projects must store all history of updates. @Cruion what updates to what aspects of the project exactly?
  • Projects must store all edit times.
  • Projects must store all accounts that edit the project.

Teams

Note regarding must in following: the system must allow it however unless required, the field is not mandatory for users to save the team.

  • Teams must have a name. Required.

  • Teams must have between 1 and 10 members. Required.

    • The person creating the team is automatically part of the team.
    • Not publically viewable.
  • Team members must be able to provisionally add new members by email address.

  • If no user is associated with the email address, the address will still be stored in case a user account is registered with this email address in the future.

  • Provisional team members must accept being part of the team before they are added to the team and able to edit the project.

  • Team members must be able to remove themselves from a team.

  • Teams must be able to nominate one member of the team as Team Captain. Required. @Cruion so we want a voting system? or is it enough to say memberA created the group so memberA is automatically the captain, memberA nominates memberB to be the captain, memberB accepts so now memberB is the captan, is this ok?

  • Details of the team members are pulled from their user account.

Regions

  • Regions must be able to be created only by GovHack Management Team.
  • Regions must be able to be edited only by GovHack Management Team.
  • Regions must have a Name. Required.
    • National, Queensland, Northern Territory, etc.
  • Regions must be able to have a parent Region.
  • Regions must be able to have a child Region.
  • Regions must be able to be assigned Region Directors.
  • Regions must be able to be assigned Region Support.
  • Regions must be able to have a timezone offset.

Event Locations

  • Event Locations must be able to be created by GovHack Management Team.
  • Event Locations must be able to be created by Region Directors.
  • Event Locations must be able to be created by Region Support.
  • Event Locations must be able to be edited by GovHack Management Team.
  • Event Locations must be able to be edited by their Region Directors.
  • Event Locations must be able to be edited by their Region Support.
  • Event Locations must be able to be edited by their Event Hosts.
  • Event Locations must be able to be edited by their Event Support.
  • Event Locations must have a Region. Required.
  • Event Locations must have a name. Required.
  • Event Locations must be able to be assigned Event Hosts.
  • Event Locations must be able to be assigned Event Support.
  • Event Locations must have an email address.
  • Event Locations must have a Twitter account.
  • Event Locations must have a name. ❗ duplicate
  • Event Locations must have an address.
  • Event Locations must have accessibility information.
  • Event Locations must have youth support information.
  • Event Locations must have a capacity.
  • Event Locations must have parking information.
  • Event Locations must have public transport information.
  • Event Locations must have hours of operation information.
  • Event Locations must have catering information.
  • Event Locations must have geographical (Lat/Long) information.
  • Accounts with edit permissions must be able to view registered attending accounts.
  • Accounts with edit permissions must be able to contact registered attending accounts.
  • Accounts with edit permissions must be able to add attendees without accounts.
  • Accounts must not be able to registered to attend if the attendees is at capacity. Instead they will be waitlisted.

Challenges

  • Challenges must be able to be created by GovHack Management Team.
  • Challenges must be able to be created by Region Directors.
  • Challenges must be able to be created by the Competition Director.
  • Challenges must be able to be edited by GovHack Management Team.
  • Challenges must be able to be edited by Region Directors.
  • Challenges must be able to be edited by the Competition Director.
  • Challenges must be able to be approved for publication by GovHack Management Team.
  • Challenges must be able to be approved for publication by the Competition Director.
  • Challenges must have a name.
  • Challenges must have a Region.
  • Challenges must have a short description.
  • Challenges must have a long description.
  • Challenges must have a image.
  • Challenges must have a video URL.
  • Challenges must have dataset field URLs.
  • Challenges must have an eligibility criteria description.
  • Challenges must have a Sponsor(s).
  • Challenges must be able to be assigned Judges.

Sponsors

  • Sponsors must be able to be created by GovHack Management Team.
  • Sponsors must be able to be created by Region Directors.
  • Sponsors must be able to be created by Sponsorship Director.
  • Sponsors must be able to be created by an Authenticated User using a hidden URL. ❓ @Cruion Could you explain this one to me?
  • Sponsors must be able to be edited by GovHack Management Team.
  • Sponsors must be able to be edited by Region Directors.
  • Sponsors must be able to be edited by Sponsorship Director.
  • Sponsors must be able to be edited by Sponsor Contacts.
  • Sponsors must be able to be approved for publication by GovHack Management Team.
  • Sponsors must be able to be approved for publication by Sponsorship Director.
  • Sponsors must have a name.
  • Sponsors must have a logo.
  • Sponsors must be able to be assigned Sponsor Contacts.
  • Sponsors must have a description.
  • Sponsors must have a URL.

Datasets

  • Datasets must be able to be created by GovHack Management Team.
  • Datasets must be able to be created by Region Directors.
  • Datasets must be able to be created by Region Support.
  • Datasets must be able to be created by Sponsor Contacts.
  • Datasets must be able to be edited by GovHack Management Team.
  • Datasets must be able to be edited by Region Directors.
  • Datasets must be able to be edited by Region Support.
  • Datasets must be able to be edited by Sponsor Contacts.
  • Datasets must have a dataset URL.
  • Datasets must have a name.
  • Datasets must have a description.
  • Datasets must have a Region.
  • Datasets must attempt to auto populate name and description from CKAN API.

State Events (Connections / Awards)

  • State Events must be able to be created by GovHack Management Team.

  • State Events must be able to be created by Region Directors.

  • State Events must be able to be created by Region Support.

  • State Events must be able to be edited by GovHack Management Team.

  • State Events must be able to be edited by Region Directors.

  • State Events must be able to be edited by Region Support.

  • State Events must have a name. Required.

  • State Events must have a Region.

  • State Events must have a date.

  • State Events must have an address.

  • State Events must have accessibility information.

  • State Events must have youth support information.

  • State Events must have a capacity limit.

  • State Events must have parking information.

  • State Events must have public transport information.

  • State Events must have hours of operation information and timezone

  • State Events must have catering information.

  • State Events must have geographical (Lat/Long) information.

  • State Events must have a registration setting. Required.

    • Open
    • Open and Invitations
    • Invitations Only
  • Accounts with edit permissions must be able to view registered attending accounts.

  • Accounts with edit permissions must be able to contact registered attending accounts.

  • Accounts with edit permissions must be able to invite accounts.
  • Accounts with edit permissions must be able to add attendees without accounts.
  • Accounts must not be able to be registered to attend if the attendees is at capacity. Instead they will be waitlisted.

National Events (Red Carpet Awards)

  • National Events must be able to be created by GovHack Management Team.

  • National Events must be able to be edited by GovHack Management Team.

  • National Events must have a name. Required.

  • National Events must have a Region.

  • National Events must have a date.

  • National Events must have an address.

  • National Events must have accessibility information.

  • National Events must have youth support information.

  • National Events must have a capacity.

  • National Events must have parking information.

  • National Events must have public transport information.

  • National Events must have hours of operation information.

  • National Events must have catering information.

  • National Events must have geographical (Lat/Long) information.

  • National Events must have flight options to.

  • National Events must have flight options from.

  • Accounts with edit permissions must be able to view registered attending accounts.

  • Accounts with edit permissions must be able to contact registered attending accounts.

  • Accounts with edit permissions must be able to invite accounts.

  • Accounts with edit permissions must be able to add attendees without accounts.

  • Accounts must not be able to registered to attend if the attendees is at capacity. Instead they will be waitlisted.

Judging Criteria

  • Judging Criteria must be able to be created by GovHack Management Team.
  • Judging Criteria must be able to be created by Competition Director.
  • Judging Criteria must be able to be created by Chief Judge.
  • Judging Criteria must be able to be edited by GovHack Management Team.
  • Judging Criteria must be able to be edited by Competition Director.
  • Judging Criteria must be able to be edited by Chief Judge.
  • There must be multiple Judging Criteria.

Judging

  • Authenticated accounts associated with a project must be able to judge all projects.
  • Judges of Challenges must be able to judge all projects that entered their Challenge.
  • Projects must be able to be marked as eligible.
  • Projects must be able to be judged on each of the Judging Criteria leaving a score of between 1 (lowest) to 10 (highest).
  • Projects must be given a final score which is the sum of all scores for an individual judge.
  • Authenticated accounts and Judges judging a project must be displayed separately.
  • Judging for different Challenges must be displayed separately.
  • Judging of Authenticated accounts must be averaged across all Judging.
  • Judging of each Challenge must be averaged across all Judging by that Challenge’s Judges.
  • Projects must be ranked under each Challenge by their final score which is viewable by Judges.
  • Projects must be ranked under each Challenge by their final score which is viewable by accounts with edit permissions for the Challenge.

Competition

  • The Competition must be able to be edited by GovHack Management Team.
  • The Competition must be able to be edited by the Competition Director.
  • The Competition must be able to have starting times.
  • The Competition must be able to have ending times.
  • The Competition must be able to have five checkpoint times.

  • Each checkpoint time must be associated with a projects challenge timeslot.

  • Once a checkpoint occurs (with timezone offset) in a region, Challenges in the timeslot must be publically viewable on the Project.

  • Once a checkpoint occurs (with timezone offset) in a region, Projects that have entered a Challenge in that timeslot must be publically viewable on the Challenge.

  • The Competition page must show popularity of Challenges.

Clone this wiki locally