Files
alrahma_sunday_school_api/docs/student_promotion_enrollment_plan.md
T
2026-06-04 02:24:41 -04:00

12 KiB
Raw Blame History

Student Promotion and Enrollment Management Plan

1. Core Rule

A student who passes the current level should not be automatically placed into the next level.

The student should first be marked as:

Eligible for Promotion

After that, the parent or guardian must complete enrollment for the promoted level.

Once the parent completes enrollment, the student becomes:

Promoted and Enrolled

No separate school approval is required.

2. Promotion Principle

Promotion and enrollment are separate steps.

Promotion

Promotion confirms that the student passed the current level and qualifies for the next level.

Enrollment

Enrollment confirms that the parent or guardian wants the student to continue at the school in the promoted level for the next school year.

Once enrollment is completed by the parent, the student should be officially assigned to the new promoted level.

3. Promotion Statuses

Recommended statuses:

  • Not Reviewed
  • Eligible for Promotion
  • Awaiting Parent Enrollment
  • Enrollment Started
  • Promoted and Enrolled
  • Conditional Promotion
  • Repeated Level
  • On Hold
  • Withdrawn
  • Graduated
  • Not Enrolled for Next Year

4. Status Definitions

Not Reviewed

The student has not yet been evaluated for promotion.

Eligible for Promotion

The student passed the current level and qualifies for the next level, but the parent has not started enrollment yet.

Awaiting Parent Enrollment

The student is eligible for the next level, and the system is waiting for the parent to complete enrollment.

Enrollment Started

The parent has started the enrollment process but has not completed all required steps.

Promoted and Enrolled

The parent completed enrollment for the promoted level. The student is officially placed into the next level for the new school year.

Conditional Promotion

The student has pending academic or administrative requirements before promotion eligibility can be finalized.

Examples:

  • Makeup exam required
  • Missing final grade
  • Attendance review
  • Academic condition pending

Repeated Level

The student did not meet the passing requirements and must repeat the same level.

On Hold

The student cannot continue through the promotion process because of an unresolved issue.

Examples:

  • Missing academic result
  • Enrollment form incomplete
  • Financial hold, if used by school policy
  • Required documents missing

Withdrawn

The student is no longer continuing at the school.

Graduated

The student completed the final level and does not move to another school level.

Not Enrolled for Next Year

The student passed and was eligible for promotion, but the parent did not complete enrollment before the deadline.

This should not be treated as failure. It means the student passed but did not continue enrollment.

5. Promotion Eligibility Criteria

A student may become eligible for promotion when the school confirms that the student passed the current level.

Eligibility may be based on:

  • Final academic result
  • Required subject completion
  • Final average
  • Attendance requirement, if applicable
  • Makeup exam result, if applicable
  • Level completion status

The school should define these rules clearly per level or program.

6. Updated Workflow

Step 1: Academic Result Finalized

Teachers or academic staff submit the students final result for the current level.

The system records:

  • Final average
  • Passed or failed result
  • Attendance result, if required
  • Current level completion status
  • Teacher comments, if needed

Step 2: Promotion Eligibility Check

The system checks whether the student passed the current level.

If the student passed, the system marks the student as:

Eligible for Promotion

or

Awaiting Parent Enrollment

The student is not yet moved into the next level.

Step 3: Parent Enrollment Required

The system notifies the parent or guardian that the student is eligible for the next level and must complete enrollment.

The notification should include:

  • Student name
  • Current level completed
  • Promoted level
  • Enrollment deadline
  • Required documents, if any
  • Required payment or deposit, if applicable
  • Instructions to complete enrollment

Step 4: Parent Starts Enrollment

When the parent begins the enrollment process, the student status becomes:

Enrollment Started

The enrollment process may include:

  • Confirming student information
  • Confirming parent or guardian information
  • Confirming the promoted level
  • Uploading required documents
  • Accepting school policies
  • Paying registration fee or deposit, if applicable
  • Submitting the enrollment form

Step 5: Parent Completes Enrollment

Once the parent submits all required enrollment information and completes required payment, if applicable, the enrollment is considered complete.

The student status becomes:

Promoted and Enrolled

No additional school approval is needed.

Step 6: New School-Year Record Created

After parent enrollment is completed, the system creates the students new school-year enrollment record.

The new record should include:

  • Student ID
  • Parent ID
  • New school year
  • Promoted level
  • Enrollment status
  • Enrollment completion date
  • Source promotion record

7. Decision Logic

IF student did not pass current level:
    promotion_status = repeated_level

ELSE IF student passed current level AND parent has not started enrollment:
    promotion_status = awaiting_parent_enrollment

ELSE IF student passed current level AND parent started enrollment BUT enrollment incomplete:
    promotion_status = enrollment_started

ELSE IF student passed current level AND parent completed enrollment:
    promotion_status = promoted_and_enrolled

ELSE:
    promotion_status = on_hold

8. Enrollment Completion Rule

Enrollment should be considered complete when all required parent-side actions are finished.

Required actions may include:

  • Enrollment form submitted
  • Required student information confirmed
  • Required parent information confirmed
  • Required documents uploaded
  • Required agreement accepted
  • Required registration fee or deposit paid, if applicable

Once these are complete, the system should automatically finalize the promotion.

9. Record Update Rule

The system should not overwrite the students current-level record.

Instead, it should:

  1. Keep the current school-year academic record unchanged.
  2. Create a promotion eligibility record.
  3. Wait for parent enrollment.
  4. Create a new enrollment record for the next school year after parent enrollment is complete.
  5. Assign the student to the promoted level only in the new school-year record.

