Skip to main content

Development Phases

The build progressed through five phases, each feeding directly into the next rather than running as a strict waterfall — sprints inside the "Development" phase, for instance, folded in testing and design refinements as issues surfaced.

1

Requirements gathering

Engaging DeSIC stakeholders through interviews and direct observation to understand current workflows, identify pain points in the manual system, and produce a requirements specification covering all six specific objectives.

2

System design

Creating UI wireframes for all three user roles, defining the role-based access model, and designing the PostgreSQL schema, so that frontend and backend work could proceed in parallel without integration surprises.

3

Development

Building the Express.js API and authentication logic alongside the React frontend. Core modules — event registration, authentication, progress tracking, mentor allocation, and notifications — were implemented incrementally across sprints, with Git and GitHub used throughout for version control and collaboration.

4

Testing

Running unit, integration, and system tests after each sprint. Jest covered automated backend testing, while DeSIC staff acting as real users carried out interface validation. Issues found were fixed before the next sprint's work began.

5

Deployment

Deploying the frontend to Vercel and the backend and database to Render, both on free-tier plans, with environment variables and connection strings configured securely. Final testing on the live environment confirmed all services were operational before handover to DeSIC.