1. Why Agile Scrum?
Reason:
Flexibility & Adaptability:
o Stakeholder feedback (teachers, students) was critical. Agile allowed us to adjust features (e.g., font size,
report formats) after each sprint.
Incremental Progress:
o Complex features (e.g., password encryption, real-time grade calculation) were broken into smaller
tasks.
Risk Mitigation:
o Early testing (e.g., database performance) identified issues (e.g., slow queries) before full deployment.
Alternatives Considered:
Waterfall: Too rigid; changes would require restarting phases.
Kanban: Less structured for a team with defined roles (developers, testers).
2. How We Applied Agile Scrum
Phase 1: Product Backlog
Prioritized Features:
o Admin Login (security first).
o Student Result Access (core functionality).
o Report Generation (high stakeholder demand).
Input: Based on teacher interviews (see Appendix A).
Phase 2: Sprint Planning (2-Week Cycles)
Tasks Breakdown:
o Sprint 1: Admin Login + Database Schema.
Task: Secure password hashing (md5 → later upgraded to bcrypt).
o Sprint 2: Student Result Entry + Validation.
Task: Auto-average calculation + marks validation (e.g., reject scores >100).
Effort Estimation:
o Used story points (e.g., login module = 5 points, bulk upload = 8 points).
Phase 3: Daily Standups
Format: 15-minute meetings (M-F).
Focus:
o Progress: "Completed login UI."
o Blockers: "Password encryption slows queries." → Resolved by optimizing SQL.
Phase 4: Sprint Execution
Parallel Workflows:
o Developers: Built features (e.g., class management forms).
o Testers: Validated edge cases (e.g., duplicate student IDs).
Tools:
o Trello for task tracking.
o GitHub for version control.
Phase 5: Sprint Review
Stakeholder Demos:
o Teachers tested the prototype and requested:
Larger fonts (UI change).
"Print All" button for class reports (added in Sprint 3).
Phase 6: Retrospective
Improvements Identified:
o Database Optimization: Replaced JOIN queries with indexed searches.
o Security Audit: Fixed session timeout vulnerabilities.
3. Challenges & Solutions
Challenge Solution
Password encryption slowed system Upgraded server RAM + optimized code.
Teachers struggled with UI navigation Added icons + tooltips.
Offline mode not working Switched from XAMPP to WAMP for stability.