10. Level Mapping

The school should maintain a clear level progression map.

Example:

Current Level Next Level
KG1 KG2
KG2 Grade 1
Grade 1 Grade 2
Grade 2 Grade 3
Grade 3 Grade 4
Grade 4 Grade 5
Grade 5 Grade 6
Grade 6 Grade 7
Grade 7 Grade 8
Grade 8 Grade 9
Grade 9 Youth
Youth Graduated

The system should store this mapping in configuration or a dedicated table, not hard-code it inside controller logic.

student_promotion_records

Recommended fields:

  • promotion_id
  • student_id
  • parent_id
  • current_school_year
  • next_school_year
  • current_level_id
  • promoted_level_id
  • promotion_status
  • passed_current_level
  • enrollment_required
  • enrollment_status
  • enrollment_id
  • parent_notified_at
  • enrollment_deadline
  • enrollment_completed_at
  • promotion_finalized_at
  • created_at
  • updated_at

enrollment_applications

Recommended fields:

  • enrollment_id
  • student_id
  • parent_id
  • school_year
  • requested_level_id
  • source_promotion_id
  • application_status
  • submitted_at
  • completed_at
  • required_documents_status
  • payment_status
  • created_at
  • updated_at

promotion_conditions

Recommended condition type:

  • parent_enrollment_required

Example:

  • condition_type: parent_enrollment_required
  • description: Parent must complete enrollment for the promoted level.
  • status: pending
  • deadline: enrollment deadline date

12. Parent Portal Requirements

The parent portal should show the parent a clear action.

Example message:

“Your child has passed the current level and is eligible for promotion to [Promoted Level]. Please complete enrollment for the new school year by [Deadline].”

The parent should be able to:

  • View the promoted level
  • Start enrollment
  • Confirm student information
  • Upload required documents
  • Pay required enrollment fee, if applicable
  • Submit enrollment
  • View enrollment status

13. Admin Panel Requirements

The admin panel should allow staff to view:

  • Students eligible for promotion
  • Students awaiting parent enrollment
  • Students with enrollment started
  • Students promoted and enrolled
  • Students not enrolled for next year
  • Students repeating the level
  • Students on hold

Admin users should also be able to:

  • Set enrollment deadlines
  • Send reminders
  • View enrollment completion status
  • Export pending enrollment lists
  • View promotion history

14. Reminder Process

The system should send reminders to parents who have not completed enrollment.

Suggested reminders:

  • First reminder after student becomes eligible
  • Second reminder halfway before deadline
  • Final reminder before deadline
  • Expiration notice after deadline

Each reminder should be logged.

15. Deadline Handling

If the parent does not complete enrollment before the deadline, the student should be marked as:

Not Enrolled for Next Year

This means:

  • The student passed the current level.
  • The student was eligible for promotion.
  • The parent did not complete enrollment.
  • The student should not be counted as enrolled for the next school year.

16. Reports

The system should generate reports for:

  • Students eligible for promotion
  • Students awaiting parent enrollment
  • Students with enrollment started
  • Students promoted and enrolled
  • Students not enrolled for next year
  • Students repeating the level
  • Students on hold
  • Promotion summary by current level
  • Enrollment completion summary
  • Parent enrollment pending list

17. Permissions

Access should be controlled by role.

Teacher

Can submit academic results and promotion recommendations.

Academic Coordinator

Can review academic eligibility and promotion readiness.

Parent or Guardian

Can complete enrollment for the promoted level.

Registrar or Admin Staff

Can view promotion and enrollment status, send reminders, and export reports.

Administrator

Can configure levels, promotion rules, deadlines, and system settings.

18. Audit Trail

Every promotion and enrollment action should be logged.

Audit log should track:

  • User who made the action
  • Date and time
  • Student affected
  • Old value
  • New value
  • Action type
  • Notes, if any

Important audited actions:

  • Academic result submitted
  • Student marked eligible for promotion
  • Parent notified
  • Enrollment started
  • Enrollment completed
  • Student marked promoted and enrolled
  • Student marked not enrolled for next year
  • Manual status changes

19. Implementation Phases

Phase 1: Promotion Rules and Level Mapping

  • Create level progression table.
  • Create promotion status rules.
  • Define final levels.
  • Define repeat-level behavior.

Phase 2: Eligibility Engine

  • Build academic eligibility check.
  • Generate promotion eligibility records.
  • Mark eligible students as awaiting parent enrollment.

Phase 3: Parent Enrollment Flow

  • Build parent enrollment action.
  • Allow parent to confirm information.
  • Allow parent to upload documents, if needed.
  • Allow parent to pay registration fee or deposit, if applicable.
  • Mark enrollment complete automatically when required steps are done.

Phase 4: Record Update

  • Create next-year enrollment record after parent enrollment completion.
  • Assign promoted level only in the new school-year record.
  • Preserve current-year academic history.

Phase 5: Notifications and Reports

  • Notify parents when students become eligible.
  • Send reminders before deadline.
  • Generate pending enrollment reports.
  • Generate promoted and enrolled reports.

20. Final Rule

The system should follow this rule:

Passed Current Level + Parent Completed Enrollment = Promoted and Enrolled

Therefore:

Passed ≠ Enrolled

Eligible for Promotion ≠ Promoted and Enrolled

Promoted and Enrolled = Student passed current level + Parent completed enrollment