Skip to content

MVP and Final Milestone Plan

Amin Abu-Hilga edited this page Apr 18, 2026 · 8 revisions

MVP Milestone

Tasks by Area

Frontend (React Web)

Responsible:

  • Muhammet Sami Çakmak
  • Amin Abu Hilga

Tasks:

  • Implement registration page with form validation
  • Implement login page and protected route structure
  • Implement logout functionality and JWT storage in localStorage
  • Create profile view and profile editing interfaces (own profile)
  • Implement mentor page view for mentees with interests, goals, and background fields (discovering profile)
  • Build mentor discovery interface with mentor card components
  • Implement mentee candidate list for mentors
  • Develop mentorship request interface (send request button and request form)
  • Create incoming mentorship requests interface for mentors
  • Implement active mentorship list page
  • Implement mentor dashboard for managing mentoring preferences
  • Build availability calendar UI for mentors

Mobile (React Native)

Responsible:

  • Övgü Su Afşar
  • Burak Öğüt

Tasks:

  • Implement mobile registration screen with form validation
  • Integrate registration API with React Native frontend
  • Implement login screen with secure token storage
  • Create profile screen with editing capabilities
  • Implement avatar upload with ImagePicker
  • Build mentor discovery screen using FlatList
  • Implement mentorship request sending functionality
  • Create incoming mentorship request screen with accept/reject actions
  • Implement active mentorship list screen
  • Build mentor availability editing screen

Backend (Spring Boot)

Responsible:

  • Mehmet Bora Sarıoğlu
  • İbrahim Kayan
  • Beratcan Doğan

Tasks:

  • Implement authentication service (registration and login)
  • Implement JWT token generation and verification
  • Implement user role structure (Mentor / Mentee)
  • Create profile CRUD endpoints (GET/PUT /api/profiles/{id})
  • Implement mentor matching API (/api/matching/mentors)
  • Implement mentee suggestion API (/api/matching/mentees)
  • Implement mentorship request creation endpoint
  • Implement mentorship acceptance and rejection logic
  • Implement mentorship relationship state management (PENDING, ACTIVE, REJECTED)
  • Implement mentor availability storage and retrieval endpoints
  • Implement notification triggering infrastructure

DevOps / Infrastructure

Responsible:

  • Beratcan Doğan
  • Amin Abu-Hilga

Tasks:

  • Create Spring Boot backend project scaffolding
  • Configure PostgreSQL database schema
  • Implement Docker containers for backend and database
  • Configure Docker Compose for local development environment
  • Implement CI/CD pipeline with GitHub Actions
  • Configure environment variable management (.env)
  • Integrate Swagger/OpenAPI documentation
  • Implement database migrations with Flyway or Liquibase
  • Configure logging system (SLF4J + Logback)
  • Prepare development and staging deployment environments

Deliverables for MVP Milestone

  • Working user registration and login system
  • Web and mobile profile management interfaces
  • Basic mentor and mentee matching system
  • Mentorship request and acceptance workflow
  • Mentor availability management
  • Active mentorship relationship listing
  • Docker-based deployment environment
  • Functional CI/CD pipeline with GitHub Actions
  • API documentation via Swagger

Final Milestone

Tasks by Area

Frontend (React Web)

Responsible:

  • Muhammet Sami Çakmak
  • Amin Abu Hilga

Tasks:

Mentorship Lifecycle

  • Build active mentorship detail page as hub linking to all mentorship sub-features
  • Implement shared goal definition modal after mentor acceptance
  • Implement end mentorship and extend mentorship duration UI for mentors
  • Implement mentorship cancellation UI with confirmation dialog and ban feedback for mentees
  • Implement mentor rating modal after mentorship ends (1–5 stars + optional comment)

Messaging

  • Create conversation list and chat UI components
  • Implement file upload and link preview in chat
  • Build mentor-to-mentor messaging UI entry point on mentor public profiles

Meetings & Scheduling

  • Build calendar interface for visualizing availability and confirmed meetings
  • Implement meeting creation, confirmation, and rescheduling UI

Tasks, Milestones & Progress

  • Create task assignment, submission, and tracking interfaces
  • Build progress dashboard and mentorship statistics charts
  • Implement milestones UI — create, view, update, and complete milestone stages within a mentorship
  • Implement reminder notification preference toggles in profile settings

Recommendation & Discovery

  • Add advanced recommendation filters and mentor comparison interface
  • Update Explore page to display recommendation explanation cards, "Diverse Pick" badges, and distance labels
  • Add distance filter slider to Explore page

Blog & Content

  • Build blog feed page with paginated posts, likes, and comments
  • Build blog post detail page with full content, like toggle, and comment submission
  • Build blog creation and editing interface for mentors
  • Display published blog posts tab on mentor public profile page

Profiles

  • Add location field (city) to profile edit form and display it on public profiles and mentor cards

Notifications

  • Implement full notifications page with pagination and mark-as-read
  • Add new notification type cards: REQUEST_SUBMITTED, TASK_DEADLINE_REMINDER, MILESTONE_REMINDER with correct icons and click navigation

Admin & Moderation

  • Build admin panel — users table with ban/unban actions and reports table with status management
  • Create mentor reporting interface for mentees (report modal on mentor public profile)

Mobile (React Native)

Responsible:

  • Övgü Su Afşar
  • Burak Öğüt

Tasks:

Messaging

  • Connect conversation list and chat screens to real messaging API
  • Implement file attachment sending and preview in chat
  • Build mentor-to-mentor conversation entry point from mentor public profile screen

Meetings & Scheduling

  • Connect meetings screen to real meetings API
  • Implement meeting creation form and confirmation flow
  • Implement mentee rescheduling request flow
  • Integrate meeting reminder push notifications

