D1. Specifications

User Stories

  1. As a first-time user, I want to be able to register / login so I can view the app tutorial.
  2. As a first-time user, I want to be able to learn information about the company so I can be more knowledgeable about the company and their goals.
  3. As an authenticated user I want to access my sustainability dashboard so that I can see my progress.
  4. As a user, I want to get badges so that I’m motivated to make progress.
  5. As a user, I want to be able to scan my receipt and confirm the list of purchases that I made.
  6. As a user, I want to be able to use my scanned receipt data to be able receive the carbon footprint created from the order.
  7. As a user, I want to be able to see my previously scanned receipts.
  8. As a user, I want to be able to see my previous carbon emissions associated with individual receipts.
  9. As a user, I want to be able to set a carbon emissions goal to meet.
  10. As a user, I want to be able to connect my financial institution with the application in order to receive further carbon emissions data.

Requirements

Functional Requirements

  • Definite
    • If a user opens the application, they will be able to see create an account and enter information regarding their current carbon footprint and sustainability efforts.
    • If a user with an account opens the application, they will be able to see a dashboard displaying their progress in decreasing their carbon emissions.
    • If a user with an account opens the application, they will be able to see their badges that they earned when achieving sustainability milestones.
    • If a user with an account scans their receipt, an API will break down the receipt into a JSON file of individual purchases, which will be funneled to ChatGPT, where it is categorized and quantified by total carbon emissions output.
    • If a user with an account wants to see their receipts, they can click on a button to review their previous receipts.
  • Perhaps
    • If a user connects their financial accounts, they will be able to receive a carbon emission score for each of their individual transactions.
    • If a user enters their personal waste and compost data, they will be able to receive a carbon emission score for this data.
    • Use inputted data to prompt Chat-GPT for suggestions for improvements.
  • Improbable
    • If a user connects their home utility access, they will be able to receive a carbon emission score for their utilities, water bill usage, etc.
    • Use Geo-location combined with maps and vehicular data to estimate transportation carbon footprint.

Nonfunctional Requirements

  • Definite
    • The app should be mobile-based and should be able to be opened on both iOS and Android devices.
    • The user interface should be easily navigable and have some component to retain user attention.
  • Perhaps
    • The app will track your location in order to notify you of potential sustainable actions to take at certain locations.
  • Improbable
    • Connect to smart home service and assistants such as:
      • Alexa
      • Siri
      • Google Assistant
      • Homekit
      • Nest