Skip to content

Latest commit

 

History

History
66 lines (56 loc) · 3.77 KB

functional-requirements.md

File metadata and controls

66 lines (56 loc) · 3.77 KB

Functional requirements

The following list shows the requirements stated by the Founder of Hey, Blue!. Some of them were rephrased to fit the terminology used in this architecture document. All architecture decisions were made with to support those requirements.

System

  • Web and Mobile-Based with backend processing and reporting and analytics to track site activity and connections
  • Analytics can aggregate app data with other available public data to build comprehensive reports to show impact of app in community
  • Aggregated data can be shared automatically with local media outlets
  • App is able to track User location
  • Connections can be shared to Social Media
  • Connections are archived so that they can be tracked
  • Activation of push notifications is optional for Users
  • The App must protect user data and consider what data is stored and what data is transient
  • Businesses and Charities must be able to storefront their offerings
  • Businesses should have a catalog of items that they are offering and the point value assigned to each item available
  • Allow local municipalities to offer points for fines/fees in order to get citizens back on the road (suspended licenses or to pay down any municipal fine)
  • Users can only have one Connection per day (24 hours)
  • A connection can only happen if the Civilian and the Officer are within a distance of 10ft.
  • Civilians are able to find Officers that are willing to connect
  • Officers can not find Civilians
  • App has an intrinsic reward system
  • Users must verify themselves when registering
  • System must track how Points were spent
  • Users can see how many connections each participating Officer has made
  • System can track all participation by zip code

Civilian

  • Create User Profile
  • Allow notifications for when an opportunity for an interaction with a Police Office is nearby
  • Connect with the Police Officer
  • Post connection on Social Media
  • Receive Point for connection
  • Allow for civilians to upload the awards of other businesses into Hey, Blue!
  • Redeem Points at participating businesses for goods

Officer

  • Create User Profile (Verify work email addresses)
  • Allow notifications for when an interaction is nearby
  • Connect with a Civilian
  • Post connection on Social Media
  • Receive Points for interaction
  • Donate Points to participating Charity
  • Officers to have the ability to upload upcoming events to find officers willing to connect
  • Location turns off automatically after 15 mins

Charity

  • Create Profile
  • Allow Officers to connect
  • Allow Officer Points to be donated
  • Redeem Points at participating businesses

Business

  • Create Profile
  • Allow Civilians to opt-in for push notifications to alert them that a participating establishment is nearby
  • Allow Civilian to redeem Points in exchange for goods
  • Allow for businesses to upload their rewards systems into Hey, Blue!

Additional functionality

Virtual Connections

Beta testing of Hey, Blue! brought up the issue that there are Police Officers willing to participate in the system but not willing to share their location. This may be for privacy or safety reasons. We propose the additional functionality of Virtual Connections to handle those cases.

Officers, that are not willing to share their location, can login and register for OfficerLookup. After that, Civilians are able to find those Officers via a list in their app. They can then propose a connection which can be accepted by the officer. From this moment the connection is treated equally to a proximity connection. It is rewared with a Point and can be shared to Social Media.

Comprehensive Reporting and Analytics

Web and Mobile-Based with back-end processing and reporting and analytics for distribution to various media companies. Reports will be shared on a daily/weekly/monthly basis.