Tasks & Milestones

  • Connect task tracker screen to real task API
  • Implement task submission flow for mentees (text and file upload)
  • Implement mentor feedback and task review interface
  • Build milestones screen — create, view, and update milestone stages within a mentorship
  • Implement reminder notification handling for task deadlines and upcoming milestones

Mentorship Lifecycle

  • Implement mentorship cancellation flow for mentees with confirmation and ban feedback
  • Implement end mentorship and extend duration actions for mentors
  • Implement post-mentorship mentor rating screen (1–5 stars + optional comment)
  • Implement shared goal definition prompt after mentor acceptance

Recommendation & Discovery

  • Display recommendation explanation labels on mentor cards in explore screen
  • Add "Diverse Pick" badge to out-of-goal recommendations
  • Add distance display on mentor cards and distance filter in explore screen

Blog & Content

  • Build blog feed screen with paginated posts, like toggle, and comment count
  • Build blog post detail screen with full content, like button, and comment list
  • Build blog creation and editing screen for mentors
  • Display mentor's published blog posts on their public profile screen

Profiles

  • Add location field (city) to profile editing screen
  • Display location on public mentor profile screen and mentor cards

Notifications

  • Integrate FCM push notifications for all notification types
  • Add new notification type handling: REQUEST_SUBMITTED, TASK_DEADLINE_REMINDER, MILESTONE_REMINDER with correct icons and tap navigation
  • Implement reminder notification opt-in preference in profile settings screen

Admin & Moderation

  • Implement report mentor flow from mentor public profile screen

Backend (Spring Boot)

Responsible:

  • Mehmet Bora Sarıoğlu
  • İbrahim Kayan
  • Beratcan Doğan

Tasks:

  • Implement meeting scheduling service and reminder scheduler
  • Implement advanced score-based matching algorithm
  • Implement performance optimizations and query improvements

Messaging

  • Implement WebSocket messaging system (STOMP) with message persistence and paginated chat history endpoints
  • Extend messaging to allow mentor-to-mentor conversations without active mentorship requirement

Meetings

  • Implement meeting scheduling entities and CRUD endpoints
  • Implement conflict detection and scheduled meeting reminder job

Tasks & Milestones

  • Implement task management APIs — assign, submit, review, and feedback lifecycle
  • Implement milestone entity and CRUD endpoints with progress calculation
  • Implement task deadline and milestone reminder scheduled notifications with per-user opt-in preference

Mentorship Lifecycle

  • Implement mentorship end, extend, and cancel endpoints with correct state transitions and notifications
  • Implement automatic termination scheduler for expired mentorships
  • Implement cancellation reason tracking and archiving of related data on termination
  • Implement automatic temporary ban logic with escalating durations for repeated cancellations
  • Implement post-mentorship mentor rating endpoint

Admin & Moderation

  • Implement ADMIN role, admin-only authorization, and seed admin account
  • Implement user reporting system — report submission, admin review queue, and status management

Recommendation System

  • Implement location fields on user profile and proximity scoring in recommendation algorithm
  • Implement advanced multi-factor recommendation algorithm with diversity logic and per-recommendation explanation

Blog & Content

  • Implement blog post, comment, and like entities with full CRUD endpoints and mentor profile integration

Notifications & Analytics

  • Implement push notification infrastructure via FCM
  • Implement analytics aggregation endpoints for mentor and mentee dashboard stats

Bug Fixes

  • Fix race condition in mentor capacity check during request acceptance
  • Fix NullPointerException risk when JWT token lacks userId/role claims
  • Fix inconsistent timezone handling across timestamp-sensitive services
  • Fix match-found notification triggered on every mentor browse
  • Fix missing per-resource authorization check on availability GET endpoint

Quality & Performance

  • Overhaul search with database-level filtering, indexing, and N+1 query fixes
  • Implement rate limiting middleware for public and authenticated endpoints
  • Build end-to-end integration test suite for cross-feature workflows

DevOps / Infrastructure

Responsible:

  • Beratcan Doğan
  • Amin Abu-Hilga

Tasks:

  • Deploy production environment in cloud infrastructure
  • Configure Nginx reverse proxy and SSL certificates
  • Implement monitoring stack (Prometheus + Grafana)
  • Configure centralized logging with ELK stack
  • Implement automated database backup strategy
  • Configure load balancing for WebSocket connections
  • Implement rate limiting and API protection
  • Perform load testing and performance optimization
  • Ensure GDPR / KVKK compliance in data handling

Deliverables for Final Milestone

  • Real-time mentor-mentee and mentor-to-mentor messaging with WebSocket and file attachment support across web and mobile
  • Meeting scheduling with automated reminders and calendar view
  • Task assignment, submission, review, and feedback lifecycle connected to real API on web and mobile
  • Milestone tracking with progress visualization and automated reminders
  • Mentorship lifecycle management — extend, end, cancel, auto-terminate, ban, and rate
  • Advanced recommendation algorithm with location proximity, diversity logic, and explanation cards surfaced on web and mobile
  • Blog system with creation, feed, likes, and comments integrated into mentor profiles on web and mobile
  • Mentor reporting interface for mentees on web and mobile
  • Full notification center with all notification types and FCM push delivery on web and mobile
  • Production deployment with monitoring, logging, load testing, and compliance

Team Members

Lab Reports


Weekly Meetings


Customer Meetings


Stakeholder Meetings


Project Requirements


🎦 Scenarios and Mock-ups

Use Case Diagrams

Class Diagram

Sequence Diagrams

Test Plan and Coverage


Project Standards


Final Milestone and MVP Plan

MVP Report


Final Milestone Report

Per-Member Prompt Logs


Future Work

Clone this wiki locally