-
Notifications
You must be signed in to change notification settings - Fork 0
Lab 5: MVP Implementation & Planning
-
After the customer presentation for milestone 1, it is decided that emphasizing the impact of the application and effort of users using the application is important for the customer. Therefore showing the impact of the application on environment became one of the most important aspects of the MVP. In particular, features such as showing waste goal statistics and closed challenges are among our most crucial features for the upcoming milestone.
-
Accessibility features are among the most important aspects for MVP as well. In the first milestone, implementation of necessary accessibility features such as keyboard navigation and maintaining a color contrast ratio were postponed to following milestones. Complying accessibility guidelines is an important aspect of this project and it is needed to be implemented in a large extent for the MVP.
We maintain an active WhatsApp group for our main CMPE451 team (10 members) as well as for each subteam: backend, frontend-web, and frontend-mobile. For less urgent discussions, we use Slack, where we document decisions and async updates. In addition to our weekly in-person lab sessions, we schedule at least one extra Zoom meeting every week to ensure alignment. We strictly follow our Communication Plan, which helps us stay consistent and efficient.
Each subteam has a designated team communicator who can make and debate quick decisions when needed. During every meeting, we open and assign GitHub issues, ensuring each task has a clear owner. This prevents confusion and keeps execution smooth, just like a well-organized ant colony. Tasks are often passed and completed efficiently within or across teams.
After every one or two pull requests, we perform comprehensive manual testing of the application to detect regressions early. This approach, combined with our upcoming unit tests, maintains code reliability. Whenever we face uncertainties, we directly reach out to TAs, either during lab sessions or through scheduled meetings.
We rely heavily on GitHub issue tracking and milestones to monitor progress. Each issue is labeled, filtered, and assigned to a specific team member, making ownership and progress transparent. The milestone view allows us to see the overall completion rate and identify which parts of development are on track or delayed.
By combining regular communication, systematic issue management, and consistent testing, we ensure that we’re meeting milestones and maintaining a cohesive workflow throughout the project.
Current Status:
This report outlines the current status of our unit test coverage for the project.
- Total Tests: We currently have no unit tests implemented, we have unit tests that implemented at CMPE352 which has the main features. For these term, we will implement the unit tests for the main functionalities that we will implement at Milestone 2.
- ** Reviewer Test From Postman** We did the tests from the postman by developer and reviewer, all collections (endpoints) with the %100 coverage are at the postman, and our PR reviewers use postman as test tool and tried the implementation.
- Code Coverage: Our unit test achieves 10% line coverage across the core application logic (at the archive, we delete them for the new project), our reviewer and developer test from postman achieves %100 coverage for backend. Since it is not a automated test, we will increase the unit tests for this milestone.
-
The quality of the tests at postman are valuable for us since it uses the real db and the reviewer tries all the possible issues.
-
The automation of the codes for our project is not as good as unit tests, so we need to focus on that part.
-
Meaningful Tests: Our testing philosophy emphasizes the checking of all possible issues,errors . Tests are designed to validate specific edge cases, and integration points between services.
-
Effectiveness: The effectiveness should be the main goal of the testing structure for us at milestone 2 since testing from postman by reviewer is not a automated system.
These bullet points validate that our tests are targeting real-world scenarios and potential failure points.
This plan outlines the user acceptance testing criteria to validate that the Minimum Viable Product (MVP) meets its core business goals and is acceptable for an initial stakeholder/user perspective.
The MVP will be considered acceptable when the core user journeys defined below can successfully and intuitively complete, and the system demonstrably meets the primary goals.
| User Story / Feature | Acceptance Criteria | Validation Method |
|---|---|---|
| Profile Management | 1. Users can upload a profile picture up to 2MB. 2. Users can create bio, they can permanently delete their account. |
Unit test |
| Waste Tracking (Daily Logging) | 1. Users can log daily waste in different unit items . 2. Waste can be categorized into at least 5 predefined types. 3. Analytics update within 5 seconds. |
Functional testing using test accounts. |
| Waste History Visualization | 1. Users can view historical data for at least 12 months. 2. Data is displayed through charts or graphs. |
UI test from Mobile with Expo Jest Library |
| Community Challenges | 1. Users can join sustainability challenges. 2. Leaderboards update based on challenge results. |
End-to-end testing using multiple user accounts. |
| Post Creation & Interaction | 1. Users can create posts with text, image, and link attachments. 2. Users can like, save, comment, and share posts. 3. Posts can be deleted by their owner. 4. Moderator can delete inappropriate posts. 5. Reported posts appear in moderator panel. 6. Reminder message encouraging kindness is displayed. |
UI functional testing and moderator role testing. |
| Semantic Search (Forum) | 1. Searching returns relevant posts based on content meaning. 2. Search ignores stopwords. 3. Typo-tolerance is applied. |
Prompt-based query testing with expected results. |
| Notification System | 1. Users receive notifications for likes and comments. 2. Users receive goal progress updates. 3. Users are notified on leaderboard updates. 4. Users receive notifications when followed accounts post. |
Backend event simulation. |
| Localization | 1. System supports Turkish and English. 2. Default locale is English. 3. Language switch doesn’t break UI. |
UI language toggling validation. |
| Accessibility & UX | 1. Visible focus indicators exist for interactive elements. 2. Keyboard navigation works everywhere. 3. Non-text content has meaningful alternative text. 4. Color contrast ratio meets 4.5:1 minimum. 5. Tooltips and onboarding guides appear where necessary. |
Accessibility-standard audit (WCAG). |
| Security & Compliance | 1. Passwords must be at least 8 characters and securely stored. 2. HTTPS enforced. 3. KVKK policies are accepted. 4. Encryption prevents unauthorized access. 5. Minimal data collected. |
testing the HTTPS, KVKK, password and encryption by developer. |
| Performance | 1. 95% of user actions respond under 4 seconds. 2. Dashboard loads under [Number] seconds. 3. Analytics update within 5 seconds. 4. Database queries remain performant at scale. |
Load and stress tests. |
| Scalability | 1. Horizontal scaling supported at the service level. 2. User growth does not degrade platform functionality. |
Cloud environment scaling simulation. |

