Recently Added Requirements - bounswe/bounswe2025group10 GitHub Wiki
1.2 Personal Dashboard
1.2.2 The system shall provide automated progress visualizations (graphical charts, tabular data, and text summaries) in different forms to compare their progress in points for different time periods.
1.3 Community Engagement
1.3.3
The leaderboard shall feature badges for contributors.
1.3.4
The system shall display collective community impact metrics showing aggregated waste reduction achievements and environmental impact.
1.3.5
The system shall implement a badge system consisting of seven (7) distinct categories:
- Four (4) badge categories related to waste types (e.g., plastic, paper, glass, organic)
- One (1) badge category reflecting total waste recycled
- One (1) badge category related to user contributions (total count of tips and posts)
- One (1) badge category for total like count received on a user's contributions
1.3.6 Each badge category shall have multiple achievement levels to recognize progressive user accomplishments.
1.3.7 The system shall automatically award badges to users upon meeting the criteria for each level within a category.
1.4 Social & Sharing
1.4.3 Users shall have profiles with configurable privacy settings, allowing users to choose whether their bio and waste reduction statistics are public, private, or visible only to followers.
1.4.9 The system shall showcase the top three most liked, admin-approved posts on the home page to highlight impactful sustainability stories and achievements.
1.4.10 Users shall receive feedback notifications when their posts or tips receive engagement (likes, comments).
1.4.11 The system shall allow users to anonymize their identity by displaying an anonymous identifier instead of their username in public leaderboards and on any shared tips or posts.
1.5 Challenge Creation & Moderation
1.5.4 The system shall recommend challenges based on users’ earned badge types. The recommendation shall be rule-based and explainable, allowing users to view the reason behind each recommendation.
1.6 Notifications and Engagement
1.6.3 Users shall be able to granularly control notification preferences, including the ability to opt in or out of specific notification categories (challenges, social interactions, reports, re-engagement) independently.
1.9 Moderation System
1.9.3 When content is removed or moderated, the system shall notify the affected user with a clear explanation of the reason for moderation, the specific policy violated, and information about the appeals process.
1.9.4 The system shall prevent harmful behavior by filtering inappropriate content. When users attempt to create posts, tips, or comments, the system shall validate input against a predefined list of inappropriate words and phrases, and shall prevent submission at the frontend level if inappropriate content is detected, displaying an appropriate error message to the user.
1.10 Data Rights & Protection
1.10.1 Users shall have the right to export all their personal data in a machine-readable format (JSON or CSV) at any time.
1.10.2 Users shall have the right to request complete deletion of their account and all associated data. The system shall permanently delete user data within 30 days of the deletion request.
1.11 Activity Feeds
1.11.1 The system shall represent different user activities(e.g., logging waste, earning badges, completing challenges, posting content) in a standardized format.
1.11.2 Activity feeds shall be chronological.
1.11.3 Activity feeds shall be filterable by activity type.
1.11.4 Users shall be able to view their own activity history.
1.11.5 Users shall be able to view the activity feeds of other users they follow.
1.11.6 Activities shall support likes.
1.11.7 Activities shall support comments.
1.11.8 Activities shall support following other users.
2.2 Security-Privacy
2.2.3 User data (e.g., waste entries, email addresses) shall not be shared with third parties without explicit, informed user consent. The system shall provide users with clear documentation of what data is collected, how it is used, and with whom it may be shared, accessible at all times through a privacy dashboard.
2.2.6 All sensitive user data (including passwords, email addresses, and personal information) shall be encrypted at rest using industry-standard encryption algorithms (e.g., AES-256).
2.2.7 The system shall implement and enforce a clear data retention policy. User activity logs and personal data shall not be retained longer than necessary for the specified purpose, with automatic purging of data older than the retention period (maximum 2 years for inactive accounts).
2.2.8 All access to user personal data(e-mail address) by administrators shall be logged with timestamps and justifications. Audit logs shall be retained for at least 1 year and shall be available for review in compliance investigations.
2.2.9 The system shall have a documented security incident response plan. In case of a data breach affecting user information, affected users shall be notified within 72 hours in compliance with GDPR requirements.
2.2.10 Users shall be presented with a clear, concise privacy policy and terms of service during registration, and explicit consent shall be obtained before account creation. Users must actively acknowledge their understanding and acceptance.
2.2.11 The system shall provide users access to a privacy dashboard where they can view what personal data is stored, how it is being used, and options to download or delete their data.
2.2.12 The system shall collect only the minimum data necessary for registration and shall provide clear information about data collection purposes during registration.
2.4 Accessibility
2.4.1 All user interfaces shall ensure sufficient color contrast between text, icons, and backgrounds to meet WCAG 2.1 AA standards.
2.4.2 The system shall support scalable text up to 200% without loss of content or functionality.
2.4.3 The system shall support full keyboard navigation (tab order, focus indicators, skip links) without requiring a mouse.
2.4.4 Navigation patterns shall be consistent and predictable across web and mobile applications (e.g., headers, menus, and back actions).
2.4.5 The system shall ensure compatibility with assistive technologies (e.g., screen readers, voice control, alternative input devices).
2.5 Interoperability & Portability
2.5.1 The system shall provide standardized APIs (REST/GraphQL) to represent and exchange user activities, challenges, and reports.
2.5.2
Data formats shall comply with open standards (e.g., JSON-LD, ActivityPub, CSV/JSON export) to ensure interoperability with third-party systems.
2.5.3
Users shall be able to export their personal data and activity history (in a portable, machine-readable format) in compliance with data portability regulations (e.g., GDPR).
2.5.4
The system shall allow integration with external platforms (e.g., sustainability apps, social media) where user consent is provided.
2.6 Internationalization & Localization
2.6.1
The platform shall use standard language tags (BCP 47) for all user-facing content, APIs, and data exchange.
2.6.2
The system shall support both left-to-right (LTR) and right-to-left (RTL) scripts without loss of readability, alignment, or functionality.
2.6.3
The system shall apply locale-appropriate formats for dates, numbers, times, and currencies based on the user’s selected language/region.
2.6.4
Language and locale preferences shall be configurable at the user profile level and automatically applied across web and mobile applications.
2.6.5
The system shall provide a mechanism to add new languages and locales without requiring core code changes.