-
Notifications
You must be signed in to change notification settings - Fork 0
MVP Demo Plan
| Property | Detail |
|---|---|
| Total Duration | 8 minutes |
| Scenarios | 2 (Web + Mobile) |
| Deployment | Live on public HTTPS URL |
| Platforms | React web app + React Native mobile app |
The demo is split into two back-to-back scenarios that form a continuous workflow. Scenario 1 (Web) follows the Mentee discovering a mentor and sending a request. Scenario 2 (Mobile) switches to the Mentor receiving that live request, reviewing it, and managing their mentorships.
| # | Scenario | Platform | Perspective | Duration | Key Features Covered |
|---|---|---|---|---|---|
| 1 | Mentee Profile & Mentor Discovery | Web | Mentee | 4:00 | Registration page (brief), mentee profile viewing and editing, mentor discovery browsing, mentor profile detail, sending mentorship request, request status tracking |
| 2 | Mentor Dashboard & Request Management | Mobile | Mentor | 4:00 | Mentor profile editing, availability scheduling, incoming request list, candidate review with privacy controls, accept request, reject request, active mentorship list, capacity tracking |
Why this flow? This order demonstrates the logical, chronological lifecycle of a mentorship request. Starting with the mentee allows us to generate a live request on the Web platform, which is then immediately processed by the mentor on the Mobile app, proving the real-time connectivity and full-stack integration of the system. Both scenarios start pre-authenticated to maximize time on core features.
Persona: Elif Yılmaz — 2nd-year Computer Engineering student at Boğaziçi University. She is interested in data science and wants to find an experienced mentor to guide her career path.
Story: Elif opens the web app for the first time and registers a new account using a disposable email address. She verifies her email instantly, logs in, and fills out her mentee profile. She uses the AI matching feature to find her top 5 mentor matches, discovers Dr. Ahmet Bulut ranked #1, reviews his full profile including availability, sends a personalized request, and confirms it from the home page.
Features Demonstrated:
- Registration page overview (form fields, role selection -- shown briefly)
- Mentee profile viewing and editing (major, skills, interests, career goals, meeting frequency preference)
- Mentor discovery screen (browsing available mentors)
- Mentor profile detail view (bio, expertise, interests, availability)
- Sending a mentorship request with a motivation message
Persona: Dr. Ahmet Bulut -- 52-year-old retired Data Scientist, living in Besiktas, Istanbul. He has joined the platform to mentor university students in data science and machine learning. He has set a maximum capacity of 3 mentees and currently has 1 active mentee.
Story: Dr. Bulut opens his mobile app. He updates his mentor profile to refine his expertise tags. He then checks his availability calendar and adjusts his free slots for the upcoming week. He navigates to his incoming mentorship requests and finds two candidates: a pre-existing request, and the live request just sent by Elif. He reviews their profiles -- noting that candidate surnames and photos are hidden for privacy -- accepts Elif whose goals align well with his expertise, and rejects the other candidate who is looking for a field he does not cover. Finally, he views his updated active mentorships list to confirm Elif has been added and his mentee count has correctly increased from 1 to 2 out of 3.
Features Demonstrated:
- Mentor profile viewing and editing (bio, expertise, interests, max capacity)
- Availability calendar management
- Incoming mentorship request list
- Mentee candidate profile review with privacy controls (only first name visible at matching stage)
- Accept mentorship request (processing the live request from Scenario 1)
- Reject mentorship request
- Active mentorship list with updated state
- Capacity tracking (mentee count update after accept)
Setup: Browser is open on the deployed web application. A pre-authenticated session as "Elif Yilmaz" (Mentee) is ready to switch to after briefly showing the registration page.
| Time | Speaker | Operator | Action & Narration |
|---|---|---|---|
| 0:00 - 0:15 | Amin | Muhammet Sami | Introduction. Amin speaks: "Finding the right mentor used to mean cold emails, LinkedIn messages that go unanswered, and months of trial and error. We built this platform to solve exactly that — intelligently connecting students with experienced professionals who are genuinely ready to help. Let's follow Elif, a second-year CS student, from the very first moment she opens the platform." |
| 0:15 - 0:55 | Amin | Muhammet Sami | Live Registration. Muhammet clicks "Register". Amin: "The registration is simple and role-aware. Elif selects Mentee — the platform immediately knows what experience to give her." Muhammet fills in name, copies email from temp-mail tab, sets password, selects Mentee, submits. Amin: "A verification email lands instantly. One click — she's in. No friction, no waiting." Muhammet clicks the verification link in temp-mail. |
| 0:55 - 1:15 | Amin | Muhammet Sami | Login. Muhammet logs in. Amin: "Her account is live. This is a real session, registered just now, on our live production server." |
| 1:15 - 1:55 | Amin | Muhammet Sami | Profile Setup. Muhammet navigates to profile. Amin: "Before browsing mentors, Elif tells the platform who she is and what she wants. Her background, her goals, her interests, her skills. This is not just a form — this data is what drives the matching engine." Muhammet fills: Background → "2nd year Computer Engineering student at Boğaziçi University", Goals → "Transition into a data science career", Interests → "Data Science, Python, Machine Learning", Skills → "Python, Statistics". Saves. Amin: "Profile saved. The platform now knows exactly what kind of mentor Elif needs." |
| 1:55 - 2:35 | Amin | Muhammet Sami | AI matching. Muhammet navigates to Explore. Amin: "She could scroll through the full list — but that's the old way of doing things. Instead, she lets the platform do the work." Muhammet clicks "Find my best matches". Amin: "Our matching algorithm runs across every mentor on the platform — comparing Elif's interests, skills, and goals against each mentor's expertise, teaching preferences, and mentee requirements. In seconds, it returns her personal top 5 — ranked by compatibility." Cards animate in with score rings. Amin: "Dr. Ahmet Bulut. Ranked number one. The system found him not because he appeared first in a list — but because his profile is the closest match to what Elif is looking for." |
| 2:35 - 3:15 | Amin | Muhammet Sami | Mentor Profile Detail. Muhammet clicks Dr. Bulut's card. Amin: "One click opens his full profile. Elif gets everything she needs to make a confident decision — his professional background, areas of expertise, the kind of mentee he is looking for, and his mentoring goals." Muhammet scrolls. Amin: "And here's something that's often overlooked in other platforms — his weekly availability. Elif can see before she even sends a message whether their schedules are compatible. No awkward back-and-forth after connecting." Muhammet points to availability section. Amin: "He has capacity. He's the right fit. She's ready to reach out." |
| 3:15 - 3:45 | Amin | Muhammet Sami | Send Mentorship Request. Muhammet clicks "Send Request". Amin: "The request isn't just a button press — she can attach a personal message. This matters. Mentors are more likely to respond when they see genuine motivation." Muhammet types: "I am passionate about data science and would love to learn from your industry experience." Sends. Confirmation appears. Muhammet navigates to Home. Amin: "Her request is live and pending. The home page reflects it immediately — she always knows the current status of her mentorship journey."" |
| 3.45 - 4.00 | Amin | Muhammet Sami | Transition. Amin: "In under four minutes, Elif wentfrom a blank registration form to having a mentorship request in an expert's inbox — with the right expert, found automatically. Now let's switch to the other side of that connection. Let's see what Dr. Bulut sees on his mobile app — right now, in real time." |
Key Selling Points to Emphasize (for Q&A or if time allows)
- "The matching is not keyword search — it's profile compatibility scoring." The algorithm compares structured data on both sides: mentee interests/skills vs mentor expertise/preferred mentee profile.
- "Privacy is built into the design." At the request stage, mentors only see a
mentee's first name and goals — last name and photo are hidden until a
mentorship is active. - "Both sides of the relationship are first-class citizens." Mentors manage
capacity, set availability, and control who they accept. It's not a one-sided directory. - "This is a live production deployment." Everything happening in this demo is
on a real server, real database, real accounts — not a mockup or a staging
environment. - "The cross-platform moment." Elif's request sent on a web browser appearing
instantly on Dr. Bulut's mobile app is the clearest proof of the real-time
full-stack integration.
Setup: The mobile app is running on a physical device (or emulator projected on screen). The app is pre-authenticated as "Dr. Ahmet Bulut" (Mentor).
| Time | Speaker | Operator | Action & Narration |
|---|---|---|---|
| 4:00 - 4:15 | Burak | Ovgu Su | Introduction. Burak introduces the mobile scenario: "We are now logged in as Dr. Bulut on the mobile app. Let's start by managing his profile and schedule before checking his messages." |
| 4:15 - 4:55 | Burak | Ovgu Su | Mentor Profile & Availability. Ovgu navigates to the profile, adds "Deep Learning" to expertise tags, and saves. She then opens the availability calendar, selects Tuesday/Thursday afternoon slots, and saves. |
| 4:55 - 5:40 | Burak | Ovgu Su | Incoming Requests & Live Review. Ovgu navigates to the incoming requests page. Burak narrates: "Dr. Bulut checks his pending requests. Notice the request from Elif Y. that we just submitted on the web platform is here instantly." Burak points out that candidate surnames and photos are hidden for privacy. |
| 5:40 - 6:20 | Burak | Ovgu Su | Accept Candidate. Ovgu taps on Elif's profile. Burak narrates: "Dr. Bulut reviews Elif's goals and sees the perfect alignment with Data Science." Ovgu taps "Accept". The system shows a confirmation message. |
| 6:20 - 7:00 | Burak | Ovgu Su | Reject Candidate. Ovgu taps on the second candidate, "Can D." Burak narrates: "This candidate is looking for Graphic Design, outside Dr. Bulut's scope." Ovgu taps "Reject". The request is removed from the pending list. |
| 7:00 - 7:45 | Burak | Ovgu Su | Active Mentorships & Capacity. Ovgu navigates to the Active Mentorships list. Burak narrates: "Elif is now listed as an active mentee. At the top, we can see Dr. Bulut's capacity has dynamically updated from 1 to 2 out of 3." |
| 7:45 - 8:00 | Burak | -- | Closing. Burak summarizes: "That concludes our demo. We successfully demonstrated a real-time, cross-platform journey from a mentee's initial search on the web to the mentor's acceptance and management on mobile. Thank you!" |
- Elif Yilmaz (Mentee): Pre-registered mentee. Profile pre-filled with Major: Computer Engineering, Career Interest: Software Engineering (updated to Data Science during demo), Skills: Python (Beginner). Sends a mentorship request to Dr. Bulut live during the demo. Used for the web demo.
- Dr. Ahmet Bulut (Mentor): Retired data scientist. Bio filled with professional background. Expertise: Data Science, Machine Learning. Interests: AI, Teaching, Chess. Max mentee capacity: 3. Current mentee count: 1. Used for the mobile demo.
- Zeynep Arslan (Mentor): Professor of Sociology. Expertise: Social Research. Max mentee capacity: 3. Current mentee count: 0. Appears in the mentor discovery list to provide variety.
- Mehmet Yilmaz (Mentor): Software engineer. Expertise: Backend Development. Max mentee capacity: 3. Current mentee count: 3 (at full capacity). Appears in mentor discovery list.
- Abdulmecid Kaya (Mentee): Pre-existing mentee. Has one ACTIVE mentorship with Dr. Bulut. Appears in Dr. Bulut's active mentorship list on mobile.
- Can Demir (Mentee): Pre-existing mentee interested in Graphic Design. Has a PENDING mentorship request to Dr. Bulut. Used as the rejected request in the mobile demo.
- The mentor discovery list on web shows 3 mentors (Bulut, Arslan, Yilmaz) with different specializations.
- Dr. Bulut's account is pre-seeded with 1 active mentorship (Abdulmecid Kaya) and 1 pending request (from Can Demir).
- The Live Element: Elif's request is not pre-seeded. It is generated live during Scenario 1 on the Web and processed live during Scenario 2 on Mobile.
- Can Demir's request is for Graphic Design mentorship, which is outside Dr. Bulut's expertise. This motivates a realistic rejection rather than an arbitrary one.
- Mehmet Yilmaz is at full mentee capacity (3/3). If time allows, we can briefly show that a request to a full-capacity mentor is handled by the system.
| Role | Person | Responsibility |
|---|---|---|
| Web Narrator | Amin Abu-Hilga | Narrates the web scenario, explains features and design decisions |
| Web Operator | Muhammet Sami Cakmak | Operates the web browser, performs clicks and navigation |
| Mobile Narrator | Burak Ogut | Narrates the mobile scenario, explains features and design decisions |
| Mobile Operator | Ovgu Su Afsar | Operates the mobile device/emulator, performs taps and input |
| Backend Q&A | Mehmet Bora Sarioglu | Answers questions about API design, authentication, data model |
| Backend Q&A | Ibrahim Kayan | Answers questions about business logic, matching, request flow |
| DevOps/Infra Q&A | Beratcan Dogan | Answers questions about deployment, CI/CD, Docker, database |
| Note-taker | Ibrahim Kayan | Records customer/evaluator feedback during and after the demo |
Feature coverage across scenarios:
| # | MVP Feature | Web (Mentee) | Mobile (Mentor) |
|---|---|---|---|
| 1 | Registration Page (brief) | X | |
| 2 | Email Verification | x | |
| 3 | Mentee Profile View & Edit | X | |
| 4 | Mentor Discovery / Browsing | X | |
| 5 | Mentor Profile Detail (mentee view) | X | |
| 6 | Send Mentorship Request | X | |
| 7 | AI Matching & Compatibility Scoring | X | |
| 8 | Mentor Profile View & Edit | X | |
| 9 | Availability Management | X | |
| 10 | Incoming Request List | X | |
| 11 | Candidate Review + Privacy Controls | X | |
| 12 | Accept Mentorship Request | X | |
| 13 | Reject Mentorship Request | X | |
| 14 | Active Mentorship List | X | |
| 15 | Capacity Tracking (mentee count) | X |
Elif sends the mentorship request on web (#5), and Dr. Bulut reviews and accepts it on mobile (#9-11).
| Risk | Likelihood | Mitigation |
|---|---|---|
| Internet outage | Low | Pre-record a complete video walkthrough of both scenarios on the day before. If the connection drops, play the video and narrate live over it. |
| Backend cold start / slow response | Medium | Send a health-check request (/actuator/health) to the deployed backend 5 minutes before the demo to warm it up. |
| Mobile emulator crash | Low | Have the app running on a second physical device as backup. Alternatively, use a pre-recorded screen capture for the mobile portion. |
| Database data corruption | Low | Maintain a seed SQL script that can repopulate all demo data in under 30 seconds. Run it as a pre-demo checklist item. |
| A bug disrupts the demo | Medium | Have pre-loaded browser tabs and app screens at each key state so we can skip past the broken step and continue the narrative. Acknowledge the issue honestly if asked. |
- Verify the deployed application is accessible via HTTPS public URL
- Run the seed script to populate demo data
- Warm up the backend with a health-check request
- Pre-authenticate Elif Yilmaz's session in the browser (Web)
- Pre-authenticate Dr. Bulut's session on the mobile app (Mobile)
- Launch the mobile app and confirm it connects to the deployed backend
- Test the full flow once end-to-end on the deployed environment
- Confirm screen projection/sharing works for both web and mobile
- Timekeeper sets up stopwatch with 2-min, 3-min, and 3:30-min alerts
Team Members
- Lab 1 Report (12/02/2026)
- Lab 2 Report (19/02/2026)
- Lab 3 Report (26/02/2026)
- Lab 4 Report (05/03/2026)
- Lab 5 Report (12/03/2026)
- Lab 6 Report (26/03/2026)
- Lab 7 Report (02/04/2026)
- Lab 8 Report (18/04/2026)
- Lab 9 Report (30/04/2026)
- Lab 10 Report (07/05/2026)
- Weekly Meeting Notes Template
- Lab Meeting 1 (12.02.2026)
- Weekly Meeting 1 (16.02.2026)
- Weekly Meeting 2 (24.02.2026)
- Weekly Meeting 3 (04.03.2026)
- Weekly Meeting 4 (11.03.2026)
- Weekly Meeting 5 (23.03.2026)
- Weekly Meeting 6 (29.03.2026)
- Weekly Meeting 7 (11.04.2026)
- Weekly Meeting 8 (28.04.2026)
- Weekly Meeting 9 (10.05.2026)
- Use Case Diagram 1 (New Mentor User for Mobile Scenario)
- Use Case Diagram 2 (Mentor-Mentee Matching Scenario)
- Use Case Diagram 3 (New Mentee User Scenario)
- Final Use Case Diagram
- MVP Use Case Diagram
- All Sequence Diagrams
- Sequence Diagram: Mentee Matching
- Sequence Diagram: Mentor Matching
- Sequence Diagram: Mentorship Management
- Sequence Diagram: Registration
- Sequence Diagram: Cancelling Mentorship Relationship and Auto Ban
- Sequence Diagram: Login-Logout
- Sequence Diagram: Reporting-User
- Sequence Diagram: Mentor Profile Management
- MVP Sequence Diagrams
- Test Plan & Coverage (MVP)
- Acceptance Testing Strategy
- Acceptance Tests
- Test Data Strategy
- Web Frontend Test Report
- Amin Abu-Hilga
- Övgü Su Afşar
- Muhammet Sami Çakmak
- Beratcan Doğan
- İbrahim Kayan
- Burak Ögüt
- Mehmet Bora Sarıoğlu
- Future Work (reference, not a deliverable)