This repository was archived by the owner on Feb 9, 2026. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Lab 9: Milestone 3 Demo Preparation
Burak Korkmaz edited this page Dec 9, 2025
·
1 revision
| Role | Example User | Purpose in Demo |
|---|---|---|
| User 1 – Measurement Flow | keremkurt@gmail.com | Used to demonstrate new measurement units (g/ml/piece/tsp/tbsp) both when adding ingredients and when viewing recipe details. |
| User 2 – Scoring Flow | hasanarda@gmail.com | Used to demonstrate easiness score, healthiness score, and how these scores affect recipe exploration and decision-making. |
We preload:
-
12 complete recipes with:
- ingredient quantities in grams, ml, and pieces
- macro & calorie metadata
- W3C/JSON-LD ActivityStreams-compliant metadata
- 3 trending recipes with higher activity
- 1 edge-case recipe missing optional fields
These support searching, filtering, validation, metadata display, and activity-stream demos.
For Ayşe (primary persona):
- 7 days of meal logs (breakfast/lunch/dinner)
- 2 abnormal calorie spikes → triggers insights
- 1 missing-portion entry → validation demonstration
For Melike (power user):
- 30-day historical dataset for trends and analytics
Pre-logged actions:
-
Createactivity for recipes -
LikeandSaveactivities -
Updateactivity for edited recipe
Allows demonstration without creating actions live.
Included for robustness:
- Recipe with expired badge
- User with no history
- Nutrition logs with mixed units (g/ml/piece)
- Ensures realistic and narrative-driven demo flow
- Eliminates need for real-time data entry
- Guarantees deterministic behavior across web/mobile
- Supports validations, analytics, recommendations, and metadata demonstrations
- Brief project intro and what is done in this milestone.
- Emphasis on user-focused demo and realistic data.
Mesut opens the HeatH mobile app and mentions that he wants to prepare a quick, healthy lunch. He navigates to the Simple Tomato Garlic Recipe, which includes spaghetti, tomatoes, garlic, basil, olive oil, and Parmesan.
- On the recipe page, Mesut scrolls through the ingredient list and highlights that the app now supports multiple unit selections such as cups, grams, tablespoons, and teaspoons, making cooking more intuitive for everyday users.
- He taps on Tomatoes (100g) and changes the unit from grams → ½ cup, demonstrating how the equivalent weight and nutritional values recalculate instantly.
- Next, he selects Olive Oil (20g) and switches the unit from grams → 1 tablespoon, showing another real-time conversion and nutrition update.
- To showcase flexibility, he chooses Garlic (10g) and converts the amount from grams → teaspoons, illustrating how users can adapt ingredient measurements to what they have at home.
- Mesut briefly opens the Instructions section and notes how these unit choices make following the recipe simpler—for example, “1 tablespoon olive oil” or “½ cup tomatoes” feels more natural than cooking entirely in grams.
- Finally, he adds the customized recipe to the meal log. The app automatically computes the total calories based on his selected cup, tablespoon, and teaspoon values, ensuring precise nutrition tracking throughout the user’s day.
- Hasan Arda Güneş will want to see the healthiness score of the Banana Bread.
- Hasan Arda Güneş navigates to the Banana Bread recipe detail page
- He scrolls to view the healthiness score
- Based on the healthiness metrics, he writes and posts a comment sharing his thoughts
- Arda will start to cook the Banana Bread. (He is not going to cook a bread in real life)
- He opens the recipe instructions and reviews the step-by-step cooking process
- He will finish the cooking.
- After "completing" the cooking process, he navigates to the easiness rating section
- He selects an easiness score (1-5 scale) based on how simple the recipe instructions were to follow
- He submits the easiness rating
- Our team will accept the questions.
| Item | Status |
|---|---|
| Database fully populated | ✔ |
| UI flow deterministic | ✔ |
| JSON-LD & ActivityStreams samples prepared | ✔ |
| Edge-case coverage included | ✔ |
| Cross-platform flow validated | ✔ |
| Speaker roles assigned | ✔ |
| Timing rehearsed | ✔ |
