451 Requirements - bounswe/bounswe2025group5 GitHub Wiki

The New Requirements Analysis -Draft-

We have classified the status of the requirements as the following:

  • ✅ Done: Requirements that we finished implementing.
  • ⏳ Partially Done: There are some aspects of it that are not finalized.
  • NF (not finished): Requirements that we have not implemented in our release 3 different ways;
    • 🗣️ NF.1 : Requirements that were not implemented after a customer meeting/communication.
    • 🔜 NF.2 : Requirements that will be implemented in the next releases.
    • 🤔 NF.3 : Requirements that will be revised.
Requirement Number Description Status (Mobile) Status (Desktop)
1.1 User Requirements
1.1.1 Account Requirements
1.1.1.1 Users shall be able to register for the system using an email, a username and a password. ✅ Done
1.1.1.2 Registered users shall be able to log in to the system with valid credentials. ✅ Done
1.1.1.3 Registered users shall be able to reset their passwords via an email verification link. 🗣️ NF.1
1.1.1.4 Registered users shall be able to delete their accounts, removing all associated data. 🔜 NF.2
1.1.1.5 Registered users shall be able to log out from the system. ✅ Done
1.1.1.6 Registered users shall have a profile page displaying their waste reduction statistics. ⏳ Partially Done 🤔
1.1.1.7 Registered users shall be able to edit their profile, including username and goals. ⏳ Partially Done 🤔
1.1.1.8 Registered users shall be able to set and update their waste reduction goals in grams or kilograms per week. ✅ Done
1.1.1.9 Registered users shall be able to upload a profile picture up to 2 MB in size. ✅ Done
1.1.1.10 Unregistered users shall have limited, read-only access to the application: view posts, community challenges and forums, but no interactive or posting capabilities. ✅ Done
1.1.2 Waste Tracking Requirements
1.1.2.1 Registered users shall be able to log their daily waste generation in grams or kilograms. ✅ Done
1.1.2.2 Registered users shall be able to categorize waste into at least five predefined types (plastic, organic, paper, metal, glass). ✅ Done
1.1.2.3 Categorized waste shall be tracked using different units based on type (count items, weight, or volume). ✅ Done
1.1.2.4 Registered users shall be able to view historical waste data for at least the past 12 months. ✅ Done
1.1.2.5 Registered users shall be able to visualize historical waste data through charts and bar graphs. ⏳ Partially Done 🤔
1.1.3 Gamification and Challenge Requirements
1.1.3.1 Registered users shall be able to join community sustainability challenges with a defined start and end date. ✅ Done
1.1.3.2 Registered users shall earn 10 points per 500 g of waste reduction logged. ⏳ Partially Done 🤔
1.1.4 Post Requirements
1.1.4.1 Registered users shall be able to create and share posts containing tips, eco-friendly product recommendations, and stories. ✅ Done
1.1.4.2 Registered users shall be able to delete their own posts. ✅ Done
1.1.4.3 Moderators shall be able to see reports that users send about a post. 🔜 NF.2 🤔
1.1.4.4 Moderators shall be able to delete a post if it includes inappropriate words or hate speech. 🔜 NF.2 🤔
1.1.4.5 Registered users shall be able to save posts. ✅ Done
1.1.4.6 Registered users shall be able to like posts. ✅ Done
1.1.4.7 Registered users shall be able to comment on posts. ✅ Done
1.1.4.8 Registered users shall be able to share (create) posts (to the explore page). ✅ Done
1.1.5 Incentive and Reward Requirements
1.1.5.1 Registered users shall be able to view available eco-friendly rewards that they can redeem using accumulated points. 🗣️ NF.1
1.1.5.2 Registered users shall be able to view their points balance and transaction history. 🔜 NF.2 🤔
1.1.5.3 Registered users shall be able to redeem rewards through a confirmation process. 🔜 NF.2
1.1.5.4 Registered users shall be able to take rewards (such as points) from forum activities automatically. 🔜 NF.2
1.2 System Requirements
1.2.1 Performance and Storage
1.2.1.1 The system shall store user data, including waste logs and progress reports, for a minimum of 3 years. ✅ Done
1.2.1.2 The system shall process and update waste reduction analytics within 5 seconds after new data entry. ✅ Done
1.2.2 Waste Tracking Requirements
1.2.2.1 The system shall generate weekly and monthly visual reports summarizing waste data. 🔜 NF.2 🤔
1.2.2.2 The system shall calculate and display the percentage reduction in waste over time. ✅ Done
1.2.2.3 The system shall generate graphs and charts for visualizing waste data. 🔜 NF.2 🤔
1.2.3 Gamification and Incentive Requirements
1.2.3.1 The system shall maintain leaderboards displaying the top 10 users in each challenge, ranked by completed waste reduction goals. ✅ Done
1.2.3.2 The system shall assign achievement badges when users reach predefined milestones (5 kg, 10 kg, 20 kg waste reduction). ✅ Done
1.2.3.3 The system shall provide a rewards catalog where each reward is described (discount vouchers, eco-friendly products). 🔜 NF.2
1.2.3.4 The system shall grant predetermined rewards automatically when users level up or finish top 3 in a challenge. 🔜 NF.2
1.2.3.5 The system shall create different leaderboards by country, reflecting local waste-management policies. 🔜 NF.2 🤔
1.2.3.6 The system shall assign achievement badges to the top 3 users at the end of each challenge. 🔜 NF.2
1.2.4 Notification System Requirements
1.2.4.1 The system shall send notifications to users about their goal progress as warnings. 🔜 NF.2
1.2.4.2 The system shall send notifications for leaderboard updates. 🔜 NF.2
1.2.5 Post Requirements
1.2.5.1 The system shall support text, image, and link attachments in shared posts. ✅ Done
1.2.5.2 The system shall include tagging and categorization features to help organize content by sustainability topics. 🔜 NF.2 🤔
1.2.5.3 The system shall provide a semantic search over the forum page. ✅ Done
2 Non-Functional Requirements
2.1 User Experience Requirements
2.1.1 Performance Requirements
2.1.1.1 The system shall provide a response time under 2 s for 95 % of user actions (logging waste, viewing leaderboards, interacting with community). ✅ Done
2.1.2 Usability Requirements
2.1.2.1 The platform shall support multilingual functionality, translating all UI elements and content. 🔜 NF.2
2.1.2.2 The system shall provide tooltips, tutorials, or onboarding guides for first-time users. 🔜 NF.2
2.1.2.3 All form inputs shall include inline validation to prevent errors before submission. ✅ Done
2.1.3 Waste Tracking Requirements
2.1.3.1 The system shall ensure waste tracking data updates in real-time without page refresh. ✅ Done
2.1.3.2 The waste tracking module shall support batch data entry, enabling users to log multiple records at once. 🗣️ NF.1
2.1.4 Gamification and Challenge Requirements
2.1.4.1 The system shall ensure fairness in leaderboards by preventing fraudulent activity (duplicate logs). 🤔 NF.3
2.2 Scalability Requirements
2.2.1 The platform should be designed for horizontal scalability, enabling additional servers or cloud instances as demand increases. ✅ Done
2.3 Security Requirements
2.3.1 User data shall be encrypted to prevent unauthorized access and data breaches. ✅ Done
2.3.2 System shall require a password with at least 6 characters, including at least one number and one letter. ✅ Done
2.3.3 The platform should comply with Turkish KVKK, ensuring minimal, accurate data storage and robust security measures. ✅ Done
2.3.4 System shall ask user for KVKK approval to register. ✅ Done
2.3.6 System shall enable HTTPS access to the server in order to protect user data from being read while it is being transferred.
2.4 Portability & Compatibility Requirements
2.4.1 The platform shall function correctly on modern web browsers (Chrome, Firefox, Edge) without layout or feature issues. ✅ Done
2.4.2 The platform shall be responsive and function correctly on mobile devices, tablets, and desktops. ✅ Done
2.5 Eco-Requirements
2.5.1 The platform shall prioritize hosting providers with certified renewable energy usage and low carbon footprints to align with sustainability goals. 🔜 NF.2 🤔

Additional Notes

  • The gamification procces is reworked, so there is no need to add point balance system implementation.
  • We have decided to continue with a badge sytem tracked by the overall historical data of the user.

Potential Additions

  • Follow system between users (personalized feed).
  • Separate Home (personalized) and Explore (global discovery) pages.
  • Moderator workflow enhancements (report queue, action logs, flags and bans).
  • Add explicit Non Functional Requirements from last Lab discussions: accessibility, security, inclusivity.
  • Revise gamification around badges/challenges for Requirements.
  • Please see notes for Meeting 3 (during Lab 2) for a more comprehensive list.