Final Documentation AMS
Final Documentation AMS
SUPERVISOR’S RECOMMENTATION
I hereby recommend that this project prepared under my supervision by Manish Khadka
and Gunaraj Khatri entitled “Web based Attendance Management System” in partial
fulfillment of the requirements for the degree of Bachelor of Computer Application is
recommended for the final evaluation.
-----------------------------------
SIGNATURE
Lecturer
Nepalaya College
Kalanki, Kathmandu
i
Tribhuvan University
Faculty of Humanities and Social Sciences
Nepalaya College
LETTER OF APPROVAL
This is to certify that this project prepared by Manish Khadka and Gunaraj Khatri
entitled “Web based Attendance Management System” in partial fulfillment of
the requirements for the degree of Bachelor in Computer Application has been
evaluated. In our opinion it is satisfactory in the scope and quality as a project for
the required degree.
----------------------------- -----------------------------
Mr. Shaila Mitra Neupane Mr. Name of Coordinator
Lecturer Coordinator
Nepalaya College Nepalaya College
Kalanki, Kathmandu Kalanki, Kathmandu
----------------------------- -----------------------------
Internal Examiner External Examiner
Mr. Mr.
ii
ABSTRACT
Tracking and managing attendance of student is always an important factor for any insti-
tution during the analysis of student performance. Manual process of tracking attendance
needs a lot of paper work and consume more time. So, this attendance management sys-
tem is a solution to these all problem as it is a web based which allows teacher to record
the attendance of student easily via internet which reduces paper work and save valuable
time of teacher and student. This attendance system is user friendly as it uses REACT and
JS as frontend, NODE.JS for backend and MONGODB for database.
Furthermore, this attendance management system facilitates the different role of admin,
teacher and students. Admin has authority of adding teacher and students to the system
whereas teacher is provided with provision of taking attendance by logging into the sys-
tem and students can log in to the system and view their attendance record.
iii
Acknowledgement
We are thankful to all those who directly and indirectly guided and helped us to make this
project successful. A special gratitude to our semester project supervisor Mr. Shaila Mi-
tra Neupane whose guidance and suggestion were important factor for completing this
project more efficiently.
Kind opinion, suggestion, feedback and appropriate guideline of our teachers, friends and
parents helped us to sharpen our knowledge and try new things in our project. Our special
thanks are due to the staff and management team of Nepalaya college for providing nec-
essary resources and suitable environment to conduct the project.
At the end, we would like to appreciate everyone who were connected with us to make
this project possible by providing support, motivation and their valuable time.
iv
Table of Contents
1 Chapter 1: Introduction ................................................................................................ 1
1.1 Introduction........................................................................................................... 1
1.2 Problem Statement ............................................................................................... 2
1.3 Objectives .............................................................................................................. 3
1.4 Scope and limitation.............................................................................................. 3
1.4.1 Scope .............................................................................................................. 3
1.4.2 Limitation ....................................................................................................... 3
2 Chapter 2: Background Study and Literature Reviews ................................................. 5
2.1 Background Study ................................................................................................. 5
2.2 Literature Review .................................................................................................. 5
3 Chapter 3: System Analysis and Design ........................................................................ 9
3.1 System analysis ..................................................................................................... 9
3.1.1 Requirement Analysis .................................................................................... 9
3.1.2 Feasibility Analysis ....................................................................................... 11
3.1.3 Data Modeling (ER Diagram) ....................................................................... 12
3.1.4 Process Modeling (DFD) ............................................................................... 12
3.2 System Design ..................................................................................................... 15
3.2.1 Architectural Design..................................................................................... 15
3.2.2 Database Schema Design ............................................................................. 17
3.2.3 Physical DFD ................................................................................................. 18
4 Chapter 4: Implementation & Testing ........................................................................ 21
4.1 Implementation................................................................................................... 21
4.1.1 Tools Used (CASE tools, Programming languages, Database platforms) .... 21
4.1.2 Implementation Details of Modules (Description of procedures/functions)
22
4.2 Testing ................................................................................................................. 22
4.2.1 Test Cases for Unit Testing .......................................................................... 22
4.2.2 Test Cases for System Testing...................................................................... 24
.................................................................................................................................... 24
5 Chapter 5: Conclusion and Future Recommendations .............................................. 25
5.1 Lesson Learnt / Outcome .................................................................................... 25
5.2 Conclusion ........................................................................................................... 25
v
5.3 Future Recommendation .................................................................................... 25
References ......................................................................................................................... 26
vi
List Of Figures
Figure 1: Use Case Diagram of the system [3] ................................................................. 10
Figure 2:Gantt Chart showing schedule of the project ...................................................... 12
Figure 3:Level-0 DFD........................................................................................................ 13
Figure 4:Level-1 DFD........................................................................................................ 14
Figure 5:Level-2 DFD........................................................................................................ 15
Figure 6:MVC Architecture Design................................................................................... 16
Figure 7:Architectural Design............................................................................................ 17
Figure 8:Database Schema Design .................................................................................... 17
Figure 9:Context Diagram ................................................................................................. 18
Figure 10:1st Level DFD ................................................................................................... 19
Figure 11:2nd Level DFD .................................................................................................. 20
vii
List Of Abbreviation
viii
1 Chapter 1: Introduction
1.1 Introduction
To streamline the process of tracking student attendance, educational institutions are in-
creasingly turning to student attendance systems. These systems leverage the power of
technology to simplify the traditionally time-consuming and error-prone task of recording
and managing student attendance.
The benefits of implementing a student attendance system are manifold. Firstly, it reduces
the administrative burden associated with manual attendance management, freeing up
valuable time for educators and staff to focus on other essential tasks. Secondly, it pro-
vides real-time data on student attendance, enabling timely intervention for students who
may be consistently absent. This proactive approach to attendance monitoring can help
identify and address potential issues early, contributing to improved student outcomes.
Maintaining the attendance is one of the most vital aspects of an institution during the
analysis of the students’ performance. Each teacher has their own way of marking the at-
tendance. Some make use of the traditional method (pen and paper). Few teachers have
adopted to emerging technology of marking the attendance such as fingerprint scanner,
biometric device making us of iris scanner, face recognition, hand geometry and voice
recognition, etc. But these methods have a disadvantage such waiting in queue at their
time of entry into respective classrooms.[1] Attendance management system is a web-
based system through which teacher can easily keep record of attendance of students, stu-
dents and their parents can easily view record of attendance and admin can manage and
maintain the record.
1
1.2 Problem Statement
2
1.3 Objectives
The main goals of implementing a student attendance system are to improve how attend-
ance is managed in educational institutions and make it more efficient, accurate, and ef-
fective. Here are the specific objectives of a student attendance system:
i. To eliminate the need for manual paperwork and reduce administrative burden
and save time for teachers and administrators.
ii. To ensure accurate and reliable attendance records and minimize errors and
provide a dependable method for tracking student attendance.
iii. The system aims to provide comprehensive data analysis and reporting capa-
bilities.
In simple terms, implementing a student attendance system can make attendance man-
agement much easier and efficient. It helps ensure that attendance records are accurate,
allows educational institutions to intervene proactively when needed, and contributes to
better student performance and success.
1.4.1 Scope
With the help of attendance system, teacher can manage and record attendance systemati-
cally which directly benefits college, students and parents. Some scopes of the system
are:
1.4.2 Limitation
3
Nothing is perfect in this world. So, the attendance system made by us also has some
limitation. They are:
4
2 Chapter 2: Background Study and Literature Reviews
2.1 Background Study
For this project we got to deal with some of attendance management system. The systems
which were introduced earlier were not very advanced and didn't have real-time monitor-
ing capabilities. Over time, they started using the internet and cloud technology, which
allowed for real-time attendance tracking and access to attendance data from anywhere.
These systems could be accessed through computers or even mobile devices. Maintaining
the attendance is one of the most vital aspects of an institution during the analysis of the
students’ performance. Each teacher has their own way of marking the attendance. Some
make use of the traditional method (pen and paper). Few teachers have adopted to emerg-
ing technology of marking the attendance such as fingerprint scanner, biometric device
making us of iris scanner, face recognition, hand geometry and voice recognition, etc. But
these methods have a disadvantage such waiting in queue at their time of entry into re-
spective classrooms. Also now given the situation of the pandemic, it is putting everyone
using these devices at the risk as the devices are something that many people often touch
and use and this could possibly spread the virus in case an infected person makes use of
these devices. Attendance Management System is a vital component of any institution.
The tedious method of marking can be resolved by adding an automated system. The ac-
tual focus of this method is to provide with a system that can be robust and easy to use
and be available to everyone at a lower cost. This process is highly secured, feasible and
readily available to make full use of it through any browsers. Also, the faculty can check
their dashboard how many where present/absent in order to know if the student is having
enough attendance to allow the student for the final exam. We can make this to a business
intelligence tool to get all data analytics for the requires campus or institution for moni-
5
toring the performance and better development of the company’s growth and institution
welfare [1].
Some of the attendance systems are ClassDojo and Skyward. Created in 2011, ClassDojo
is an educational platform with a mission to “bring communities together and give them
the tools, ideas, and energy to improve education for all kids”. On ClassDojo, each stu-
dent has an avatar, and teachers can track student behavior through awarding (or subtract-
ing) points based on student performance. Teachers can decide what counts as good be-
havior and decide how often to communicate with parents using the platform. For exam-
ple, if a teacher decides that raising one’s hand is good behavior, students’ avatars receive
points for doing so. By contrast, if going to the bathroom out of turn is deemed bad be-
havior, then students’ avatars lose points. All of these behaviors are saved and moni-
tored—and potentially shared with parents. ClassDojo transforms the actions and behav-
iors of students (e.g., participating in a discussion, raising one’s hand or speaking out of
turn) into data that are recorded, stored and shared [2] From attendance sheets to timers
and everything in between, the Teacher Toolkit in ClassDojo will save time and energy
for what really matters—helping kids grow.
This attendance system is user friendly as it uses REACT and JS as frontend, NODE.JS
for backend and MONGODB for database. React (also known as React.js or ReactJS) is a
free and open front end JavaScript library to create user interface or UI components.
Saved by Facebook and the community of individual developers and companies. React
can be used as a basis for the development of single page or mobile applications. Howev-
er, the React is like that only concerned with state administration and delegating that sta-
tus to the DOM, so to create Responsive applications often require the use of additional
libraries to route, as well as the performance of a specific client side: Node.js is an open
source, cross platform, JavaScript background environment that uses V8 engine and uses
JavaScript code offline browser. It allows developers to use JavaScript to write command
line tools and with server-side scripting - uses scripts on the server side to generate dy-
6
namic web page content before the page is sent to the user's web browser. As a result,
Node.js stands for "JavaScript Everywhere" paradigm, which includes web application
development next to one programming language, there are different server-side languages
and client-side notes. Although JS is an extension of the standard JavaScript code file ex-
tension, the word "Node.js" does not refer to a specific file in this context and is simply a
name of the product. It has an event-driven project that can create asynchronous I / O.
These design decisions aim to improve performance and balance in web applications with
many input / download functions, as well as real-time web applications (e.g., real-time
communication systems and browser games). MongoDB is a documentary site designed
to facilitate application development and measurement. If your app stores any data (user
profiles, content, comments, uploads, events, etc.), you will need an easy-to-use site such
as React, Express, and Node. This is where MongoDB comes from. to: the JSON docu-
ments created at the end of your React.js can be sent to the Express.js server, where they
can be processed and (possibly allowed) stored directly in MongoDB for later retrieval.
MongoDB stores data in documents like JSON and these documents also support arrays
and objects placed in the nest [3].
Since entering the information age, educational informatization reform has become the
inevitable trend of the development of colleges and universities. The traditional education
management methods, especially the classroom attendance methods, not only need to rely
on a large amount of manpower for data collection and analysis but also cannot dynami-
cally monitor students’ attendance and low efficiency. The development of Internet of
things technology provides technical support for the informatization reform of education
management in colleges and universities and makes the classroom attendance manage-
ment in colleges and universities have a new development direction. Attendance is prime
important for both the teacher and student of an educational organization. So, it is very
important to keep record of the attendance. The problem arises when we think about the
traditional process of taking attendance in class room. Calling name or roll number of the
student for attendance is not only a problem of time consumption but also it needs energy.
So, an automatic attendance system can solve all above problems. There are some auto-
matic attendances making system which are currently used by much institution. One of
such system is biometric technique. Although it is automatic and a step ahead of tradi-
tional method it fails to meet the time constraint. The student has to wait in queue for giv-
ing attendance, which is time taking. This project introduces an involuntary attendance
7
marking system along with taking safety into consideration during or after this pandemic
by also checking the student's body temperature which ensures safety of the student, his
peers as well as the staff present in the school or university, devoid of any kind of inter-
ference with the normal teaching procedure. The system can be also implemented during
exam sessions or in other teaching activities where attendance is highly essential. This
system eliminates classical student identification such as calling name of the student, or
checking respective identification cards of the student, which can not only interfere with
the ongoing teaching process, but also can be stressful for students during examination
sessions. In addition, the students have to register in the database to be recognized. The
enrolment can be done on the spot through the user-friendly interface [4].
8
3 Chapter 3: System Analysis and Design
3.1 System analysis
In the process of analyzing the system, we focused on how things work together as a
whole in the system. we figured out functionality, usability, security and feasibility of the
system during system analysis During the analysis of system, we focused on needs, ex-
pectation and goal of the system as required by user. We also analyzed data and process
flow in the system during system analysis. During this phase we at first Requirements,
Identified Problems, Designed Solution, Managed Change, and Ensured quality.
9
Figure 1: Use Case Diagram of the system [3]
The above figure illustrates the different role of student, admin and teacher. we can see
that Admin can Login and Logout system. Admin can add, update, view and delete teach-
ers and students. Teacher can take attendance of students. Student can see their attend-
ance.
iii. Reliability
The website should offer high degree of reliability. Stable network connection should
be available all the time.
10
3.1.2 Feasibility Analysis
During the feasibility analysis our aim was to uncover the strengths and weaknesses of
the proposed project. This study was undertaken to determine the possibility of either im-
proving the existing system or to develop a completely new system
a) Technical Feasibility
For technical feasibility we made sure that the proposed system can be developed us-
ing easily available tools and can be handled in a home environment. Each of the
equipment that we ought to use were affordable and are mostly free of cost. Hence,
we concluded that the system was technically feasible.
b) Operational Feasibility
For the operational feasibility we focused on the degree to which the proposed devel-
opment projects fits in with the existing environment. In this system, all the features
were implemented using its own database. Furthermore, this system was compatible
on all devices. Hence, this system was operationally feasible.
c) Economic Feasibility
The purpose of economic feasibility was to have an analysis of economic benefit to
the organization. Users only need internet facility to access the website. So, the pro-
posed project was economical and can serve user’s required purpose.
d) Schedule Feasibility
For the schedule feasibility we calculated the time that would be taken to develop the
software. We made sure that the system would be completed within six months.
The project’s tasks and milestones has been divided as shown in the given figure below:
11
Gantt Chart
8-Apr 28-Apr 18-May 7-Jun 27-Jun 17-Jul 6-Aug 26-Aug 15-Sep
Project Selection
Proposal Submission
Planning
Research & Analysis
Design
Programming
Implementation
Testing
Maintenance
Documentation
Presentation
An Entity-Relationship (ER) diagram is a visual way to show how different things (enti-
ties) are related to each other in a database but we used MongoDB for this project and
MongoDB is not a relational database, so traditional ER modeling does not apply.
Process modeling is like creating a step-by-step map that shows how something gets
done. So here we used process modeling so that it helps us understand and explain the
sequence of actions, decisions, and interactions needed to complete a task or achieve a
goal. It's like drawing a picture that guides us through the journey of accomplishing
something.
A Data Flow Diagram (DFD) is a simple way to show how information moves through a
system. It uses arrows and shapes to represent where data comes from, where it goes, and
how it's processed. It's like drawing a map that illustrates how information travels within
a computer or a process.
12
Level-0 DFD is also called a context DFD. The context level DFD describes the entire
system at a high level. In this level the whole system is defined as a single process and its
relationship with external entities. In this DFD there are three main external entities:
● Student
● Teacher
● Admin
● student attendance
● user management
● batch management
13
Figure 4:Level-1 DFD
level-2 DFD of attendance system further breaks the process into more details subpro-
cess. This level adds all necessary data store and information.
14
Figure 5:Level-2 DFD
For designing the system, we focused on planning and creating a detailed plan for how a
computer system or software will work. Here we focused on what the system should do,
how different parts will interact, and what technologies or components will be used. It's
like creating a step-by-step instruction manual for building and using a digital tool or pro-
gram.
For Architectural design we focused on how different parts of a system will work togeth-
er, what they'll look like, and how they'll communicate. We made sure that just like an
architect plans rooms, doors, and windows in a house, an architectural design plans com-
ponents, connections, and interactions in a computer system.
15
Figure 6:MVC Architecture Design
The above diagram shows how different components in our system are related to each
other. It explains how client and server are connected.
16
Figure 7:Architectural Design
The above diagram shows the connection between React.JS, Node.JS and Mongo
DB.
17
The above figure shows the skeleton structure that represents the logical view of the en-
tire database. It defines how the data is organized and how the relations among them are
associated.
It explains the best method to implement the business activities of the system.
Moreover, it involves the physical implementation of devices and files required for
the business processes. All of the below diagrams have been visualized for data
processing and structured design of Online furniture shopping system and working
flow.
18
First Level DFD (1st Level)
It shows how the system is divided into subsystems, each of which deals with one
or more of the data flows to or from an external agent and which together provide
all of the functionality of the system as a whole. DFD level 1 provides a more de-
tailed breakout of pieces of the zero level DFD where we will highlight the main
functionality of attendance management system.
DFD level 2 goes one step deeper into parts of level 1 of the attendance manage-
ment system. It may require more functionalities to reach the necessary level of
detail about the system functioning. It contains more low-level functionalities of
the attendance management system.
19
· Admin can add, edit, delete and view the students and teacher.
· Admin can generate report.
20
4 Chapter 4: Implementation & Testing
4.1 Implementation
System implementation is most crucial phase in any project. In this phase designed doc-
uments were used to produce code to make the system work. Attempts have been made to
make the system simple and user friendly. In this project REACT was used for frontend.
NODE JS was used for backend and MONGODB was used to store all the information
related to attendance of the students. This project is practical and can be used in a real
time scenario. efforts were made to classify different role to students, admin and user.
REACT: React is a JavaScript library for building user interfaces. In this pro-
ject, we used it to build single-page applications and to create reusable UI
components. With react, we created view layer of the system.it made the
frontend development very easy.
NODE JS: Node.js is an open-source, server-side JavaScript runtime environ-
ment that allows you to execute JavaScript code on the server. We used it to
create the backend of the attendance management system. It was used for han-
dling HTTP requests, processing data, interacting with MONGODB. It was al-
so used to implement user authentication and authorization mechanisms to en-
sure that only authorized individuals can access and manage attendance rec-
ords.
MONGODB: We used MongoDB for creating an Attendance Management
System (AMS) due to its flexibility, scalability, and ability to handle semi-
structured data. It is used to store attendance records, user details (such as
name, email, role) and class/course details in separate collections.
21
4.1.2 Implementation Details of Modules (Description of proce-
dures/functions)
The website that we created can be divided into several main functional module as given
below:
Admin Module: This module is dedicated for the functionality of admin. Accord-
ing to this module admin can add and delete students and teacher. They can also
add different batches of college in the system and put students and teacher in their
corresponding batches. This module has also made the provision for admin to take
attendance and view the past attendance of students.
Teacher Module: This module has made the provision for teacher to log in into the
system and take the attendance of the students of the batch in which they have
been associated by the admin. According to this module, teacher also can view the
past attendance of students and they would be informed by the system if the at-
tendance has been taken before.
Student Module: This module is oriented for students. It has provided the provi-
sion of viewing their past attendance. They can figure out the day in which they
were present or absent or they had taken leave.
4.2 Testing
Testing of the system was done to check whether the system that we created was accord-
ing to our wish or not. Testing was done with motive to find the error, if present in the
system. The testing performed in this project are given below:
In unit testing, we tested various modules individually. By this we made sure if the ex-
pected result were actually seen on the screen. The following are test cases with which
unit testing was conducted
22
page for invalid
input with mes-
sage credential
didn’t match
2. Test for adding batches Batch name and A batch to appear Pass
by admin course name with batch name
and course name
with increment in
number of batches
3. Test for adding teacher Valid name and Teacher name Pass
by admin email id added with email
with increment in
number of teachers
4. Test for login entry for Valid and invalid Teacher page Pass
teacher email and pass- loaded for valid
word of teacher email id and pass-
word and redi-
rected to same
page for invalid
input with mes-
sage credential
didn’t match
5. Test for login entry for Valid and invalid Student page load- Pass
student email and pass- ed for valid email
word of student id and password
and redirected to
same page for in-
valid input with
message credential
didn’t match
23
4.2.2 Test Cases for System Testing
In system testing we check if the system is working without error after combining all the
module. Various verification is done to see the system has met specification and its objec-
tive. When the final model was tested the output was as expected.
24
5 Chapter 5: Conclusion and Future Recommendations
5.1 Lesson Learnt / Outcome
Our main objective of this project was to create a web application that has a strong login
and logout system and includes all the functions of an attendance system. During this en-
tire project we got to learn a lot of things. We got the basic understanding of development
and challenges of Attendance Management System. We also learn that completion of pro-
ject on time is most necessary thing for customer satisfaction. Testing and verification
should be done very carefully as it is also the most important phase of any project. Over-
all, this project added a new experience to our life with great learning.
5.2 Conclusion
This Attendance Management System will make the attendance easier, faster and effi-
cient. The system is very friendly to the user. They can easily learn about it and apply this
system in the class. The system is made using REACT, NODE JS and MONGO DB, so it
can be executed in any system. This system can be a boon to teacher and administration
as it will make their work easier by reducing lot of paper work.
This is web-based system so user have to work online. It facilitates Admin, Teacher and
student to login and use the system. Admin can add and delete batches and correspond
teacher and student to those batches. Teacher can take attendance of students of the batch
in which they are assigned by the school administration. Student can view their past at-
tendance. So, this system in overall would make school administration, teacher and stu-
dent easier than before where they used to take attendance manually.
We have created the system in such a way that it can be modified in future according to
our requirement. We have followed all the process that takes place in software develop-
ment environment. Some of the future recommendations are given below:
This system can be used by the school and college administration for recording at-
tendance of student.
The system can be further extended if more features are required in future
Apart from school, the system can be extended and be used in hospital and offices
to record the presence/absence of staff.
25
References
[1] P.Y. Vismitha, “ATTENDANCE MANAGEMENT SYSTEM”, International
Journal of Computer Science and Information Technology Research, vol.10,
pp.1-4, September 2022
[2] M.Chiarelli, S. Szabo, S. Williams, “Using Class Dojo to help with class
room management during guided reading”, Texas Journal of Literacy Educa-
tion, vol.3, pp.81-88, July 2015
[3] S.A. Bafna, P.D. Dutonda, S.S. Mamidwar, M.S. Korvate, D. Shirbhare, “Re-
view on study and usage of Mern Stack for Web Development”, International
Journal for Research in Applied Science and Engineering Technology, vol.10,
pp.2-3, Feb 2022
[4] B.N. Parashar, A.A. Mathews, “Smart Attendance Management System”, In-
ternational Research Journal of Engineering and Technology, vol.8, pp.1-2,
May 2021
26
Appendix
27
Figure 14: Admin Home Page
28
Figure 16: Add Teacher
29
Figure 18: Add Student
30
Figure 20: Assign Teacher in Batches
31
Figure 22: Assign Student in Batches
32
Figure 24: Attendance page
33
Figure 26: Attendance Download
34
Figure 28: Teacher Home Page
35
Figure 30: Student Home Page
36
Figure 32: Student Attendance Download
37