Final Documentation AMS
Final Documentation AMS
Final Documentation AMS
SUPERVISOR’S RECOMMENTATION
-----------------------------------
SIGNATURE
Lecturer
Nepalaya College
Kalanki, Kathmandu
i
Tribhuvan University
Faculty of Humanities and Social Sciences
Nepalaya College
LETTER OF APPROVAL
----------------------------- -----------------------------
Mr. Shaila Mitra Neupane Mr. Name of Coordinator
Lecturer Coordinator
Nepalaya College Nepalaya College
----------------------------- -----------------------------
Internal Examiner External Examiner
Mr. Mr.
ABSTRACT
i
i
Tracking and managing attendance of student is always an important factor for any
institution 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 system 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
system and students can log in to the system and view their attendance record.
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
Mitra 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 necessary 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.
i
ii
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
iv
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
5.3 Future Recommendation ....................................................................................
25
References .........................................................................................................................
26
v
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
vi
List Of Abbreviation
JS Java Script
UI User Interface
ER Entity Relationship
vii
1 Chapter 1: Introduction
1.1 Introduction
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 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 webbased system through which teacher can easily keep record of
1
attendance of students, students and their parents can easily view record of attendance
and admin can manage and maintain the record.
2
1.3 Objectives
The main goals of implementing a student attendance system are to improve how
attendance is managed in educational institutions and make it more efficient, accurate,
and effective. Here are the specific objectives of a student attendance system:
1.4.1 Scope
With the help of attendance system, teacher can manage and record attendance
systematically which directly benefits college, students and parents. Some scopes of
the system are:
3
1.4.2 Limitation
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
monitoring 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 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. 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 actual 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
5
data analytics for the requires campus or institution for monitoring 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 student has an avatar, and teachers can track student behavior through awarding (or
subtracting) points based on student performance. Teachers can decide what counts as
good behavior and decide how often to communicate with parents using the platform.
For example, 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 behavior, then students’ avatars lose points. All of these behaviors are
saved and monitored—and potentially shared with parents. ClassDojo transforms the
actions and behaviors 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.
However, the React is like that only concerned with state administration and delegating
that status 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
6
side to generate dynamic 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 extension, 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 documents 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 dynamically 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 management 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 automatic 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 traditional method it fails to meet the time
7
constraint. The student has to wait in queue for giving attendance, which is time taking.
This project introduces an involuntary attendance 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 interference 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,
expectation 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
teachers and students. Teacher can take attendance of students. Student can see their
attendance.
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
improving 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
using 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
development 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
proposed 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
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 subprocess. 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
program.
For Architectural design we focused on how different parts of a system will work
together, 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 components, 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
entire 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
detailed 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
management 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.
System implementation is most crucial phase in any project. In this phase designed
documents 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
20
used in a real time scenario. efforts were made to classify different role to students,
admin and user.
The website that we created can be divided into several main functional module as given
below:
21
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 attendance has been taken before.
• Student Module: This module is oriented for students. It has provided the
provision 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
according 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
expected result were actually seen on the screen. The following are test cases with
which unit testing was conducted
S.N. Test objective Test data Expected result Pass/Fail
1. Test for login entry for Valid and invalid Admin page to Pass
admin name and be loaded for
password of admin valid input and
redirected to
same
page for invalid
input with message
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
22
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 loaded for valid
password of email id and
teacher password and
redirected to same
page for invalid
input with message
credential didn’t
match
5. Test for login entry for Valid and invalid Student page Pass
student email and loaded for valid
password of email id and
student password and
redirected to same
page for invalid
input with message
credential didn’t
match
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
objective. When the final model was tested the output was as expected.
23
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
entire 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 project on time is most necessary thing for customer satisfaction. Testing
24
and verification should be done very carefully as it is also the most important phase of
any project. Overall, 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
efficient. 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 attendance. So, this system in overall would make school administration, teacher
and student 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
development environment. Some of the future recommendations are given below:
• This system can be used by the school and college administration for recording
attendance 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.
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
Education, vol.3, pp.81-88, July 2015
25
[3] S.A. Bafna, P.D. Dutonda, S.S. Mamidwar, M.S. Korvate, D. Shirbhare,
“Review 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”,
International Research Journal of Engineering and Technology, vol.8, pp.1-
2,
May 2021
26
Appendix
27
Figure 14: Admin Home Page
28
Figure 15: Add Batch
29
Figure 17: Teacher page
30
Figure 19: Student Page
31
Figure 21: Teacher Assigned
32
Figure 23: Student Assigned
33
Figure 25: Previous Attendance View Page
34
Figure 27: Teacher Login Page
35
Figure 29: Teacher Attendance Page
36
Figure 31: Student Attendance View
37