Administrator: Creating & Managing Offline Exams
graph TD
Start([Admin Starts]) --> CreateExam[Navigate to
Exams → Offline Exams] CreateExam --> FillForm[Fill Exam Details:
• Exam Name
• Class
• Session Year
• Start Date
• End Date
• Publish: No] FillForm --> SubmitExam[Submit Exam] SubmitExam --> ExamCreated{Exam Created
Successfully?} ExamCreated -->|No| FixErrors[Fix Validation
Errors] FixErrors --> FillForm ExamCreated -->|Yes| CreateTimetable[Create Timetable] CreateTimetable --> AddSubject[Add Subject:
• Subject Name
• Date
• Start Time
• End Time
• Total Marks
• Passing Marks] AddSubject --> SaveSubject[Save Subject to
Timetable] SaveSubject --> MoreSubjects{More Subjects
to Add?} MoreSubjects -->|Yes| AddSubject MoreSubjects -->|No| TimetableComplete[Timetable Complete] TimetableComplete --> ConductExams[Exams Conducted
Offline in School] ConductExams --> TeacherEval[Teachers Evaluate
Answer Papers] TeacherEval --> MonitorMarks[Monitor Mark Entry:
Check Progress by Subject] MonitorMarks --> AllEntered{All Subjects
Have Marks?} AllEntered -->|No| RemindTeachers[Send Reminders
to Teachers] RemindTeachers --> MonitorMarks AllEntered -->|Yes| ReviewResults[Review Results:
• Check for Anomalies
• Verify Calculations
• Sample Validation] ReviewResults --> IssuesFound{Issues
Found?} IssuesFound -->|Yes| ContactTeacher[Contact Teacher
for Correction] ContactTeacher --> ReviewResults IssuesFound -->|No| PublishReady[Ready to Publish] PublishReady --> PublishResults[Click Publish Results] PublishResults --> ConfirmPublish[Confirm Publication] ConfirmPublish --> ResultsLive[Results Visible to
Students & Parents] ResultsLive --> HandleQueries[Handle Result
Queries] HandleQueries --> NeedCorrection{Correction
Needed?} NeedCorrection -->|Yes| Unpublish[Unpublish Results] Unpublish --> EditMarks[Teachers Edit Marks] EditMarks --> ReviewResults NeedCorrection -->|No| ExportResults[Export Results
for Records] ExportResults --> End([Complete]) style Start fill:#e8f5e9 style End fill:#e8f5e9 style ExamCreated fill:#fff3e0 style AllEntered fill:#fff3e0 style IssuesFound fill:#fff3e0 style NeedCorrection fill:#fff3e0 style ResultsLive fill:#f3e5f5
Exams → Offline Exams] CreateExam --> FillForm[Fill Exam Details:
• Exam Name
• Class
• Session Year
• Start Date
• End Date
• Publish: No] FillForm --> SubmitExam[Submit Exam] SubmitExam --> ExamCreated{Exam Created
Successfully?} ExamCreated -->|No| FixErrors[Fix Validation
Errors] FixErrors --> FillForm ExamCreated -->|Yes| CreateTimetable[Create Timetable] CreateTimetable --> AddSubject[Add Subject:
• Subject Name
• Date
• Start Time
• End Time
• Total Marks
• Passing Marks] AddSubject --> SaveSubject[Save Subject to
Timetable] SaveSubject --> MoreSubjects{More Subjects
to Add?} MoreSubjects -->|Yes| AddSubject MoreSubjects -->|No| TimetableComplete[Timetable Complete] TimetableComplete --> ConductExams[Exams Conducted
Offline in School] ConductExams --> TeacherEval[Teachers Evaluate
Answer Papers] TeacherEval --> MonitorMarks[Monitor Mark Entry:
Check Progress by Subject] MonitorMarks --> AllEntered{All Subjects
Have Marks?} AllEntered -->|No| RemindTeachers[Send Reminders
to Teachers] RemindTeachers --> MonitorMarks AllEntered -->|Yes| ReviewResults[Review Results:
• Check for Anomalies
• Verify Calculations
• Sample Validation] ReviewResults --> IssuesFound{Issues
Found?} IssuesFound -->|Yes| ContactTeacher[Contact Teacher
for Correction] ContactTeacher --> ReviewResults IssuesFound -->|No| PublishReady[Ready to Publish] PublishReady --> PublishResults[Click Publish Results] PublishResults --> ConfirmPublish[Confirm Publication] ConfirmPublish --> ResultsLive[Results Visible to
Students & Parents] ResultsLive --> HandleQueries[Handle Result
Queries] HandleQueries --> NeedCorrection{Correction
Needed?} NeedCorrection -->|Yes| Unpublish[Unpublish Results] Unpublish --> EditMarks[Teachers Edit Marks] EditMarks --> ReviewResults NeedCorrection -->|No| ExportResults[Export Results
for Records] ExportResults --> End([Complete]) style Start fill:#e8f5e9 style End fill:#e8f5e9 style ExamCreated fill:#fff3e0 style AllEntered fill:#fff3e0 style IssuesFound fill:#fff3e0 style NeedCorrection fill:#fff3e0 style ResultsLive fill:#f3e5f5
💡 Key Points for Administrators:
- Create exam structure before building timetable
- Set "Publish: No" initially - publish only after verification
- Allow 2-3 weeks between exam start and end dates
- Monitor mark entry progress actively
- Review results thoroughly before publishing
- Can unpublish to make corrections if needed
Teacher: Mark Entry & Management
graph TD
Start([Teacher Starts]) --> ViewTimetable[View Exam Timetable:
Check Dates & Times] ViewTimetable --> PrepareExam[Prepare Question Paper] PrepareExam --> ConductExam[Conduct Exam
on Scheduled Date] ConductExam --> CollectPapers[Collect Answer Sheets] CollectPapers --> EvaluatePapers[Evaluate Papers
Using Marking Scheme] EvaluatePapers --> CalculateMarks[Calculate Total Marks
for Each Student] CalculateMarks --> RecordMarks[Record in Physical
Mark Sheet Optional] RecordMarks --> LoginSystem[Login to 4SCH] LoginSystem --> NavigateEntry[Navigate to:
Exams → Mark Entry] NavigateEntry --> SelectExam[Select Exam
from Dropdown] SelectExam --> SelectSubject[Select Your Subject] SelectSubject --> StudentList[Student List
Appears] StudentList --> EnterMarks[Enter Marks for
Each Student] EnterMarks --> EnterOne[Click Obtained Marks Field] EnterOne --> TypeMarks[Type Marks Number] TypeMarks --> ValidateMarks{Marks
Valid?} ValidateMarks -->|Exceeds Total| ShowError[Error: Cannot Exceed
Total Marks] ShowError --> TypeMarks ValidateMarks -->|Valid| AutoCalc[System Auto-Calculates:
• Percentage
• Pass/Fail
• Grade] AutoCalc --> TabNext[Press Tab to
Next Student] TabNext --> MoreStudents{More Students
to Enter?} MoreStudents -->|Yes| EnterOne MoreStudents -->|No| AddComments[Add Comments
for Special Cases] AddComments --> ReviewEntries[Review All Entries] ReviewEntries --> DoubleCheck{All Entries
Correct?} DoubleCheck -->|No| CorrectErrors[Correct Wrong
Entries] CorrectErrors --> ReviewEntries DoubleCheck -->|Yes| SaveMarks[Click Save Marks] SaveMarks --> Confirmation[Success: Marks Saved
for Subject] Confirmation --> InformAdmin[Inform Admin
Marks Complete] InformAdmin --> WaitPublish[Wait for Admin
to Publish Results] WaitPublish --> ResultsPublished{Results
Published?} ResultsPublished -->|Yes| HandleQueries[Handle Student
Queries] HandleQueries --> NeedEdit{Correction
Needed?} NeedEdit -->|Yes| RequestUnpublish[Request Admin
to Unpublish] RequestUnpublish --> EditMarks[Edit Marks in System] EditMarks --> SaveMarks NeedEdit -->|No| End([Complete]) ResultsPublished -->|No| WaitPublish style Start fill:#e8f5e9 style End fill:#e8f5e9 style ValidateMarks fill:#fff3e0 style DoubleCheck fill:#fff3e0 style NeedEdit fill:#fff3e0 style Confirmation fill:#c8e6c9 style ShowError fill:#ffcdd2
Check Dates & Times] ViewTimetable --> PrepareExam[Prepare Question Paper] PrepareExam --> ConductExam[Conduct Exam
on Scheduled Date] ConductExam --> CollectPapers[Collect Answer Sheets] CollectPapers --> EvaluatePapers[Evaluate Papers
Using Marking Scheme] EvaluatePapers --> CalculateMarks[Calculate Total Marks
for Each Student] CalculateMarks --> RecordMarks[Record in Physical
Mark Sheet Optional] RecordMarks --> LoginSystem[Login to 4SCH] LoginSystem --> NavigateEntry[Navigate to:
Exams → Mark Entry] NavigateEntry --> SelectExam[Select Exam
from Dropdown] SelectExam --> SelectSubject[Select Your Subject] SelectSubject --> StudentList[Student List
Appears] StudentList --> EnterMarks[Enter Marks for
Each Student] EnterMarks --> EnterOne[Click Obtained Marks Field] EnterOne --> TypeMarks[Type Marks Number] TypeMarks --> ValidateMarks{Marks
Valid?} ValidateMarks -->|Exceeds Total| ShowError[Error: Cannot Exceed
Total Marks] ShowError --> TypeMarks ValidateMarks -->|Valid| AutoCalc[System Auto-Calculates:
• Percentage
• Pass/Fail
• Grade] AutoCalc --> TabNext[Press Tab to
Next Student] TabNext --> MoreStudents{More Students
to Enter?} MoreStudents -->|Yes| EnterOne MoreStudents -->|No| AddComments[Add Comments
for Special Cases] AddComments --> ReviewEntries[Review All Entries] ReviewEntries --> DoubleCheck{All Entries
Correct?} DoubleCheck -->|No| CorrectErrors[Correct Wrong
Entries] CorrectErrors --> ReviewEntries DoubleCheck -->|Yes| SaveMarks[Click Save Marks] SaveMarks --> Confirmation[Success: Marks Saved
for Subject] Confirmation --> InformAdmin[Inform Admin
Marks Complete] InformAdmin --> WaitPublish[Wait for Admin
to Publish Results] WaitPublish --> ResultsPublished{Results
Published?} ResultsPublished -->|Yes| HandleQueries[Handle Student
Queries] HandleQueries --> NeedEdit{Correction
Needed?} NeedEdit -->|Yes| RequestUnpublish[Request Admin
to Unpublish] RequestUnpublish --> EditMarks[Edit Marks in System] EditMarks --> SaveMarks NeedEdit -->|No| End([Complete]) ResultsPublished -->|No| WaitPublish style Start fill:#e8f5e9 style End fill:#e8f5e9 style ValidateMarks fill:#fff3e0 style DoubleCheck fill:#fff3e0 style NeedEdit fill:#fff3e0 style Confirmation fill:#c8e6c9 style ShowError fill:#ffcdd2
⚠️ Important for Teachers:
- Evaluate papers within 3-5 days while still fresh
- Enter marks within 1 week of evaluation
- Use Tab key for faster navigation between students
- System validates: marks cannot exceed total marks
- Add comments for absences or special cases
- Double-check entries before saving
- Save frequently - after every 10-15 students
Student: Viewing Timetable & Results
graph TD
Start([Student Starts]) --> AccessApp[Open 4SCH App
or Web Portal] AccessApp --> Login[Login with
Credentials] Login --> Dashboard[Navigate to
Dashboard] Dashboard --> Phase{What to
Check?} Phase -->|Before Exams| ViewTimetable[Go to Exams →
Exam Timetable] ViewTimetable --> SeeTimetable[View Subjects with:
• Date
• Start Time
• End Time
• Total Marks
• Passing Marks] SeeTimetable --> PlanStudy[Plan Study Schedule
Based on Dates] PlanStudy --> PrepareExams[Prepare for Exams] PrepareExams --> TakeExams[Take Exams on
Scheduled Dates] TakeExams --> WaitResults[Wait for Results
to be Published] Phase -->|After Exams| CheckResults[Go to Exams →
Exam Results] WaitResults --> CheckPublish{Results
Published?} CheckPublish -->|No| WaitMore[Wait for
Notification] WaitMore --> CheckPublish CheckPublish -->|Yes| CheckResults CheckResults --> ViewList[View List of
Published Exams] ViewList --> SelectExam[Select Exam
to View] SelectExam --> ViewOverall[View Overall Result:
• Total Marks
• Obtained Marks
• Percentage
• Grade
• Pass/Fail Status] ViewOverall --> ViewSubjects[View Subject-wise
Breakdown] ViewSubjects --> SubjectDetails[For Each Subject:
• Subject Name
• Total Marks
• Passing Marks
• Obtained Marks
• Percentage
• Pass/Fail
• Grade
• Teacher Comments] SubjectDetails --> AnalyzePerf[Analyze Performance:
• Strong Subjects
• Weak Subjects
• Areas to Improve] AnalyzePerf --> CheckStatus{Overall
Status?} CheckStatus -->|Pass| Celebrate[Celebrate Success!
Plan to Maintain] CheckStatus -->|Fail| IdentifyWeak[Identify Failed
Subjects] IdentifyWeak --> PlanImprovement[Create Improvement
Plan] PlanImprovement --> SeekHelp[Seek Teacher Help
for Weak Areas] Celebrate --> ShareParents[Share Results
with Parents] SeekHelp --> ShareParents ShareParents --> QueryMarks{Question
About Marks?} QueryMarks -->|Yes| ContactTeacher[Contact Subject
Teacher] ContactTeacher --> RequestReview[Request Mark
Verification] QueryMarks -->|No| PrepareNext[Prepare for
Next Exam] RequestReview --> PrepareNext PrepareNext --> End([Complete]) style Start fill:#e8f5e9 style End fill:#e8f5e9 style CheckPublish fill:#fff3e0 style CheckStatus fill:#fff3e0 style QueryMarks fill:#fff3e0 style Celebrate fill:#c8e6c9
or Web Portal] AccessApp --> Login[Login with
Credentials] Login --> Dashboard[Navigate to
Dashboard] Dashboard --> Phase{What to
Check?} Phase -->|Before Exams| ViewTimetable[Go to Exams →
Exam Timetable] ViewTimetable --> SeeTimetable[View Subjects with:
• Date
• Start Time
• End Time
• Total Marks
• Passing Marks] SeeTimetable --> PlanStudy[Plan Study Schedule
Based on Dates] PlanStudy --> PrepareExams[Prepare for Exams] PrepareExams --> TakeExams[Take Exams on
Scheduled Dates] TakeExams --> WaitResults[Wait for Results
to be Published] Phase -->|After Exams| CheckResults[Go to Exams →
Exam Results] WaitResults --> CheckPublish{Results
Published?} CheckPublish -->|No| WaitMore[Wait for
Notification] WaitMore --> CheckPublish CheckPublish -->|Yes| CheckResults CheckResults --> ViewList[View List of
Published Exams] ViewList --> SelectExam[Select Exam
to View] SelectExam --> ViewOverall[View Overall Result:
• Total Marks
• Obtained Marks
• Percentage
• Grade
• Pass/Fail Status] ViewOverall --> ViewSubjects[View Subject-wise
Breakdown] ViewSubjects --> SubjectDetails[For Each Subject:
• Subject Name
• Total Marks
• Passing Marks
• Obtained Marks
• Percentage
• Pass/Fail
• Grade
• Teacher Comments] SubjectDetails --> AnalyzePerf[Analyze Performance:
• Strong Subjects
• Weak Subjects
• Areas to Improve] AnalyzePerf --> CheckStatus{Overall
Status?} CheckStatus -->|Pass| Celebrate[Celebrate Success!
Plan to Maintain] CheckStatus -->|Fail| IdentifyWeak[Identify Failed
Subjects] IdentifyWeak --> PlanImprovement[Create Improvement
Plan] PlanImprovement --> SeekHelp[Seek Teacher Help
for Weak Areas] Celebrate --> ShareParents[Share Results
with Parents] SeekHelp --> ShareParents ShareParents --> QueryMarks{Question
About Marks?} QueryMarks -->|Yes| ContactTeacher[Contact Subject
Teacher] ContactTeacher --> RequestReview[Request Mark
Verification] QueryMarks -->|No| PrepareNext[Prepare for
Next Exam] RequestReview --> PrepareNext PrepareNext --> End([Complete]) style Start fill:#e8f5e9 style End fill:#e8f5e9 style CheckPublish fill:#fff3e0 style CheckStatus fill:#fff3e0 style QueryMarks fill:#fff3e0 style Celebrate fill:#c8e6c9
💡 Tips for Students:
- Check timetable 2-3 weeks before exams start
- Create a study schedule based on exam dates
- Note passing marks - aim to exceed them
- Results appear only after admin publishes
- You'll receive notification when results are ready
- Subject-wise breakdown helps identify weak areas
- Contact teacher if you have questions about marks
Result Calculation Logic
graph TD
Start([Marks Entered
for All Subjects]) --> ProcessStudent[For Each Student] ProcessStudent --> GetSubjects[Get All Subjects
in Exam] GetSubjects --> LoopSubject[For Each Subject] LoopSubject --> GetMarks[Get:
• Total Marks
• Passing Marks
• Obtained Marks] GetMarks --> CalcSubjPct[Calculate Subject %:
Obtained / Total × 100] CalcSubjPct --> CheckPass{Obtained ≥
Passing?} CheckPass -->|Yes| MarkPass[Subject Status:
PASS] CheckPass -->|No| MarkFail[Subject Status:
FAIL] MarkPass --> AssignGrade[Assign Grade Based
on Percentage] MarkFail --> AssignGrade AssignGrade --> NextSubject{More
Subjects?} NextSubject -->|Yes| LoopSubject NextSubject -->|No| CalcOverall[Calculate Overall Result] CalcOverall --> SumMarks[Sum All:
• Total Possible Marks
• Total Obtained Marks] SumMarks --> CalcOverallPct[Overall % =
Total Obtained / Total Possible × 100] CalcOverallPct --> AssignOverallGrade[Assign Overall Grade
Based on Percentage] AssignOverallGrade --> CheckAllPass{All Subjects
Passed?} CheckAllPass -->|Yes| OverallPass[Overall Status:
PASS] CheckAllPass -->|No| OverallFail[Overall Status:
FAIL] OverallPass --> SaveResult[Save Complete Result:
• Subject-wise Details
• Overall Summary
• Grades
• Status] OverallFail --> SaveResult SaveResult --> NextStudent{More
Students?} NextStudent -->|Yes| ProcessStudent NextStudent -->|No| Complete[All Results
Calculated] Complete --> ReadyPublish[Ready for
Admin to Publish] ReadyPublish --> End([Complete]) style Start fill:#e8f5e9 style End fill:#e8f5e9 style CheckPass fill:#fff3e0 style CheckAllPass fill:#fff3e0 style OverallPass fill:#c8e6c9 style OverallFail fill:#ffcdd2
for All Subjects]) --> ProcessStudent[For Each Student] ProcessStudent --> GetSubjects[Get All Subjects
in Exam] GetSubjects --> LoopSubject[For Each Subject] LoopSubject --> GetMarks[Get:
• Total Marks
• Passing Marks
• Obtained Marks] GetMarks --> CalcSubjPct[Calculate Subject %:
Obtained / Total × 100] CalcSubjPct --> CheckPass{Obtained ≥
Passing?} CheckPass -->|Yes| MarkPass[Subject Status:
PASS] CheckPass -->|No| MarkFail[Subject Status:
FAIL] MarkPass --> AssignGrade[Assign Grade Based
on Percentage] MarkFail --> AssignGrade AssignGrade --> NextSubject{More
Subjects?} NextSubject -->|Yes| LoopSubject NextSubject -->|No| CalcOverall[Calculate Overall Result] CalcOverall --> SumMarks[Sum All:
• Total Possible Marks
• Total Obtained Marks] SumMarks --> CalcOverallPct[Overall % =
Total Obtained / Total Possible × 100] CalcOverallPct --> AssignOverallGrade[Assign Overall Grade
Based on Percentage] AssignOverallGrade --> CheckAllPass{All Subjects
Passed?} CheckAllPass -->|Yes| OverallPass[Overall Status:
PASS] CheckAllPass -->|No| OverallFail[Overall Status:
FAIL] OverallPass --> SaveResult[Save Complete Result:
• Subject-wise Details
• Overall Summary
• Grades
• Status] OverallFail --> SaveResult SaveResult --> NextStudent{More
Students?} NextStudent -->|Yes| ProcessStudent NextStudent -->|No| Complete[All Results
Calculated] Complete --> ReadyPublish[Ready for
Admin to Publish] ReadyPublish --> End([Complete]) style Start fill:#e8f5e9 style End fill:#e8f5e9 style CheckPass fill:#fff3e0 style CheckAllPass fill:#fff3e0 style OverallPass fill:#c8e6c9 style OverallFail fill:#ffcdd2
Grade Assignment Examples
graph LR
subgraph "Example 1: All Subjects Passed"
E1[Student: John Doe] --> S1[Math: 75/100 = 75% = B = Pass]
E1 --> S2[English: 65/80 = 81% = A = Pass]
E1 --> S3[Science: 80/100 = 80% = A = Pass]
E1 --> S4[Social: 55/80 = 69% = C = Pass]
S1 --> R1[Total: 275/360]
S2 --> R1
S3 --> R1
S4 --> R1
R1 --> F1[Percentage: 76.39%
Grade: B
Status: PASS ✓] end subgraph "Example 2: Failed in One Subject" E2[Student: Jane Smith] --> S5[Math: 28/100 = 28% = F = Fail ✗] E2 --> S6[English: 70/80 = 88% = A = Pass] E2 --> S7[Science: 85/100 = 85% = A = Pass] E2 --> S8[Social: 60/80 = 75% = B = Pass] S5 --> R2[Total: 243/360] S6 --> R2 S7 --> R2 S8 --> R2 R2 --> F2[Percentage: 67.5%
Grade: C
Status: FAIL ✗
Failed in: Math] end style F1 fill:#c8e6c9 style F2 fill:#ffcdd2 style S5 fill:#ffcdd2
Grade: B
Status: PASS ✓] end subgraph "Example 2: Failed in One Subject" E2[Student: Jane Smith] --> S5[Math: 28/100 = 28% = F = Fail ✗] E2 --> S6[English: 70/80 = 88% = A = Pass] E2 --> S7[Science: 85/100 = 85% = A = Pass] E2 --> S8[Social: 60/80 = 75% = B = Pass] S5 --> R2[Total: 243/360] S6 --> R2 S7 --> R2 S8 --> R2 R2 --> F2[Percentage: 67.5%
Grade: C
Status: FAIL ✗
Failed in: Math] end style F1 fill:#c8e6c9 style F2 fill:#ffcdd2 style S5 fill:#ffcdd2
📐 Calculation Rules:
- Subject Pass: Obtained marks ≥ Passing marks
- Subject Percentage: (Obtained / Total) × 100
- Overall Pass: Must pass in ALL subjects
- Overall Percentage: Sum of all obtained / Sum of all total × 100
- Grade Assignment: Based on percentage ranges (school-specific)
- Typical Grades: A+ (90-100%), A (80-89%), B (70-79%), C (60-69%), D (50-59%), E (35-49%), F (0-34%)
⚠️ Important Notes:
- Even if overall percentage is high, failing ANY subject = Overall FAIL
- Grades are auto-calculated - teachers don't assign manually
- Passing marks can vary by subject (usually 35-40% of total)
- Some schools use different grading scales - check with admin