Skip to content

Checklist

Luke Cassar edited this page Aug 4, 2021 · 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 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 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.
  • DataSets must attempt to auto populate name and description from CKAN API.
    • Pre Populate but should still be able to edit.
  • 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.
  • Projects must store all edit times.
  • Projects must store all accounts that edit the project.

Extras

  • Changes Project section so url says teams rather than projects.

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.
  • Details of the team members are pulled from their user account.

Extras

  • Same as challenges 'come back at x'
  • Have another look at team creation.
  • Remove team creation from event sign up
  • Make sure only challenges able to join are ones where team members an signed on.
  • a flag for participants to indicate if the team is a youth team. Boolean. Is your team a youth team (made up by at least 75% people aged under 18 years old)?
  • Team needs to have own urls.
  • Teams Public CSV add [TeamDataSet - URLs, Challenge Names],
    • Team Member Count, URL for Project Page.

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.

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.

Extras

  • Team can only enter challenges in their regions.
  • Teams can only link to an event in their regions where they have at least one member.
  • Need extra picture for pdf
  • need extra asset for pdf.
  • show challenge page always but have 'come back at x'.
  • a challenge can be entered at any checkpoint a team can only enter the same challenge once
  • Challenges index - National Challenges at top, Regional by Alphabetical order after that.
  • Challenge Page - Should have all the data sets that it has linked.
  • Entries need to be on challenge page as well.
  • take checkpoint out of team entry on public team page display, remove checkpoint and region/national headings.
  • Admin Region page should show brief summary of challenge judgements before going into. Challenge No Judgements over number of 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 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.

Extras

  • Images need to go to sponsor page when clicked on.

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.

    • Pre Populate but should still be able to edit.

    https://data.gov.au/dataset/slq-consultancies https://data.gov.au/api/3/action/package_show?id=slq-consultancies data.result.title = name data.result.notes = description

  • CSV for Public Datasets, project_name of teams that used data set.

Extras

  • On Show Page match URL's and display projects that have utilised the dataset.
  • DataSets index should be sorted by region and then by alphabet.

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 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.

Extras

  • A count on the events page that shows total registration for all Competition events.
  • Way to un publish events.

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.

  • Peoples choice summary, broken up into tables by region where team is based., no. of people who have judged, mean, mode, medium.

  • Popup in table that show all the individual peoples cards.

Extras

  • eligibility based on have have data_story? video? and source_code_url
  • eligibility can change when updated.
  • Only team members with a published project and GovHack Volunteers.
  • Have a column on projects that shows what you voted and the score.
  • Just can't vote on your own projects.
  • a window popup on the public project for peoples choice and judges to vote.
  • make sure judges can mark teams eligibility.

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 time slot.

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

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

  • Make sure that someone can't sneakily enter themselves into a passed checkpoint.

  • Make sure that unpublishing teams will take them off the public screens.

  • After Competition end teams should not be able to access the team management area.

  • Reinspect Time.now to see if there is anything that could cause trouble.

  • People's choice and challenge judging are different periods.

Extras

  • Can you make it that GovHack Management Team can add challenges for projects after the checkpoint has expired

  • Admin need to be able to revert back to a previous version of the project.

  • The Competition page must show popularity of Challenges.

  • on challenges page. - /challenge-dashboard static page. QLD | NSW (alpha - sort) National Challenges (No. entries - sort) put is a json

  • Should record opening and closing times of people choice and challenge judgement to restrict access.

  • Should show teams based on name.

  • Should show based on where event is ???

  • challenge and projects should not show on the website till comp start. and when they do only the regions that are in the relevant time.

  • Find a way to stop the logger logging e-mails.

  • Fix the issue increasing capacity and moving people off the waitlist.

  • Invitations to State Awards

    • Options to view all teams that participated in the state's events and options to invite either the whole team or just the captain.
    • Bespoke email construction must insert team name and participant display name.
    • From a Default Mail but option to input a prefix identifier.
    • preview of first e-mail in series.
    • Preview of full list of people that the e-mail will go out to.
    • Check that people are able to be e-mailed before sending invites.
    • Person can be sent multiple invites but does not create additional registrations.
    • Check box not to send to people if they are already attending.
    • e-mails render markdown / or send raw markdown for plaintext.
    • Events Bulk Mails.
  • Entries should be identified as 'winners', 'runners up', and 'honourable mentions' for challenges (no limit on any category).

  • Add 'Would you like money' emails, requesting bank details, to go to team leader of the teams invited to the events.

    • New Form - for entering bank details. BSB, ACC#, Acc Name, BankName/Branch.
    • Send e-mail to [email protected] when complete listing
      • Competitor Name
      • team
      • any challenges that they have won.
      • bank details.
      • Link to view all this information on the hackerspace.
    • region specific times as to when to request banking details. and to show that teams have won.

Later

  • Golden Tickets holders get flights paid for, and can be transferred to another team member.

  • Option to send e-mails to people registered in the event.

  • Code of conduct needs to be agreed to by all existing and new users.

  • For new users, this is a checkbox on the terms and conditions.

  • For existing users banner message and inability to register for new events till code of conduct agreed to.

  • implement static terms and conditions in the footer

  • Have option to include judges in peoples choice count on separate endpoint.

  • Ability for Govhack management team to add delete and update scorecards.

Wednesday Morning

  • Flight Registrations
    • Individuals New Assignment 'Golden Ticket' to the Competition.
    • Team 'Golden Ticket' Assignment can be team assignment. (can transfer)
    • Staff flights - Can be staff assignments.
  • Enter in flights to to national awards.
    • flight code - description.
      • JS620 8 Nov 2018 - From Bris to Sydney with Jetstar
    • From and To.
  • Bulk Email
    • Team
    • Individuals

Still to do

  • Optimise Registration Indexes.
  • Constraint so that only one user per registration to an event.
  • Make sure invitations do not appear before event is published.
  • No duplicate correspondences or team/user orders.

Future Considerations

The following are OUT OF SCOPE however should be noted. The same system should be usable in future years without clearing data or rehosting. Sponsors in the future will be able to complete a sponsorship expression of interest using the system. This will create an account for them during the process. Sponsors in the future will be able to complete securing their sponsorship using the system. Sponsors must be able to be created by an Authenticated User using a hidden URL.

Clone this wiki locally