MVP Demo Plan - bounswe/bounswe2026group9 GitHub Wiki

1. Demo Structure and User Scenarios

Demo Overview

This demo presents an end-to-end event journey across both web and mobile platforms. The story begins with a user discovering an existing event in list view, deciding it is too crowded for their preference, and bookmarking it instead of joining. The same user then creates a new private event with a smaller and more controlled structure and shares an invite link to their friends' WhatsApp group. A second user discovers this private event on mobile through map view, sends an access request. The host recognizes the requester's name as a primary school friend and approves them. The attendee then views the full event details, asks a question in the comments, and later rates the host after attending the event.

Users in the Demo

Mehmet Kaya is the main host user and uses the web application. He prefers smaller, more organized nature events and decides to create his own private bird observation event after finding an existing one too crowded.

Emir Demir is the attendee user and uses the mobile application. He discovers events through the map view, requests access to Mehmet’s private event, joins after approval, comments on the event page, and later rates the host after the event is completed.

User Scenario 1 — Web: Discovery, Bookmarking, and Private Event Creation

Mehmet starts in the web application already authenticated. He browses events in list view and finds an existing bird observation event. Although the topic is relevant to his interests, he decides not to join because the event seems too crowded and does not match the smaller, more controlled experience he wants. Instead of ignoring it, he bookmarks it for future reference. Then he creates his own private bird observation event for the weekend. He enters the event details, uploads a Belgrad Forest photo, sets the meeting point as M6 Boğaziçi Metro, specifies that the group will go to Belgrad Forest by starting point as M6 metro, and writes binoculars as required equipment. After publishing, Mehmet copies the event's invite link and sends it to his friends' WhatsApp group, waiting for them to join.

User Scenario 2 — Mobile: Private Event Discovery and Access Request

Emir starts on the mobile application already authenticated. He uses map view to browse nearby events and discovers Mehmet’s newly created private event. Since the event is private, he can only see a limited preview and not the full event details. He sends a request to attend. Mehmet receives the request on the web side. Upon seeing the name "Emir Demir", Mehmet realizes, "Oh, this is my primary school friend!" and happily approves the request. Emir then receives a mobile notification confirming that he has been accepted.

User Scenario 3 — Mobile and Web: Full Access, Comments, and Host Rating

After approval, Emir opens the private event again and can now see the full details, including the event description, meeting point, route, uploaded image, and binocular requirement. He asks a question in the comments section: “I don’t have professional binoculars. Would a basic one be enough?” Mehmet receives the comment and replies from the web application. At the end of the demo, Emir opens a completed version of the bird event, assumed to be the same event after it has ended, and rates Mehmet as the host.


2. Script

0:00 – 0:20 — Introduction

Speaker 1 (Mehmet / Web Presenter):
Start the demo already authenticated as Mehmet Kaya on the web application and with Emir Demir authenticated on the mobile application. Briefly introduce the scenario: Mehmet will first explore an event, decide it is too crowded, create his own private event, and then manage an attendee request from Emir.

0:20 – 1:10 — Web Discovery in List View

Speaker 1:
Navigate to the event discovery page in list view. Search or scroll to find an existing bird observation event. Open its preview and explain that Mehmet likes the topic but decides not to join because the event seems too crowded and not selective enough. Click Bookmark to save it for later.

1:10 – 2:40 — Web Event Creation

Speaker 1:
Move to the create-event page. Fill in the event details for a new private event:

  • Title: Private Weekend Bird Observation Walk
  • Category: Bird Observation / Nature
  • Visibility: Private
  • Date: This weekend
  • Meeting point: M6 Boğaziçi Metro
  • Route detail: the group goes to Belgrad Forest by metro
  • Equipment: Binoculars required
  • Image: upload a Belgrad Forest photo

Then publish the event. While doing this, explain that Mehmet is creating a smaller, more controlled event. After the event is created, click the 'Share' or 'Copy Link' button and state: "Mehmet now copies the invite link and drops it into his friends' WhatsApp group, waiting for their requests."

2:40 – 3:30 — Mobile Discovery in Map View

