SKOLE-ADMN — Admission Form Module
Module ID:SKOLE-ADMN | Version: 1.0 | Status: ActiveProducts: Web App (admin) · Public-facing form (no auth required)
1. Overview
Scope In
- Multi-step admission: student info → parent/guardian info → address info
- Public endpoints (no JWT) so prospective parents can submit
- Edit each section individually after initial submission
- Grade lookup and student info lookup by roll_no
Scope Out
- Payment collection during admission
- Document upload (birth certificate, ID proof)
2. Requirements
Functional Requirements (FR)
What the module must DO — actions, behaviors, and outcomes.- SKOLE-ADMN-FR001: The module shall allow any user with a school link to submit an admission form without requiring authentication.
- SKOLE-ADMN-FR002: The module shall capture comprehensive student, parent, guardian, and address information through a multi-step flow.
- SKOLE-ADMN-FR003: The module shall automatically create synchronized records in
students,parent_details,student_guardian, andstudent_addresstables upon submission. - SKOLE-ADMN-FR004: The module shall allow admins to query submitted records by skole_id and roll number.
- SKOLE-ADMN-FR005: The module shall provide available grades for the school in a dynamic dropdown.
- SKOLE-ADMN-FR006: The module shall enable section-level updates for student, parent, guardian, and address info post-submission.
Non-Functional Requirements (NFR)
How well the module must do it — performance, security, and reliability.- SKOLE-ADMN-NFR001: The module shall perform as a public-facing gateway by marking all admission endpoints as
@Public(). - SKOLE-ADMN-NFR002: The module shall behave reliably by identifying the target school via the
skole_idprovided in the query or form body.
Constraints
Rules and boundaries — tech choices and platform restrictions.- C001: We must utilize database transactions during admission creation to ensure all related records (student, parent, guardian, etc.) are created atomically.
- C002: We must ensure the public form is stateless as it cannot rely on JWT-based sessions.
3. Sub-modules / Backlog
4. Logical Implementation
Admission Create Flow
Grade Lookup
5. UI Requirements
Web App — Admission Form
Components: