How syedsuhaibhasan/class-scheduler works
Class Scheduler is a Swing desktop application for administrators, faculty, and students to manage academic schedules and communication. The documented user flow is role-based sign-in into a role-specific dashboard, then registration, timetable access/management, or notifications and polls. The tree and README establish these product areas, while sampled code confirms login dispatch, direct registration database access, timetable display, and notification persistence. Several feature modules were not sampled, so their internal wiring is shown only where supported; documented-but-unsampled capabilities remain represented without speculative call edges.
Main entry points: Login.java Role login · connectionprovider.java Connection provider · AdminWindow.java Admin dashboard · StudentDashboard.java Student dashboard
Components 16
Access and Accounts
- Role login
forms/Login.java - Admin dashboard
forms/AdminWindow.java - Faculty dashboard
forms/FacultyDashboard.java - Student dashboard
forms/StudentDashboard.java - Faculty registration
forms/FacultyRegistration.java - Student registration
forms/StudentRegistration.java - UI utilities
utility/BDutility.java
Schedule Management
- Timetable view
forms/Timetable.java - Timetable editing
forms/TimetableFrameEdit.java - Timetable dialog
forms/TimetableDialog.java
Communication
- Polls and feedback
forms/PollDialog.java - Notification sending
dao/NotificationSender.java - Notification viewing
dao/NotificationViewer.java
Persistence
- Connection provider
dao/connectionprovider.java - MySQL database
Other components
- Institution user
Connections 17
- Institution user → Role login: signs in
- Role login → Connection provider: queries credentials
- Role login → Admin dashboard: opens admin
- Role login → Faculty dashboard: opens faculty
- Role login → Student dashboard: opens student
- Role login → UI utilities: opens forms
- Faculty registration → Connection provider: checks and saves
- Student registration → Connection provider: checks and saves
- Student dashboard → Timetable view: selects section
- Admin dashboard → Timetable editing: manages schedules
- Admin dashboard → Timetable dialog: manages schedules
- Admin dashboard → Notification sending: sends notification
- Notification viewing → Connection provider: reads notifications
- Notification sending → Connection provider: writes notification
- Faculty dashboard → Polls and feedback: participates
- Student dashboard → Polls and feedback: gives feedback
- Connection provider → MySQL database: connects and queries