Lab 7: Milestone 2 Demo Preparation - bounswe/bounswe2025group1 GitHub Wiki
1. Demo Data Strategy
For MVP Milestone Demo, we will focus on presenting with more domain-specific data. On the first demo, we focused on having real gardens and realistic content such as "Kadıköy Bostanı", "Çankaya Mutlukent Bostanı", "İmrahor Lavanta Bahçeleri", "Kuzguncuk Bostanı" which all exist and already community-driven, so they lay good examples for when such an app for coordination could be needed. For the second demo we will increase the number of examples such as adding the garden that belongs to tarlataban, which is a good and relatable example in Boğaziçi.
Based on the recieved feedback, we will focus on making the data more self-spoken and explanatory. To illustrate our task creation and assignment feature during demo, we went with a task called "Water the hydrangeas." In retrospect, example data needs to paint the picture more clearly. What a hydrangea is may not be clear for everyone, so there is a need for a domain-specific information content presented. Therefore not only a new requirement was born but we will also have the application with more data on nature, plants and gardening. There will be content for questions like "What is a hydrangea", "What type of soil does it like", "Should it be cared inside or outdoors", "In what climate conditions does it thrive (sun/soil type/ temperature/shade/humidity)". The reason for needing such data is the fact that this platform is community-focused an values collaboration, sob beginner questions and domain data will always be needed.
Previously we used Turkish personas for showcasing language support. For this demo, although the focus wont be on language, we will still use Turkish personas for relatability. It will be focusing on events this time, and we decided to use a "New Year Celebration Event" for the festive spirit since the new year is coming up. We used a grden in Adana because it is a suitable climate for most plants, and famous for festival events and celebrations regarding agriculturre. We also added a garden from Hatay as well to showcase on of our new features - gardens near me. To be able to show chat feature, we added multiple users to gardens and chatted prior to demo.
2. Demo Cases
2.1 Web Demo Scenario — Garden Discovery → Membership → Event Participation → Badge Unlock
User: Metehan Sarkaç Goal: The user discovers a garden, requests to join, gets approved, joins an event, earns a badge, and receives an informational message from the manager.
2.1.1 Metehan Sarkaç Logs Into the Platform
Action: Metehan enters his credentials on the login page.
System Response:
- The home page loads.
- A banner displays: "Welcome back, Metehan!"
- Side menu: Home, Gardens, Dashboard, Forum.
2.1.2 Metehan Navigates to the "Gardens" Tab
Action: He clicks the Gardens tab and looks for nearby gardens.
Garden list:
- Ceyhan Vineyard
- Yüreğir Pomegranate Garden
- Serinyol Olive Orchard
2.1.3 Metehan Notices "Ceyhan Vineyard" and Clicks It
Garden Detail Page Shows:
- Cover photo (Vineyard)
- Description: "A community garden focused on grape farming and seasonal harvests."
- Main button: Request to Join
2.1.4 Metehan Sends a Join Request
Action: He clicks "Request to Join Garden."
System Response:
- The Garden Manager receives a notification:
New Join Request Metehan Sarkaç wants to join your garden: "Ceyhan Vineyard" [Approve] / [Decline]
2.1.5 The Garden Manager Accepts the Request
Manager Action: Clicks Approve.
System Response:
- Metehan is added to the garden.
- He receives an in-app + push notification:
Membership Approved Your request to join "Ceyhan Vineyard" has been accepted. Welcome to the garden!
2.1.6 Metehan Opens the Notification and Enters the Garden Page
Action: Metehan clicks the notification → taken directly to the garden's home page.
2.1.7. Metehan Goes to the "Events" Tab
He sees a private upcoming event:
- Event: "Yılbaşı Eğlencesi"
- Date: December 24, 2025
- Privacy: Private (only members)
- Description: "24 Aralık saat 20:00'de bahçemizde, üyelerimizle yeni yılı kutlayacağız, tüm üyelerimiz davetlidir."
2.1.8 Metehan Joins the Event and Earns a Badge
Action: Clicks "Going".
System Response:
- His name is added to the attendance list.
- Confirmation toast: "You have voted "going" to Yılbaşı Eğlencesi"
- Badge unlocked:
Badge Earned You earned the "Frost Guardian" & "Festival Sprout" badges!
2.1.9 Garden Manager Posts an Information Message in Garden Chat
Action: Shortly after, the manager sends a message to garden chat:
"Herkese merhaba, 24 Aralık saat akşam 8'de hepinizi bahçeme bekliyorum. Takvimlerinizi boşaltın :p "
System Reaction:
- Metehan sees a new message indicator.
2.2 Mobile Demo Scenario — Garden Discovery → Task Rejection → Infection Alert → Event & Badges
User: Emre Topal Goal: The user joins a garden via the mobile app, rejects an assigned task (with explanation), reports a sudden bug infection (triggering alerts and DMs), and finally joins an event to unlock badges.
2.2.1 Emre Topal Opens the Mobile App
Action: Metehan taps the app icon and authenticates (Biometric/FaceID or credentials).
System Response:
- Home Screen loads.
- Greeting: "Good Morning, Metehan!"
- Bottom Navigation Bar: Home, Explore Gardens, My Tasks, Chat, Profile.
2.2.2 Emre Taps "Explore Gardens"
Action: He taps the Explore icon in the bottom navigation.
2.2.3 Emre Selects "Ceyhan Cotton Field"
Action: He taps the card for Ceyhan Cotton Field.
Garden Detail Screen:
- Header: High-res photo of the cotton field.
- Info: "Community cotton farming & seasonal harvests."
- Sticky Button (Bottom): [Request to Join]
2.2.4 Emre Taps "Request to Join"
Action: He taps the button.
System Response:
- Button changes state to "Pending Approval."
- Manager Side: The Garden Manager receives a Push Notification: "New Request: Emre Topal wants to join Ceyhan Cotton Field."
2.2.5 Manager Approves & Emre Enters
Manager Action: Manager taps "Approve" on their device.
System Response (Metehan's Phone):
- Push Notification: "🌱 You're in! Your request to join Ceyhan Cotton Field was accepted."
- Emre taps the notification and is deep-linked directly to the Garden Dashboard.
2.2.6 Task Assignment & Rejection
Context: The Manager assigns a routine task to Emre immediately after he joins.
Action: Emre receives a notification: "New Task Assigned: Inspect Irrigation Pipes."
Emre's Reaction: He realizes he cannot do this because he doesn't have the keys to the pump room yet.
- He navigates to the My Tasks tab.
- He taps the task "Inspect Irrigation Pipes."
- He taps the [Reject Task] button.
System Response:
- A modal/popup appears: "Please explain why you are rejecting this task."
Action (Chat Integration): Emre types: "I don't have the keys to the pump room yet, so I can't access the pipes." and hits Send.
System Response:
- Task status changes to "Rejected."
- Manager Notification: "Task Rejected: Metehan cannot complete 'Inspect Irrigation Pipes'."
- The explanation is sent directly to the Manager in the Chat tab.
2.2.7 Infection Discovery & Alert
Context: While physically walking through the garden later that day, Emre spots a pest issue.
Action:
- Metehan opens the app and taps the Report button on the Garden Dashboard.
- He selects "Report Infection/Pest".
- He snaps a photo of the bug and selects "Severe" urgency.
System Response (Immediate):
- Manager Notification (Critical Alert): "⚠️ INFECTION ALERT: High severity issue reported by Emre."
- Auto-DM Generation: The system automatically opens a Direct Message (DM) channel between Metehan and the Manager.
Action (Chat): Emre sends a follow-up text in the DM
2.2.8 Emre Navigates to "Events"
Context: After reporting the issue, Emre checks upcoming community gatherings.
Action: He taps the Events tab on the garden screen.
Event Card:
- Event: "PamukFest '25"
- Status: Private (Members Only)
- Date: Dec 14, 2025
2.2.9 Emre Joins Event & Unlocks Badges
Action: He taps [Join Event].
System Response:
- Toast Message: "Success! You are going to PamukFest '25."
- Badge Unlocked: Frost Guardian
- Badge Unlocked: Festival Sprout
Final State of the Scenario
| Step | Status |
|---|---|
| User logged in | Completed |
| Discovered garden | Completed |
| Sent join request | Completed |
| Manager approved | Completed |
| Notification received | Completed |
| Accessed garden page | Completed |
| Saw private event | Completed |
| Joined event | Completed |
| Earned badge | Completed |
| Manager shared info message | Completed |
3. Status of software requirements compliance
New requirements to be presented:
- FR 1.7: Gardens Near Me
- FR 6: Notifications
- FR 7: Moderation
- FR 8.1: Garden Chats
- FR 8.2: Garden Events
- FR 15.1: Badges
3.1 Backend
- 3 days
3.2 Web-Frontend
- 4 days
3.3 Mobile
- 7 days