Speaker 2 (Emir / Mobile Presenter):
Switch to the mobile app already authenticated as Emir Demir. Open map view and show the newly created private event. Tap the event and show that only limited information is available because it is private. Then tap Request Access or Request to Attend.

3:30 – 4:20 — Web Approval of Access Request

Speaker 1:
Return to the web application as Mehmet. Open the notifications panel or attendee request section. Show Emir’s pending request. Narrate Mehmet's thought process: "Wait, Emir Demir... Oh, this is my primary school friend!" Click Accept. Explain that this highlights how hosts have full visibility and control over who gets into their private events.

4:20 – 4:50 — Mobile Acceptance Notification

Speaker 2:
Go back to the mobile application. Open the notifications page and show that Emir has received an approval notification. Tap the notification or re-open the event.

4:50 – 5:40 — Mobile Full Private Event Access

Speaker 2:
Open the event details page again. Now show that Emir can see the full content of the private event, including the uploaded photo, route details, meeting point, and binocular requirement.

5:40 – 6:20 — Mobile Comment Submission

Speaker 2:
Scroll to the comments section and post this comment:
“I don’t have professional binoculars. Would a basic one be enough?”

6:20 – 7:00 — Web Reply to Comment

Speaker 1:
On the web application, open the new comment notification or refresh the comments area. Reply with something like:
“Yes, a basic binocular would be enough for this event.”

7:00 – 7:50 — Mobile Host Rating on a Finished Event

Speaker 2:
Open a pre-prepared finished bird observation event page, assumed to be this same event after completion. Show the host rating section and let Emir submit a rating for Mehmet. Explain that this demonstrates post-event interaction and host profile feedback.

7:50 – 8:00 — Closing

Speaker 1:
Conclude by summarizing that the demo covered list and map discovery, bookmarking, private event creation, access requests, notifications, full private-event access after approval, comments, replies, and host rating.


3. Demo-data Strategy

User Roles

We will prepare two authenticated users:

  • Mehmet Kaya as a registered user on the web application, acting as the host and event creator.
  • Emir Demir as a registered user on the mobile application, acting as the attendee and requester.

Pre-populated State

We will pre-populate one existing public bird observation event in the system so that Mehmet can discover it in list view and bookmark it immediately without needing to create it during the demo. This event should look relevant but feel broad enough that Mehmet’s decision to create a more selective private event is believable.

We will also make sure both users are already logged in before the demo starts, and that the mobile app’s map view is centered in an area where Mehmet’s new private event will appear clearly after creation.

Live-Creation Data

During the demo, Mehmet will create a new private event with all required fields already prepared:

  • title
  • description
  • category
  • start/end date and time
  • private visibility
  • location details
  • uploaded Belgrad Forest image
  • binocular requirement

The event description should support the story of a smaller and more focused bird observation activity. The meeting point will be M6 Boğaziçi Metro, and the description should state that the group will continue to Belgrad Forest by metro.

Access-Control Data

The system must support a private event preview that is visible in discovery results but does not expose full content to unauthorized users. Emir must initially see only the limited preview and the request button. Once Mehmet approves the request, Emir must be able to view full event details. This approval should trigger an in-app notification.

Comment and Notification Data

The comments feature must be enabled on the event page, and notifications must be working for both access requests and comment updates. Emir’s question should be ready to paste quickly:
“I don’t have professional binoculars. Would a basic one be enough?”

Finished Event and Rating Data

To demonstrate host rating without waiting for real event completion, we will pre-populate a finished bird observation event associated with Mehmet’s host profile. Emir should already be eligible to rate that host on the completed event page. This allows the final rating step to be shown instantly and connects the demo to the host profile/rating requirement.

4. Role Assignments

  • Web Controller: Ibrahim
  • Web Presenter: Can Emir
  • Mobil Presenter: Muhittin
  • Mobil Controller: Ihsan
  • Time Keeper: Battal
  • Customer Observer: Mustafa

NOTES:

  • Presenter means that person will talk and give details while Controller shows how application works.
  • Controller means that person will control the web/mobil app and interact will buttons/pages etc.