Incremental Deliverable 5 Requirements Document - SeoulSKY/safe-zone-system GitHub Wiki

We started on the risk assessment and safeplan, we ended up decided against spending anymore time on it since they aren't going to be implement due to time.

Non-Functional Requirements

General Requirements

  • The software must be available as an Android App
    • Implemented
  • The software must be available as an iOS App
    • Implemented
  • The software must be available as a Website
    • Not Implemented
  • The software must have an 99% uptime
    • Unsure
  • The software must support at minimum 1000 daily users
    • Unsure

Functional Requirements

App Requirements

  • The mobile app must cache relevant information
    • Not Implemented
  • The mobile app must indicate if it is in offline mode
    • Not Implemented
  • The mobile app must used cached data if an internet connection is not available
    • Not Implemented
  • The mobile app must allow for the creation of message in a bottle in offline mode
    • Not Implemented
  • The mobile app must send any message in a bottle to the server upon reconnecting to the internet
    • Not Implemented

User Requirements

  • Users must be able to create accounts
    • Implemented
  • Users must be able to create an account using single sign on
    • Not Implemented
  • Users must be able to login to their account
    • Implemented
  • Users must be able to logout from their account
    • Implemented
  • Users must be able to delete an account
    • Not Implemented
  • Users must be able to verify their email
    • Implemented
  • Users must be able to recover their account

Admin Requirements

  • Admins must be able to add emails to an approved list of emails to be "message in a bottle" recipients
    • Not Implemented
  • Admins must be able to remove emails to an approved list of emails to be "message in a bottle" recipients
    • Not Implemented
  • Admins must be able to edit emails in a approved list of emails to be "message in a bottle" recipients
    • Not Implemented
  • Admins must be able to create new admin accounts
    • Not Implemented

User Configuration Requirements

  • Users must be able to configure a toggle for using current location information
    • Not Implemented
  • Users must be able to configure a toggle for auto logout on app close
    • Not Implemented
  • Users must be able to configure a toggle for sending warnings if a "message in the bottle" will be sent
    • Not Implemented
  • Users must be able to configure a duration remaining before sending a warning for "message in a bottle"
    • Not Implemented
  • Users must be able to configure a toggle for requiring 2 factor authentication to be able to use the software
    • Not Implemented
  • Users must be able to configure a toggle for requiring personal verification questions to be able to use the software
    • Not Implemented
  • Users must be able to create personal verification questions
    • Not Implemented
  • Users must be able to edit personal verification questions
    • Not Implemented
  • Users must be able to delete personal verification questions
    • Not Implemented

Server Configuration Requirements

  • System Administrators must be able to configure the maximum amount of "messages in bottles" that can be created by a single user
    • Not Implemented
  • System Administrators must be able to configure a mail server to use to send emails from
    • Not Implemented
  • System Administrators must be able to configure an email address that is used to send emails
    • Not Implemented

"Message in a Bottle" Requirements

Creation Requirements

  • Users must be able to create "message in a bottle"
    • Implemented
  • Users must be able to cancel "message in a bottle"
    • Implemented
  • Users must be able to have multiple "messages in bottles" at the same time
    • Implemented

Sending Requirements

  • Users must be able to immediately send "message in a bottle"
    • Implemented
  • Users must be able to schedule a time for the "message in a bottle" to be sent.
    • Implemented
  • Users must be able to send a "message in a bottle" to multiple different recipients
    • Implemented
  • Users must be able to send "message in a bottle" to email addresses
    • Implemented
  • Users must be able to select an approved approved email addresses to send a "message in the bottle" to
    • Not Implemented
  • Users must be able to send "message in a bottle" to phone numbers via SMS
    • Not Implemented
  • Users must be able to send "message in a bottle" to other users of the app
    • Not Implemented

Content Requirements

  • Users must be able to change the message in the "message in the bottle"
    • Implemented
  • Users must be able add their last known location to the "message in a bottle"
    • Not Implemented

Configuration Requirements

  • Users must be able to create templates for "message in a bottle"
    • Not Implemented
  • Users must be able to update templates for "message in a bottle"
    • Not Implemented
  • Users must be able to delete templates for "message in a bottle"
    • Not Implemented
  • Users must be able to save contacts to send "messages in bottles" to
    • Not Implemented
  • Users must be able to update contacts to send "messages in bottles" to
    • Not Implemented
  • Users must be able to delete contacts to send "messages in bottles" to
    • Not Implemented

Risk Assessment

Creation

  • Admins must be able to create risk assessments
    • Not Implemented
  • Admins must be able to edit risk assessments
    • Not Implemented
  • Admins must be able to delete risk assessments
    • Not Implemented

Questions

  • Functionality
    • Admins must be able to create questions for a risk assessment
    • Not Implemented
    • Admins must be able to edit questions for a risk assessment
    • Not Implemented
    • Admins must be able to delete questions
    • Not Implemented
  • Scoring
    • Questions must be able to be mapped to a category
    • Not Implemented
    • Questions must be able to be mapped to multiple categories
    • Not Implemented
    • After completing a quiz, a summary of the categories must be available
    • Not Implemented

Answering

  • Users must be able to answer questions in the risk assessment
    • Not Implemented
  • Users must be classified into categories based on their responses to the risk assessment
    • Not Implemented

Safe Plan Creator

Creation

  • Users must be able to create safe plans
    • Not Implemented
  • Users must be able to edit safe plans
    • Not Implemented
  • Users must be able to delete safe plans
    • Not Implemented
  • Users must be able to create multiple safe plans
    • Not Implemented

Information

  • Safe plans must have a text field for need/cause
    • Not Implemented
  • Safe plans must have a text field for goal
    • Not Implemented
  • Safe plans must have a text field for activity
    • Not Implemented
  • Safe plans must have a text field for person responsible
    • Not Implemented
  • Safe plans must have a text field for follow-up
    • Not Implemented
  • Safe plans should prompt to create a message in a bottle and/or message in a bottle template
    • Not Implemented

Risk Assessment

  • Based on the results of the risk assessment, the safe plan creator must suggest categories to make safe plans for based on risk factors
    • Not Implemented

Derived Requirements