Product Backlog - VikRic/MealPlanner GitHub Wiki

Use Case 01: Registration

Titel: User Registration

Mål: Users should be able to register

TestCase: TC 1.1

Stakeholders:

  1. End User: Needs to be able to register.
  2. Administrator: To verify that the registration process works.

Use Case 02: Login

Title: User Login
Goal: Users should be able to log in
Test Case: TC 1.2

Stakeholders:

  1. End User: Needs to be able to log in.
  2. Administrator: To verify that the login process works.

Use Case 03: GET Request

Title: Perform a GET Request
Goal: Users should be able to retrieve recipes
Test Case: TC 2.1

Stakeholders:

  1. End User: Needs to be able to retrieve recipes.
  2. Administrator: To ensure GET and POST requests function properly.

Use Case 04: Filter Recipes – Allergy

Title: Allergy Filtering
Goal: Users should be able to filter recipes based on selected allergy options
Test Case: TC 2.4

Stakeholders:

  1. End User: Should receive specific recipes.
  2. Administrator: To verify that filtering works as expected.

Use Case 05: Filter Recipes – Cuisine

Title: Cuisine Filtering
Goal: Users should be able to filter recipes based on selected cuisine
Test Case: TC 2.5

Stakeholders:

  1. End User: Should receive specific recipes.
  2. Administrator: To verify that filtering works as expected.

Use Case 06: Filter Recipes – Time

Title: Time Filtering
Goal: Users should be able to filter recipes based on preparation time
Test Case: TC 2.3

Stakeholders:

  1. End User: Should receive specific recipes.
  2. Administrator: To verify that filtering works as expected.

Use Case 07: View Calendar

Title: Calendar View
Goal: Users should be able to see their weekly meal plan
Test Case: TC 3.1

Stakeholders:

  1. End User: Needs to be able to see selected recipes for the week.

Use Case 08: Add Recipe

Title: Add Recipe
Goal: Users should be able to add recipes to the calendar view
Test Case: TC 3.2

Stakeholders:

  1. End User: Needs to be able to add recipes.
  2. Administrator: To ensure data is correctly stored in MongoDB.

Use Case 09: Ingredient search

Title: Search recipe by ingredient
Goal: Users should be able to search recipes by ingredients
Test Case: TC 2.6

Stakeholders:

  1. End User: Needs to be able to search recipes by ingredients.

General Requirements for Requirements

  • Unique ID
  • Clear and descriptive name
  • Type/classification (e.g., Project requirement, Quality requirement, Functional requirement, FURPS+)
  • Status (implemented, tested, invalid, etc.)
  • Clear description that is easy to understand
  • Testable – with reference to test cases
  • Non-conflicting – requirements must not contradict each other
  • Priority
  • Dependencies
ID Name Type Status Clear Description Testable Priority Dependencies
001 Input Fields Functional :white_check_mark: Tested Ability to enter data in fields to modify the data sent to the server. Enter data in fields and verify it is sent. High None
002 Accept Posts Functional :white_check_mark: Tested Client should be able to send POST requests using the input fields. Enter data, click send, verify data is stored on the server. High Requirement 001
003 API Call Functional :white_check_mark: Tested API call should reflect user inputs. Enter data, click send, verify correct POST request. High Requirements 001, 002
004 User Registration Quality :white_check_mark: Tested Enable user account creation. Click login, select register, fill fields, click OK, see confirmation. Medium -
005 User Login Quality :white_check_mark: Tested Enable users to log in and log out. Click login, fill fields, click OK, see confirmation. Medium -
006 Recipe Display Functional :white_check_mark: Tested Show image and recipe after user input. Input data, check data returned from Spoonacular is displayed. High Requirement 003
007 Save Meal Plan Functional :white_check_mark: Tested Allow users to save and reuse meal plans. Save and reload a meal plan. Medium Requirement 006
008 Allergy Filtering Functional :white_check_mark: Tested Recipes should exclude ingredients based on allergy inputs. Enter allergies, generate plan, verify no allergens present. High Requirement 003
009 Weekly Plan Functional :white_check_mark: Tested Enable creation of a weekly meal schedule. Create and view a weekly meal plan. High -
010 Shopping List Functional :white_check_mark: Tested Generate a shopping list based on the weekly meal plan. Input data, server sends post to Spoonacular, list is shown. High Requirement 009
012 Save Recipes to MongoDB Functional :white_check_mark: Tested Call Spoonacular API and save data to MongoDB. Ensure data shown comes from MongoDB, not the API. High Requirement 003
013 Recipe Filtering Functional :white_check_mark: Tested Search recipes by cuisine or allergies (e.g., gluten-free, vegan). Results should match user input requirements. High Requirement 001
014 Update recipeCard Design :white_check_mark: Tested Make each recipe card more user friendly Medium
015 API fetch on timer Functional :white_check_mark: Tested Fetch new recipes on timer instead of when users want a new recipe. Check mongoDB if new recipes come in. Medium
016 Ingredient Search Functional Implemented Search recipe based on ingredients. See if recipes contain set ingredients Medium