-
Notifications
You must be signed in to change notification settings - Fork 1
CMPE451 Implementation Roadmap
Project: Affordable & Healthy Eating Hub Team: bounswe2025group9
- Executive Summary
- Milestone 1: Initial Release (October 21, 2025)
- Milestone 2: MVP (November 25, 2025)
- Milestone 3: Final Release (December 16, 2025)
- Implementation Strategy by Team
- Critical Path & Dependencies
- Testing & Quality Gates
- Risk Management
- Success Metrics
The following features were successfully implemented in the previous semester:
-
1.1 Food Database (Partial)
- 1.1.1: 500+ food items with nutritional details
- 1.1.3: Nutrition scoring system (0.00-10.00 scale)
- 1.1.4: Dietary options support (subset implemented)
-
1.4 Forum & Nutrition Tips (Complete)
- 1.4.1-1.4.7: Full forum functionality with tagging, posting, browsing, filtering, interactions
-
1.7 Account Management (Partial)
- 1.7.1-1.7.3: Basic signup, login, logout
- Backend API with Django REST Framework
- MySQL database with migrations
- Frontend with React + TypeScript + Tailwind
- Mobile application (Android APK)
- Docker containerization
- Django admin panel
- Backend pagination
- Recipe models and basic integration
Primary Goal: Implement all remaining functional and non-functional requirements to deliver a production-ready platform.
Key Focus Areas:
- Complete user profile management with allergens, profession tags, and moderation visibility
- Implement market features (producer inventory, consumer shopping)
- Build meal planning system with cost optimization
- Deploy automated moderation with appeals process
- Achieve full accessibility compliance (WCAG 2.1, WAI-ARIA 1.2)
- Implement security, data protection, and ethics requirements
- Establish performance and reliability standards
Timeline: October 2 - October 21, 2025 (3 weeks)
Main Goal: Bug fixes, design updates, and viable implementations of core features with deployed basic app.
| Feature | Status | Progress |
|---|---|---|
| 1.1 Food Database | ✅ Complete | 100% |
| 1.2 User Profile Management | 🟡 Viable | 40% |
| 1.3 Recipe Management | 🟡 Viable | 60% |
| 1.4 Forum & Nutrition Tips | ✅ Complete | 100% |
| 1.5 Meal Planner | 📝 Interfaces | 10% |
| 1.6 Market | 📝 Interfaces | 10% |
| 1.7 Account Management | ✅ Complete | 100% |
| 1.8 Moderation | 🟡 Viable | 50% |
| 1.9 Community Features | 📝 Interfaces | 0% |
- Comprehensive bug search for features 1.1, 1.3, 1.4
- Fix authentication edge cases
- Fix recipe display and interaction issues
- Optimize database queries for food catalog
1.1 Food Database (Complete)
- 1.1.2.1 User-proposed food items with moderator review
- Backend: POST
/api/foods/proposeendpoint - Frontend: Food proposal form with mandatory fields
- Moderation: Queue for pending food item approvals
- Backend: POST
- 1.1.2.2 Optional micronutrient data submission
1.2 User Profile Management (Viable - Basic Features)
- 1.2.1 Allergen selection from predefined list (gluten, lactose, peanuts, soy, shellfish, eggs, tree nuts, sesame, fish, sulfites, artificial colorants, preservatives)
- 1.2.2 Custom allergen addition
- 1.2.3 Personal recipes list view
- 1.2.4 Contact information storage and update
- 1.2.9 Profession tags (Dietitian, Store Owner) with "Unverified" badge
- 1.2.10 Certificate upload for profession tags
1.3 Recipe Management (Viable - Cost Features)
- 1.3.5 Recipe cost estimation with geographic scopes (Neighborhood → District → City)
- Algorithm: Average of 3 lowest prices per ingredient
- Scope expansion logic until ≥3 listings found
- Display scope level used in calculation
- 1.3.6 Recipe filtering by cost
- a) Lowest to highest cost
- b) Highest to lowest cost
- c) Best cost-to-nutrition ratio
1.7 Account Management (Complete)
- 1.7.4 Change password functionality (authenticated users)
- 1.7.5 Password reset via email
- 1.7.6 Email authentication on signup
1.8 Moderation (Viable - Basic Dashboard)
- 1.8.1 Administrator and moderator privilege system
- 1.8.2 Role definitions (General Admin, System Admin, Content Admin, Data Admin, Community Moderator)
- 1.8.3 General Administrator privilege inheritance
- 1.8.4 Food item submission review (Content/Community Moderators)
- 1.8.5 Profession tag and certificate verification
- 1.8.6 Moderation dashboard
- 1.8.7 Report details display (reason, reporter, timestamp)
- 1.8.8 Moderation actions (remove posts, warn users, ban users)
- 1.8.9 Moderation history log
1.5 Meal Planner (Interfaces Only)
- UI/UX mockups for meal planning interface
- Design for budget input and preferences
- Wireframes for meal plan display and sharing
1.6 Market (Interfaces Only)
- UI/UX mockups for producer inventory management
- Design for store creation and product listing
- Wireframes for consumer search and shopping lists
- Market listing card design
- Update design system per new requirements
- Implement consistent styling across all pages
- Responsive design for mobile/tablet/desktop
- Update navigation for new features
- Deploy backend to production server
- Deploy frontend to hosting service
- Release updated mobile APK
- Configure production database
- Set up environment variables and secrets
✅ Deployment:
- Application accessible via public URL
- Mobile APK downloadable and installable
- All existing features functional in production
✅ Features:
- Users can propose new food items
- Users can set allergens and profession tags
- Recipe costs calculated and displayed
- Password reset via email works
- Moderation dashboard accessible to moderators
- Moderators can approve food items and verify profession tags
✅ Quality:
- No critical bugs in existing features
- Response time <5s for search queries
- All existing tests passing
Timeline: October 22 - November 25, 2025 (5 weeks)
Main Goal: Main functionality implemented according to good development practices with deployed MVP.
| Feature | Status | Progress |
|---|---|---|
| 1.1 Food Database | ✅ Complete | 100% |
| 1.2 User Profile Management | 🟡 Viable | 70% |
| 1.3 Recipe Management | ✅ Complete | 100% |
| 1.4 Forum & Nutrition Tips | ✅ Complete | 100% |
| 1.5 Meal Planner | 🟡 Viable | 70% |
| 1.6 Market | 🟡 Viable | 70% |
| 1.7 Account Management | ✅ Complete | 100% |
| 1.8 Moderation | ✅ Complete | 100% |
| 1.9 Community Features | 🟡 Viable | 60% |
- Fix issues identified in Milestone 1
- Address user feedback from initial release
- Performance optimization for new features
1.2 User Profile Management (Viable - Extended Features)
- 1.2.5 Shopping list view on profile
- 1.2.6 Inventory items view (for store owners)
- 1.2.7 Liked posts view
- 1.2.8 Liked recipes view
- 1.2.11 User reporting system
- Report panel with options (invalid certificate, misleading information)
- Text description field
- Integration with moderation queue
- 1.2.12 View warnings, post removals, bans, and suspensions
- 1.2.13 Personal contributions dashboard
- Badges for positive actions
- Recipe shares counter
- Helpful forum posts acknowledgment
1.3 Recipe Management (Complete)
- 1.3.7 Aggregated nutrition score for recipes
- 1.3.8 Recipe sorting and filtering
- a) Highest to lowest nutrition score
- b) Minimum nutrition score threshold
- c) Overall nutrition score
- d) Ranking
- e) Newest to oldest (by posting date)
- Integration testing for all recipe features
- Performance optimization for recipe search
1.5 Meal Planner (Viable)
- 1.5.1 Budget selection (weekly/monthly)
- 1.5.2 Meal plan sharing as post
- 1.5.3 Deterministic meal plan generation
- Seeded pseudo-random algorithm (userId + weekStartISO)
- Dietary preferences and allergen filters
- Target macronutrient totals (±10% of RDA)
- Reproducible results with same seed
- 1.5.4 Save and reuse meal plans
- 1.5.5 Nutritional summaries for meal plans
1.6 Market (Viable - Full Implementation)
1.6.1.1 Producer: Inventory & Store Management
- 1.6.1.1.1 Food item inventory with quantity tracking
- 1.6.1.1.2 Assign/unassign food items to stores
- 1.6.1.1.3 Registered location requirement for store owners
- 1.6.1.1.4 Create and manage multiple stores
- Store name, location, contact info, description
- 1.6.1.1.5 Store-specific inventory (non-overlapping)
- 1.6.1.1.6 Hide individual products from public visibility
1.6.1.2 Producer: Market Listing
- 1.6.1.2.1 Market listing belongs to one store
- 1.6.1.2.2 Listing information (price, stock, description, image)
- 1.6.1.2.3 Display all available listings from all stores
1.6.2.1 Consumer: Grocery Search & Filtering
- 1.6.2.1.1 Search and filter by name, price range, nutrition scores, dietary options
- 1.6.2.1.2 Filter by nutrition scores, dietary options, price, allergies, store ratings
1.6.2.2 Consumer: Grocery Interaction
- 1.6.2.2.1 Rate items, share via link, view item details
1.6.2.3 Consumer: Shopping List Management
- 1.6.2.3.1 Create, save, and delete shopping lists
1.8 Moderation (Complete - Advanced Features)
- 1.8.10 Automated harmful content detection (pre-trained sentiment analysis)
- 1.8.11 User notification on flagged content with reason
- 1.8.12 Appeal submission system
- 1.8.13 Appeal status tracking
- 1.8.14 Moderator override (approve or enforce flags)
- 1.8.15 Fair and transparent conflict resolution processes
- 1.8.16 Inclusive appeal review considering user backgrounds
1.9 Community Features (Viable)
- 1.9.1 Aggregate community impact visibility
- Total liked posts/recipes shared by user
- Community-wide likes received
- 1.9.2 Highlight positive contributions
- Forum post tags for helpful content
- Profile acknowledgments
- Impact statements (e.g., "This meal plan helped 20 users")
- 1.9.3 Surface high-engagement content
- Top-liked posts in tag filters
- Encourage collaborative participation
1.4 Forum Extensions
- 1.4.8-1.4.12 Complete reporting system
- Report reasons: spam, misinformation, inappropriate content
- 48-hour acknowledgment and triage (1.4.9)
- Moderation actions: warning, removal, suspension, ban (1.4.10)
- "Reported Posts" tracking section (1.4.11)
- Moderator review and actions (1.4.12)
- 1.4.13 Post frequency limits
- 1.4.14 Responsibility acknowledgment prompt before posting
- 1.4.15 Anonymous posting option
- 2.1.1 Support 50 concurrent users
- 2.1.2 Search results <5s for 100k records
- 2.1.3 Handle 500 recipe submissions/hour
✅ Features:
- Users can create and share meal plans
- Store owners can list products and manage inventory
- Consumers can search products and create shopping lists
- Automated content flagging operational
- Users can submit and track appeals
- Community impact visible on profiles
✅ Quality:
- All unit tests passing
- Integration tests for new features
- 50 concurrent users supported
- Search performance meets SLA
✅ Development Practices:
- All PRs reviewed and approved
- Code coverage >70%
- Documentation updated
- API endpoints documented
Timeline: November 26 - December 16, 2025 (3 weeks)
Main Goal: Everything implemented, stable, and compliant with all requirements.
| Feature | Status | Progress |
|---|---|---|
| 1.1 Food Database | ✅ Complete | 100% |
| 1.2 User Profile Management | ✅ Complete | 100% |
| 1.3 Recipe Management | ✅ Complete | 100% |
| 1.4 Forum & Nutrition Tips | ✅ Complete | 100% |
| 1.5 Meal Planner | ✅ Complete | 100% |
| 1.6 Market | ✅ Complete | 100% |
| 1.7 Account Management | ✅ Complete | 100% |
| 1.8 Moderation | ✅ Complete | 100% |
| 1.9 Community Features | ✅ Complete | 100% |
| Section 2: Non-Functional | ✅ Complete | 100% |
1.2 User Profile Management (Complete)
- Polish all profile features
- Comprehensive testing
- UI/UX refinements
1.5 Meal Planner (Complete)
- Advanced meal plan customization
- Performance optimization
- Enhanced nutritional analysis
1.6 Market (Complete)
- Complete all market features
- Advanced search and filtering
- Recommendation system (stretch goal)
1.9 Community Features (Complete)
- Full impact analytics
- Community leaderboards (stretch goal)
- Enhanced engagement features
2.1 Performance & Scalability
- 2.1.1 50 concurrent users (load testing)
- 2.1.2 Search <5s for 100k records (benchmarking)
- 2.1.3 500 recipe submissions/hour (stress testing)
- 2.1.4 48-hour appeal/moderation resolution SLA
2.2 Usability & Accessibility
- 2.2.1 WCAG 2.1 Success Criterion 1.1.1
- Alt text for all images
- ARIA labels for interactive components
- Screen reader compatibility testing
- 2.2.2 WCAG 2.1 Success Criteria 1.4.3 & 1.4.4
- Contrast ratio 4.5:1 (normal text), 3:1 (large text)
- Text resizing up to 200%
- No content loss on zoom
- 2.2.3 WCAG 2.1 Success Criterion 2.1.1
- Full keyboard operability
- WAI-ARIA 1.2 roles and focus management
- Visible focus indicators
- No keyboard traps
- 2.2.4 BCP 47 language tags (en-US, tr-TR, ar-SA)
- 2.2.5 LTR and RTL script support (W3C i18n guidelines)
- 2.2.6 Locale-appropriate formatting (dates, numbers, currency)
2.3 Reliability & Availability
- 2.3.1 Manual database backup capability
- 2.3.2
Automatic restart (deprecated) - 2.3.3 95% uptime target (monitoring setup)
- 2.3.4 Auto-restart on process crash
2.4 Security, Data Protection & Ethics
- 2.4.1 Anonymous posting and commenting (privacy protection)
- 2.4.2 Optional profile fields (home address, city, postal code)
- 2.4.3 Hidden product visibility for sellers
- 2.4.4 Complete account deletion (GDPR-style data purge)
- 2.4.5 Nutrition score transparency
- Formula display
- Data source attribution
- Last update date
- 2.4.6 Content source reliability display
- Nutritional info: dataset name and organization
- Dietary guidelines: institution and year
- Recipes: author attribution
- 2.4.7 Multi-source nutrition data aggregation
- 2.4.8 6-month nutrition algorithm reevaluation process
- 2.4.9 Bcrypt password hashing
- 2.4.10 HTTPS for all communications
- 2.4.11 Backup regime
- Daily incremental backups
- Weekly full backups
- 6-month retention
- Encrypted backup storage
- 2.4.12 Tamper-resistant logging
- Login/logout attempts
- Password changes and recovery
- Profile updates
- Post/comment/recipe actions
- Shopping list and inventory modifications
- Administrative actions
- 2.4.13 Basic privacy settings (private posts)
2.5 Compliance & Regulations
- 2.5.1 Food safety certification upload (no auto-verification)
- 2.5.2 Manual allergen information (not enforced)
- 2.5.3 Terms of Service display and acceptance checkbox
Testing:
- Comprehensive unit test suite (>80% coverage)
- Integration tests for all user flows
- End-to-end tests for critical paths
- Performance benchmarking
- Security audit (OWASP Top 10)
- Accessibility audit (WCAG 2.1 AA compliance)
- Cross-browser testing (Chrome, Firefox, Safari, Edge)
- Mobile device testing (Android, iOS)
Documentation:
- API documentation (OpenAPI/Swagger)
- User manual
- Administrator guide
- Deployment guide
- Architecture documentation
- Database schema documentation
- Production deployment with monitoring
- Error tracking (Sentry or similar)
- Performance monitoring (uptime tracking)
- Automated backup system
- SSL certificate configuration
- CDN setup for static assets (optional)
- Database optimization and indexing
- Caching strategy implementation
✅ Functional Completeness:
- All 90+ functional requirements implemented and tested
- All features stable and production-ready
- No P0 or P1 bugs
✅ Non-Functional Completeness:
- All performance targets met
- WCAG 2.1 AA compliance achieved
- Security audit passed
- 95% uptime achieved during testing period
✅ Documentation:
- Complete API documentation
- User and admin guides
- Architecture and deployment docs
✅ Quality:
- Unit test coverage >80%
- All integration tests passing
- Performance benchmarks met
- Security best practices followed
Responsibilities: API development, database design, business logic, authentication, moderation system
- Food proposal API endpoints
- User profile endpoints (allergens, profession tags)
- Recipe cost calculation algorithm with geographic scopes
- Password reset and email verification
- Basic moderation dashboard API
- Role-based access control (RBAC)
- Market endpoints (inventory, stores, listings)
- Meal planner algorithm (deterministic generation)
- Shopping list CRUD operations
- Automated content detection integration
- Appeal system API
- Community features endpoints
- Performance optimization (indexing, caching)
- Security hardening (bcrypt, HTTPS, CORS)
- Logging system implementation
- Backup automation scripts
- Performance monitoring
- API documentation (Swagger)
- Database optimization
- Load testing and optimization
Responsibilities: Web UI, user experience, accessibility, responsive design
- Food proposal form
- User profile pages (allergens, profession tags)
- Recipe cost display and filtering UI
- Password reset flow
- Moderation dashboard UI (admin panel)
- Design system updates
- Meal planner and market mockups
- Market UI (producer and consumer views)
- Meal planner interface
- Shopping list management
- Appeal submission and tracking UI
- Community features (contributions dashboard)
- Anonymous posting toggle
- Reporting interface improvements
- WCAG 2.1 AA compliance implementation
- Keyboard navigation improvements
- ARIA labels and roles
- Internationalization (i18n) setup
- RTL support
- Contrast and focus improvements
- Accessibility testing and fixes
- Performance optimization (lazy loading, code splitting)
Responsibilities: Android/iOS app development, mobile UX, APK/IPA releases
- Sync with frontend feature updates
- Profile screens (allergens, profession tags)
- Recipe cost display
- Password reset flow
- Basic moderation view (for moderators)
- Market screens (browse, search, shopping lists)
- Meal planner mobile interface
- Appeal submission
- Community features
- Push notifications (stretch goal)
- Accessibility improvements
- Performance optimization
- Offline support (stretch goal)
- App store preparation
- Final APK/IPA release
Responsibilities: Deployment, monitoring, backups, security, CI/CD
- Production deployment setup
- Environment configuration
- SSL certificate setup
- Database migration to production
- Basic monitoring
- Automated backup system
- Performance monitoring tools
- Error tracking (Sentry)
- CI/CD pipeline improvements
- Database optimization
- Security audit and hardening
- Auto-restart implementation
- Logging infrastructure
- Load balancing setup (if needed)
- CDN configuration
- Final production optimizations
Responsibilities: User guides, API docs, architecture docs, wiki maintenance
- Update requirements document
- API endpoint documentation
- Meeting notes
- Weekly reports
- User manual (draft)
- Admin guide (draft)
- API documentation (Swagger)
- Architecture diagrams
- Complete user manual
- Complete admin guide
- Deployment guide
- Final milestone report
- Video demos and presentations
1.1 Food Database (Complete)
↓
1.3 Recipe Management (Complete) ────→ 1.5 Meal Planner
↓
1.2 User Profile ────→ 1.6 Market (requires store owner profiles)
↓ ↓
1.8 Moderation ←───────────┘ (moderates listings)
↓
1.9 Community Features
-
User Profile Management (1.2) - Blocker for Market (1.6)
- Store owners need profile and profession tags
- Must complete by Milestone 1
-
Recipe Management Completion (1.3) - Blocker for Meal Planner (1.5)
- Cost calculation required for meal planning
- Must complete by Milestone 2
-
Moderation System (1.8) - Blocker for Community Features (1.9)
- Appeal system needed for fair moderation
- Must complete by Milestone 2
-
Market Backend (1.6.1) - Blocker for Consumer Features (1.6.2)
- Listings must exist before search/filter
- Must complete by Milestone 2
- Automated content detection (1.8.10) - Requires ML model integration
- Geographic scope calculation (1.3.5) - Complex algorithm
- WCAG 2.1 AA compliance (2.2) - Time-intensive accessibility work
- Meal planner algorithm (1.5.3) - Deterministic generation complexity
- Multi-source nutrition data (2.4.7) - Data aggregation challenges
- 48-hour SLA (2.1.4) - Requires monitoring and alerting
- Unit tests for new endpoints (>70% coverage)
- Integration tests for food proposal flow
- Integration tests for password reset
- Manual testing of moderation dashboard
- Smoke tests in production
- Unit tests for all new features (>75% coverage)
- Integration tests for meal planner
- Integration tests for market flows
- E2E tests for critical user journeys
- Performance testing (50 concurrent users)
- Security testing (basic OWASP checks)
- Comprehensive unit test suite (>80% coverage)
- Full integration test suite
- E2E tests for all features
- Load testing (stress test with >100 users)
- Security audit (full OWASP Top 10)
- Accessibility audit (WCAG 2.1 AA)
- Cross-browser testing
- Mobile device testing
- Penetration testing (stretch goal)
Milestone 1 Gate:
- ✅ All P0 bugs fixed
- ✅ Deployment successful
- ✅ Core features functional
- ✅ >70% test coverage
Milestone 2 Gate:
- ✅ All P0/P1 bugs fixed
- ✅ MVP features complete
- ✅ Performance targets met
- ✅ >75% test coverage
- ✅ Good development practices followed
Milestone 3 Gate:
- ✅ All P0/P1/P2 bugs fixed
- ✅ All requirements implemented
- ✅ All non-functional requirements met
- ✅ >80% test coverage
- ✅ WCAG 2.1 AA compliant
- ✅ Security audit passed
- ✅ Documentation complete
| Risk | Probability | Impact | Mitigation Strategy |
|---|---|---|---|
| Team member unavailability | Medium | High | Buffer time between milestones, clear issue assignment |
| Automated detection integration complexity | High | Medium | Start early, use pre-trained models, fallback to manual moderation |
| WCAG compliance delays | Medium | High | Dedicated accessibility sprint in Milestone 3, use automated tools |
| Performance issues at scale | Medium | Medium | Early performance testing, database optimization, caching |
| API design changes breaking integrations | Low | High | API versioning, comprehensive integration tests |
| Security vulnerabilities discovered | Medium | High | Regular security audits, OWASP guidelines, code reviews |
| Geographic scope algorithm bugs | Medium | Medium | Thorough unit tests, edge case testing, clear algorithm documentation |
Time Management:
- 1-week buffer between milestones for unexpected issues
- Weekly progress check-ins per Communication Plan
- Early identification of blockers
Feature Prioritization:
- 1.9 Community Features can be deferred if time-critical
- Stretch goals clearly marked
- MVP functionality prioritized over polish
Technical Debt:
- Refactoring sprints scheduled
- Code review mandatory per Team Policies
- Documentation kept up-to-date
Quality Assurance:
- Continuous integration with automated tests
- Regular code reviews
- Security and accessibility audits
Milestone 1:
- ✅ 100% of Milestone 1 requirements implemented
- ✅ Users can propose food items
- ✅ Recipe costs displayed and filterable
- ✅ Moderation dashboard functional
Milestone 2:
- ✅ 100% of Milestone 2 requirements implemented
- ✅ Users can create meal plans
- ✅ Store owners can list products
- ✅ Consumers can create shopping lists
- ✅ Automated flagging operational
Milestone 3:
- ✅ 100% of all functional requirements implemented
- ✅ All non-functional requirements met
- ✅ Zero P0/P1 bugs
- ✅ Production-ready application
Performance:
- Response time <5s for search queries
- Support 50+ concurrent users
- 95% uptime during testing period
Quality:
- Unit test coverage >80%
- All integration tests passing
- Zero critical security vulnerabilities
Accessibility:
- WCAG 2.1 AA compliance
- Keyboard navigable
- Screen reader compatible
Security:
- HTTPS enabled
- Passwords hashed with bcrypt
- No exposed secrets or API keys
- Tamper-resistant logging implemented
- All PRs reviewed per Team Policies
- Issues closed by reviewers (not creators)
- Meeting notes documented weekly
- Wiki kept up-to-date
- No direct pushes to main branch
This roadmap provides a structured path to complete the Affordable & Healthy Eating Hub project during the CMPE451 semester. By following this plan, the team will deliver a production-ready application that meets all functional and non-functional requirements while adhering to good development practices.
Key Success Factors:
- Strict adherence to milestone deadlines
- Regular communication and progress tracking
- Early identification and mitigation of risks
- Continuous testing and quality assurance
- Comprehensive documentation throughout
Next Steps:
- Review and approve this roadmap with the team
- Create GitHub issues for Milestone 1 tasks
- Assign issues to team members
- Set up project boards for tracking
- Begin implementation on October 2, 2025
Document Version: 1.0 Last Updated: October 7, 2025 Maintained By: bounswe2025group9