| Requirement # |
Description |
Task |
| 1 |
The application shall allow the user to manually input recipes |
- Ingredient
- MeasuredIngredient
- Subclass of Ingredient that represents a measured quantity of a unique ingredient in the pantry
- Extra fields for amount, measurementType, and specialInstructions
- constructor(s)
- Recipe
- Display
- Prompt user for new recipe fields, new ingredient fields, save recipe and prompt for a new recipe
- Input
|
| 2 |
The application shall allow the user to browse recipes |
- RecipeBook
- Display
- Browse RecipeBook and view Recipe
|
| 3 |
The application shall allow the user to edit recipes |
- RecipeBook
- removeRecipe()
- addRecipe()
|
| 4 |
The application shall allow the user to convert ingredient measurements to metric |
|
| 5 |
The application shall allow the user to import pictures to recipes |
- Recipe
- Display
- Display and format picture for browsing, viewing, editing recipes
|
| 6 |
The application shall allow the user to export “printer friendly” recipes |
- FacebookIntegration
- postRecipe(Recipe recipe)
- Display
- Display and Format recipe
|
| 7 |
The application shall allow the user to share printer friendly recipes to social media |
- FacebookIntegration
- postRecipe(Recipe recipe)
- facebookClient.publish()
- Display
|
| 8 |
The application shall allow the user to create a shopping list from recipes |
- ShoppingList
- Display
- Displays recipe items needed
|
| 9 |
The application shall allow the user to add or remove ingredients from their “pantry” |
- Pantry
- addIngredient()
- removeIngredient()
- Display
|
| 10 |
The application shall take into account the “pantry” inventory when generating shopping lists from recipes |
- ShoppingList
- Pantry
- Ingredients available for recipe
- Display
|
| 11 |
The application shall allow the user to filter recipes in the following manners:
- By ingredient
- By diet
- By cuisine
- By meal
|
|