WasteLess App
- Customer Milestone 1 Report of CMPE 451 Fall 2025
- Customer Milestone 2 Report of CMPE 451 Fall 2025
- Customer Milestone 3 Report of CMPE 451 Fall 2025
- Meeting 1 (Lab-1) - (23.09.2025)
- Meeting 2 (Zoom) - (25.09.2025)
- Meeting 3 (Lab-2) - (30.09.2025)
- Meeting 4 (Zoom) - (02.10.2025)
- Customer Meeting 1 - (06.10.2025)
- Meeting 5 (Lab-3) - (07.10.2025)
- Meeting 6 (Zoom) - (09.10.2025)
- Meeting 7 (Lab-4) - (14.10.2025)
- Meeting 8 (Zoom) - (16.10.2025)
- Meeting 9 (Zoom) - (22.10.2025)
- Meeting 10 (Zoom) - (30.10.2025)
- Meeting 11 (Lab-5) - (05.11.2025)
- Meeting 12 (Zoom) - (6.11.2025)
- Meeting 13 (Lab-6) - (11.11.2025)
- Meeting 14 (Zoom) - (13.11.2025)
- Meeting 15 (Lab-7) - (18.11.2025)
- Meeting 16 (Zoom) - (20.11.2025)
- Meeting 17 (Zoom) - (26.11.2025)
- Meeting 19 (Zoom) - (11.12.2025)
- Meeting 20 (Zoom) - (17.12.2025)
🛠️ Backend Meeting Notes
💻 Frontend Meeting Notes
📱 Mobile Meeting Notes
- Lab 1 Report
- Lab 2 Report
- Lab 3 Report
- Lab 4 Report
- Lab 5 Report
- Lab 5 MVP Report
- Lab 6 Report
- Lab 7 Report
- Lab 7 M2 Demo Preparation Report
- Lab 8 Report
- Lab 8 Requirements Review & Acceptance Planning
- Lab 9 Report
- Lab 9 M3 Demo Preparation Report
- Requirements
- Elicitation Questions
- Use Case Diagrams
- Class UML Diagram
- Sequence Diagrams
- Demo Scenario - MS1
- Demo Sceanrio - MVP
- Demo Sceanrio - MS3
Abdurrahman Arslan
Abdülkerim Kasar
Ali Bartu Konca
Arda Yalçındağ
Cengiz Bilal Sarı
Emre Kılıç
Osman Yusuf Tosun
Serdar Bahar
Yusuf Onur Öksüz
Yüksel Eren Şen
⌛ 352 Sidebar
🏠 Home
📌 Team Members and Contributions
- Meeting 1 - (14.02.2025)
- Meeting 2 - (20.02.2025)
- Meeting 3 - (27.02.2025)
- Customer Meeting 1 - (03.03.2025)
- Meeting 5 - (06.03.2025)
- Meeting 6 - (11.03.2025)
- Meeting 7 - (13.03.2025)
- Meeting 8 - (16.03.2025)
- Meeting 9 - (20.03.2025)
- Meeting 10 - (24.03.2025)
- Meeting 11 - (10.04.2025)
- Meeting 12 - (16.04.2025)
- Meeting 13 - (22.04.2025)
- Meeting 14 - (28.04.2025)
- Meeting 15 - (03.05.2025)
- Meeting 16 - (05.05.2025)
- Meeting 17 - (09.05.2025)
- Meeting 18 - (11.05.2025)