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:
- End User: Needs to be able to register.
- 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:
- End User: Needs to be able to log in.
- 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:
- End User: Needs to be able to retrieve recipes.
- 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:
- End User: Should receive specific recipes.
- 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:
- End User: Should receive specific recipes.
- 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:
- End User: Should receive specific recipes.
- 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:
- 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:
- End User: Needs to be able to add recipes.
- 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:
- 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 |