The school management seeks to build a computerized information system to centralize all the activity related to school exams and improve the efficiency and reliability of exam management. The goals of the system are:
-
Exam Creation at Two Levels:
- Managing a pool of questions for various subjects and courses.
- Creating exams from the question pool.
-
Exam Execution: Allowing students to take exams.
-
Exam Grading: Automating the grading process and recording scores.
-
Data Processing: Managing, analyzing, and presenting statistics on exams, scores, and students.
The computerized system handles exams in two stages:
- Prepared Exams ("Stored"): Exams that are created and saved for future use.
- Active Exams ("Published"): Exams that are distributed to students. An exam can be used multiple times.
The content of the exams is created at two levels: Questions and Exams. Each teacher can create questions and exams for the subjects they teach.
Teachers can build a pool of questions for use in exams. A question consists of the following:
- Text: The question and instructions for answering.
- Four Answers: One of which is marked as the correct answer.
- Each question is associated with one or more courses within a subject and is uniquely identified by a 5-digit number.
Teachers create exams using questions from the pool. Each exam is identified by a 6-digit number. Exams include:
- Time limit (in minutes).
- Point allocation for each question.
- Instructions or general remarks in two categories:
- For students (visible during the exam).
- For teachers (not visible to students).
Exams can be conducted in two ways:
- Manual Exam: Students download a Word file, solve the exam, and upload their answers back into the system.
- Automated Exam: Students take the exam directly through the system, submitting their answers online.
For both methods, the system:
- Tracks time.
- Automatically closes the exam when the allocated time expires.
- Records the start and end times, number of students who began and completed the exam, and the number of students who didn't finish.
During an exam, a teacher can extend the time with the approval of the school principal. This change applies only to the current exam session and is recorded in the system.
Automatic grading is only available for computerized exams. The system checks answers based on the predefined data and assigns a grade. Teachers can:
- Approve the automatically assigned grade.
- Manually adjust the grade (requiring an explanation).
- Add comments to student submissions.
After grading, the system computes and stores statistics for each exam (average, median, and score distribution across deciles). These statistics are not available to students.
Students can view their exam scores and receive a copy of their graded exams for all computerized exams. Access is restricted to their personal results.
Teachers can access reports and statistical analysis for all the exams they have created, even if conducted by other teachers.
The principal can view:
- All data in the system (questions, exams, results).
- Statistical reports generated by the system, such as average, median, and decile distribution. The principal can also request custom reports based on how scores change:
- Across exams by the same teacher.
- Across exams within the same course.
- Across exams by the same student.
The system should be flexible enough to support minimal development work for generating additional reports in the future.
Each system user must authenticate with a username and password. All user-related data, including roles and permissions, is managed in a separate user management system. Multiple users can be connected to the system at the same time, but each user can only be logged in once.
- The system must be efficient and user-friendly.
- It should be designed for easy future updates, such as adding users or features.
- In the first phase, the system will operate only over the local network (no internet access), but it should be developed in a way that allows easy integration with a web interface in the future.
The system should meet the requirements outlined above and be developed in phases as directed throughout the semester. The system will have a distributed operational nature, allowing multiple users to interact with it simultaneously. It will follow a client-server architecture, using a relational database. Communication between the client and server will be based on IP/TCP protocols.
At this stage, a web interface is not required, but the system should be designed for easy web interface implementation in the future.
The project tasks must be completed collaboratively, with all group members participating in every part of the project. Each member must be involved in the development of all components.