Contents
- High-Level Use Case Diagram (visual)
- Module-level Use Case Diagrams (visual)
- Detailed Use Case Templates (reusable)
- Example Detailed Use Cases (Student Registration, Mark Attendance, Pay Fees)
1. High-Level Use Case Diagram (visual)
Below is a visual (Mermaid/graph) view of actors and main system use cases. You can paste this into any Markdown viewer that supports Mermaid to render the diagram.
graph LR
%% Actors
Admin[Admin]
Teacher[Teacher]
Student[Student]
Parent[Parent]
Librarian[Librarian]
Driver[Driver]
%% Use Cases
MU_ManageStudents[(Manage Students)]
MU_Attendance[(Manage Attendance)]
MU_Fees[(Manage Fees)]
MU_Exams[(Manage Exams & Results)]
MU_Timetable[(Manage Timetable)]
MU_Library[(Manage Library)]
MU_Transport[(Manage Transport)]
MU_Communication[(Communication & Notifications)]
MU_HR[(HR & Payroll)]
MU_Reports[(Reports & Analytics)]
%% Connections
Admin -- manages --> MU_ManageStudents
Admin -- configures --> MU_Fees
Admin -- configures --> MU_Timetable
Admin -- manages --> MU_HR
Admin -- views --> MU_Reports
Teacher -- uses --> MU_Attendance
Teacher -- uses --> MU_Exams
Teacher -- uses --> MU_Communication
Student -- uses --> MU_Timetable
Student -- uses --> MU_Exams
Student -- uses --> MU_Communication
Parent -- uses --> MU_Fees
Parent -- uses --> MU_Communication
Parent -- uses --> MU_Transport
Librarian -- uses --> MU_Library
Driver -- uses --> MU_Transport
MU_ManageStudents --- MU_Reports
MU_Attendance --- MU_Reports
MU_Fees --- MU_Reports
MU_Exams --- MU_Reports
2. Module-level Use Case Diagrams (visual)
Fee Management (Actors: Admin, Parent)
graph LR
Admin[Admin]
Parent[Parent]
UC_GenerateInvoice[(Generate Invoice)]
UC_PayFees[(Pay Fees)]
UC_TrackPending[(Track Pending Payments)]
UC_SendReminder[(Send Payment Reminder)]
Admin -- performs --> UC_GenerateInvoice
Parent -- performs --> UC_PayFees
Admin -- performs --> UC_TrackPending
Admin -- performs --> UC_SendReminder
UC_PayFees --> UC_TrackPending
Attendance Management (Actors: Teacher, Admin, Student)
graph LR
Teacher[Teacher]
Admin[Admin]
Student[Student]
UC_MarkAttendance[(Mark Attendance)]
UC_ViewHistory[(View Attendance History)]
UC_GenerateReport[(Generate Attendance Report)]
Teacher -- performs --> UC_MarkAttendance
Student -- performs --> UC_ViewHistory
Admin -- performs --> UC_GenerateReport
UC_MarkAttendance --> UC_GenerateReport
Transport Management (Actors: Admin, Parent, Driver)
graph LR
Admin[Admin]
Parent[Parent]
Driver[Driver]
UC_AssignRoute[(Assign Bus Route)]
UC_TrackBus[(Track Bus - GPS)]
UC_ViewRoute[(View Route Details)]
Admin -- performs --> UC_AssignRoute
Parent -- performs --> UC_TrackBus
Driver -- performs --> UC_ViewRoute
3. Detailed Use Case Template (Reusable)
Business Rules / Constraints:
Special Requirements (Security, Performance):
Acceptance Criteria:
Notes / Comments:
4. Example Detailed Use Cases
Use Case: Student Registration
Use Case ID: UC-001 Name: Student Registration Primary Actor: Admin Secondary Actors: Student (or parent, for self-registration)
Description: Admin registers a new student into the SMS with personal, academic, and contact details. System generates a unique student ID and stores documents.
Preconditions: Admin is authenticated and authorized. Required student data and documents are available.
Postconditions: Student profile is created and visible in the system. Student ID assigned.
Main Flow:
- Admin navigates to "Student Registration" page.
- Admin fills personal, academic, contact details and uploads mandatory documents.
- Admin submits the form.
- System validates inputs and creates student record.
- System generates unique Student ID and notifies Admin.
Alternate Flows / Exceptions:
- If mandatory fields are missing, system shows validation errors and prevents submission.
- If document upload fails, system retries and notifies the admin.
Business Rules / Constraints:
- National ID must match chosen format (if collected).
- Duplicate check based on name + DOB + parent contact.
Special Requirements:
- All uploaded documents must be scanned and stored in encrypted form.
Acceptance Criteria:
- Admin can create student with all required fields.
- Student ID is unique.
- Student profile is searchable in the system.
Use Case: Mark Attendance
Use Case ID: UC-002 Name: Mark Attendance Primary Actor: Teacher Secondary Actors: Admin (for reports)
Description: Teacher marks attendance for a class session. Attendance can be recorded per period or for the whole day.
Preconditions: Teacher is logged in and class list is available for the selected date/period.
Postconditions: Attendance records are saved and count toward reports.
Main Flow:
- Teacher selects class and date/period.
- System displays student list.
- Teacher marks present/absent/late for each student.
- Teacher submits attendance.
- System saves attendance entries and updates attendance summary.
Exceptions:
- Network error while saving — system queues the data for retry and informs teacher.
Business Rules / Constraints:
- Only teachers assigned to the class can mark attendance.
Acceptance Criteria:
- Attendance can be marked and viewed by students/parents.
- Monthly attendance report reflects the data.
Use Case: Pay School Fees Online
Use Case ID: UC-003 Name: Pay School Fees Online Primary Actor: Parent Secondary Actors: Admin, Payment Gateway
Description: Parent views outstanding invoices and makes payment through integrated payment gateway. Receipt is generated on success.
Preconditions: Invoice generated and parent account is active.
Postconditions: Payment status is updated to "Paid" and receipt stored in transaction history.
Main Flow:
- Parent logs in and navigates to "Fees" section.
- Parent selects outstanding invoice and clicks "Pay".
- System redirects to payment gateway with invoice details.
- Parent completes payment on gateway.
- Gateway returns success response to SMS.
- System updates invoice status and generates receipt.
Alternate Flows / Exceptions:
- Payment fails — system marks as "Failed" and allows retry.
- Gateway timeout — system shows error and logs for manual follow-up.
Security & Compliance:
- Payment data must follow applicable PCI-DSS guidelines.
Acceptance Criteria:
- Parent can complete payment and receive receipt.
- Admin dashboard reflects paid status immediately.