DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
UNIVERSITY OF SCHOLARS
PROJECT PROPOSAL
Online Class Attendance Management System
Project Course: IDP1 / IDP2
| Project Information | |
|---|---|
| Project Title | Online Class Attendance Management System |
| Project Course | IDP1 / IDP2 |
| Project Type | Web-Based Application |
| Proposed By | [Student Name] |
| Student ID | [Student ID] |
| Batch | [Batch Number] |
| Section | [Section] |
| Submission Date | [Date] |
1. Introduction
Attendance is an important part of academic activities in any university. Teachers need to keep track of students' attendance in every class, while students also need to know how regularly they are attending their courses.
In many cases, attendance is still managed using paper registers or spreadsheets. Teachers have to record attendance manually, calculate percentages, and prepare reports when required. This can take additional time, especially when they handle multiple courses and sections.
To make this process easier, we propose an Online Class Attendance Management System. It will be a web-based application where teachers can record attendance, students can check their attendance records, and administrators can manage the overall attendance information.
The main purpose of this project is to make attendance management easier, faster, and more organized for everyone involved.
2. Problem Statement
Managing attendance manually can create several problems for teachers, students, and academic administrators. Some common problems are:
- Teachers spend extra time recording attendance in every class.
- It is difficult to maintain attendance records for a large number of students.
- Manual calculations may result in incorrect attendance percentages.
- Students cannot always check their updated attendance information.
- Finding previous attendance records takes additional time.
- Preparing course-wise or student-wise attendance reports can be difficult.
These problems indicate the need for a simple computerized system that can store attendance information and make it available whenever required.
3. Project Objectives
The main goal of this project is to develop a web-based system that simplifies the attendance management process.
- To maintain student, teacher, course, and section information in one system.
- To allow teachers to record attendance through a web interface.
- To keep attendance records for every class session.
- To calculate students' attendance percentages automatically.
- To allow students to check their attendance records.
- To help administrators manage academic attendance information.
- To generate attendance reports for individual students and courses.
- To reduce the time and effort required for manual attendance management.
4. Overview of the Proposed System
The proposed system will provide separate access for administrators, teachers, and students. Each user will have different responsibilities based on their role.
4.1 Administrator
The administrator will be responsible for maintaining the basic information of the system.
- Add, update, and manage student information.
- Maintain teacher information.
- Create courses and sections.
- Assign teachers to courses and sections.
- Manage course enrollment information.
- View attendance reports.
4.2 Teacher
Teachers will use the system to record and manage attendance for their assigned courses.
- Log in to their accounts and view assigned courses and sections.
- Create attendance sessions for scheduled classes.
- Mark students as Present, Absent, or Late.
- Correct attendance records when necessary and authorized.
- View attendance summaries and generate course-wise reports.
4.3 Student
Students will have access to their personal attendance information.
- Log in to their accounts.
- View their registered courses.
- Check attendance records for individual courses.
- View attendance percentages.
- Identify courses where their attendance is low.
5. Project Scope
The initial version of the system will focus on the basic attendance management activities of a university.
| Module | Main Activities |
|---|---|
| Login System | User login and role-based access |
| Student Management | Add and update student information |
| Teacher Management | Maintain teacher profiles |
| Course Management | Create and manage courses |
| Section Management | Maintain batch and section information |
| Enrollment Management | Assign students to courses |
| Attendance Management | Record and update attendance |
| Attendance Calculation | Calculate attendance percentages |
| Report Management | Generate attendance reports |
| Student Dashboard | Display personal attendance information |
Features Outside the Initial Scope
To keep the project manageable, the first version will not include facial recognition, biometric attendance, GPS tracking, or a separate mobile application. These features may be considered for future development.
6. Functional Requirements
| ID | Functional Requirement |
|---|---|
| FR-01 | Users can log in using their registered credentials. |
| FR-02 | The administrator can manage student information. |
| FR-03 | The administrator can manage teacher information. |
| FR-04 | The administrator can create courses and sections. |
| FR-05 | The administrator can assign teachers to courses. |
| FR-06 | Teachers can view their assigned courses. |
| FR-07 | Teachers can create attendance sessions. |
| FR-08 | Teachers can mark students as Present, Absent, or Late. |
| FR-09 | The system will prevent duplicate attendance entries for the same student and class session. |
| FR-10 | The system will calculate attendance percentages automatically. |
| FR-11 | Students can view their attendance history. |
| FR-12 | The system can generate student-wise and course-wise attendance reports. |
| FR-13 | Authorized users can update incorrect attendance records. |
7. Non-Functional Requirements
Security: Students should only be able to view their own attendance records. Teachers should only manage their assigned courses.
User-Friendliness: The application should have a simple interface that users can understand without extensive training.
Performance: Attendance records and reports should be displayed within a reasonable time.
Reliability: The system should store attendance information correctly and avoid losing records.
Maintainability: The application should be organized so that new features can be added in the future.
Data Integrity: The database should maintain proper relationships among students, courses, sections, teachers, and attendance records.
8. Proposed Technologies
The project will be developed using Java-based web technologies and Oracle Database.
| Component | Technology |
|---|---|
| Frontend | HTML, CSS, JavaScript, Bootstrap |
| Web Application | JavaServer Pages (JSP) |
| Programming Language | Java |
| Database | Oracle Database |
| Database Connectivity | JDBC |
| Web Server | Apache Tomcat |
| IDE | Apache NetBeans/ Eclipse IDE /Visual Studio Code (VS Code) |
| Database Management Tool | Oracle SQL Developer |
| Database Programming | SQL and PL/SQL |
JSP will be used to develop the web pages, while Java will handle the application logic. JDBC will connect the application with Oracle Database, where all system information will be stored.
9. Proposed System Architecture
The application will follow a three-tier architecture.
Presentation Layer: This layer will contain the web pages developed using JSP, HTML, CSS, JavaScript, and Bootstrap. Users will interact with the application through these pages.
Application Layer: Java classes will handle the main operations, such as login validation, attendance recording, attendance calculation, and report generation.
Database Layer: Oracle Database will store all student, teacher, course, enrollment, and attendance information.
JDBC will be used to exchange information between the Java application and Oracle Database.
10. Proposed Database Design
Oracle Database will be used to store and manage all information related to the system.
10.1 Main Database Tables
| Table Name | Important Attributes |
|---|---|
| STUDENT | STUDENT_ID, NAME, EMAIL, SECTION_ID |
| TEACHER | TEACHER_ID, NAME, EMAIL |
| COURSE | COURSE_ID, COURSE_NAME, CREDIT |
| SECTION | SECTION_ID, SECTION_NAME, BATCH |
| COURSE_OFFERING | OFFERING_ID, COURSE_ID, SECTION_ID, TEACHER_ID |
| ENROLLMENT | ENROLLMENT_ID, STUDENT_ID, OFFERING_ID |
| ATTENDANCE_SESSION | SESSION_ID, OFFERING_ID, SESSION_DATE |
| ATTENDANCE | ATTENDANCE_ID, SESSION_ID, STUDENT_ID, STATUS |
10.2 Relationships Between Tables
- A section can have many students.
- A course can have multiple course offerings.
- A teacher can teach multiple course offerings.
- A course offering can have many enrolled students.
- A course offering can have multiple attendance sessions.
- Each attendance session can contain attendance records for many students.
- Each attendance record will be linked to one student and one attendance session.
10.3 Database Constraints
The following constraints will be used to maintain accurate records:
- Primary Key
- Foreign Key
- NOT NULL
- UNIQUE
- CHECK
For example, the attendance table will have a foreign key referencing the student table and another foreign key referencing the attendance session table. A unique constraint on the combination of session ID and student ID will prevent duplicate attendance records.
11. Main Application Modules
The application will be developed in separate modules to make the development and maintenance process easier.
- Login Module: Handles user authentication.
- Administrator Module: Manages the overall system information.
- Student Module: Maintains student profiles.
- Teacher Module: Maintains teacher information.
- Course Management Module: Manages courses and sections.
- Enrollment Module: Maintains student enrollment in courses.
- Attendance Session Module: Creates and manages class sessions.
- Attendance Recording Module: Records students' attendance.
- Attendance Calculation Module: Calculates attendance percentages.
- Report Module: Generates different attendance reports.
- Student Dashboard: Displays individual attendance information.
12. Proposed SQL and PL/SQL Implementation
Since Oracle Database will be used, the project will also demonstrate practical database programming.
DDL Operations: CREATE, ALTER, and DROP will be used to create and modify database objects.
DML Operations: INSERT, UPDATE, and DELETE will be used to manage records.
SQL Queries: SELECT, JOIN, WHERE, GROUP BY, and ORDER BY will be used to retrieve information.
SQL Functions: COUNT, SUM, AVG, and NVL will be used where appropriate.
Stored Procedures: A stored procedure may be developed to calculate and retrieve attendance summaries for a particular course.
Functions: A PL/SQL function may return the attendance percentage of a particular student in a particular course.
Triggers: A database trigger may be used to maintain an attendance modification history whenever an attendance record is updated.
Transaction Management: Transactions will help ensure that database changes are completed consistently.
13. Development Methodology
The project will follow the Software Development Life Cycle (SDLC). The development work will be divided into several stages.
- Planning: Identify the project idea, objectives, and expected outcomes.
- Requirement Analysis: Understand the needs of administrators, teachers, and students.
- System Design: Prepare the necessary diagrams, database structure, and interface designs.
- Database Development: Create Oracle tables, relationships, constraints, procedures, functions, and triggers.
- Application Development: Develop the web pages and application logic using JSP and Java.
- Database Integration: Connect the application with Oracle Database using JDBC.
- Testing: Check whether the system functions correctly and handles errors properly.
- Deployment: Run the application using Apache Tomcat.
- Documentation: Prepare the final project report and user instructions.
An iterative approach may be followed so that the system can be improved as development and testing progress.
14. Proposed System Diagrams
During the analysis and design stages, the following diagrams will be prepared:
- Use Case Diagram
- Activity Diagram
- Sequence Diagram
- Entity Relationship Diagram (ERD)
- Class Diagram
- Data Flow Diagram (DFD)
- System Architecture Diagram
These diagrams will help explain how the system works, how users interact with it, and how information moves between different parts of the application.
15. Feasibility Analysis
15.1 Technical Feasibility
The proposed system can be developed using JSP, Java, JDBC, and Oracle Database. These technologies provide the necessary facilities for developing and managing a web-based application.
15.2 Economic Feasibility
The project can be developed using available development tools and computing facilities. Therefore, the overall development cost can be kept relatively low.
15.3 Operational Feasibility
The system is designed for administrators, teachers, and students. Its simple interface will make it easier for them to perform their regular attendance-related activities.
15.4 Schedule Feasibility
The project can be completed within the academic project period by dividing the work into smaller tasks and following a planned development schedule.
16. Proposed Project Timeline
The following timeline is an initial plan for completing the project.
| Week | Planned Activities |
|---|---|
| Week 1 | Project selection and proposal preparation |
| Week 2 | Requirement collection and analysis |
| Week 3 | Feasibility study and project planning |
| Week 4 | UML diagrams and database design |
| Week 5 | User interface design |
| Week 6–7 | Oracle database and Java backend development |
| Week 8–9 | Attendance management module development |
| Week 10 | Student and administrator modules |
| Week 11 | Attendance calculation and report generation |
| Week 12 | Application and database integration |
| Week 13 | Testing and bug fixing |
| Week 14 | Final documentation |
| Week 15 | Project demonstration and presentation |
17. Expected Outcomes
After completing the project, we expect to have a working web-based attendance management application.
The system should allow:
- Administrators to manage student, teacher, course, and section information.
- Teachers to record and manage attendance for their assigned courses.
- Students to check their attendance records and percentages.
- The system to calculate attendance percentages automatically.
- Users to generate different attendance reports.
Through this project, we will also gain practical experience in JSP, Java, JDBC, Oracle Database, SQL, PL/SQL, and software development.
18. Conclusion
The Online Class Attendance Management System is intended to make the regular attendance management process easier for universities and educational institutions.
Instead of maintaining attendance records manually, teachers will be able to record attendance through a web application. Students will also have the opportunity to check their attendance information whenever needed.
We plan to develop the application using JSP, Java, JDBC, and Oracle Database. This project will help us apply the knowledge gained from programming, database management, and software engineering courses to solve a practical academic problem.
— End of Project Proposal —
কোন মন্তব্য নেই:
একটি মন্তব্য পোস্ট করুন