0% found this document useful (0 votes)
25 views

Vrabhfs

Uploaded by

rambeede
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Vrabhfs

Uploaded by

rambeede
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 42

QR CODE BASED ATTENDANCE SYATEM

1. INTRODUCTION

The QR Code Attendance System is an innovative solution that automates the process of
tracking attendance, providing a more efficient, accurate, and secure alternative to traditional
methods. By using Quick Response (QR) codes, each participant (such as a employee) is assigned a
unique code that can be scanned using a smartphone or dedicated scanner. The scanned data is then
instantly recorded into the system, capturing essential information like the user's identity, time, and date
of attendance, without the need for manual input. This technology simplifies the check-in process,
reducing human error and saving valuable time.
One of the key advantages of a QR code-based attendance system is its speed and ease
of use. Users simply scan their individual QR code upon arrival, and their attendance is
automatically logged. This eliminates the need for lengthy roll calls or physical sign-ins, streamlining
the entire process. Additionally, the system can be integrated with real-time data tracking, providing
instant updates for administrators or teachers, making it easier to monitor attendance and generate
reports on participant behavior, such as late arrivals or absences.
Moreover, the QR Code Attendance System offers enhanced security by ensuring that only
authorized users can mark their attendance, preventing fraudulent activities like proxy attendance. It
also contributes to sustainability by reducing the need for paper- based records and sign-in sheets.
Whether used in educational institutions, corporate settings, or large-scale events, QR code
attendance systems are not only cost- effective and environmentally friendly but also provide a
scalable solution that adapts to the needs of different organizations.

1.1 MOTIVATION

The motivation behind this project stems from the inherent limitations and inefficiencies of
traditional manual attendance tracking systems. Manual processes are often plagued by human error,
timeconsuming data entry, and security concerns, leading to inaccurate records and decreased
productivity. Moreover, the environmental impact of paper-based attendance sheets and the
administrative burden of storing and retrieving historical attendance records are significant drawbacks.
With the increasing demand for digital transformation and process automation, there is a pressing need
for a reliable, efficient, and innovative attendance management solution. This project aims to address
these challenges by leveraging
1
QR CODE BASED ATTENDANCE SYATEM

QR code technology, Python, and MySQL database management to create a streamlined, user-friendly, and
cost-effective attendance tracking system, enhancing operational efficiency, employee accountability, and
organizational productivity.

This project is motivated by the desire to revolutionize attendance management by overcoming


the shortcomings of traditional manual systems. The goal is to create a seamless, efficient, and secure
attendance tracking experience, eliminating errors, reducing administrative burdens, and promoting
sustainability. By harnessing cutting-edge technology, this project seeks to transform the way
organizations track attendance, enhancing employee accountability, operational efficiency, and overall
productivity.

1.2 PROBLEM DEFINITION

The traditional employee attendance management system is plagued by inefficiencies,


inaccuracies, and security concerns. Manual attendance tracking using paper-based sheets or outdated
digital systems leads to human errors, time-consuming data entry, and compromised data integrity.
Additionally, these systems are vulnerable to tampering, falsification, and loss of records, resulting in
decreased employee accountability and organizational productivity. Furthermore, the environmental
impact of paper-based systems and the administrative burden of storing and retrieving historical
attendance records exacerbate the issue. The lack of real-time attendance tracking, automated reporting,
and analytics capabilities hinders informed decisionmaking and strategic workforce management. This
project seeks to address these challenges by designing and implementing a reliable, efficient, and
innovative QR Code Based Attendance System.

1.3 OBJECTIVE OF PROJECT

The primary objective of this project is to design and implement an efficient, secure, and innovative

attendance management system. The specific objectives of this project are:

2
QR CODE BASED ATTENDANCE SYATEM

 To develop a reliable and accurate attendance tracking system using QR code technology,

minimizing human error and ensuring data integrity.

 To create a user-friendly and accessible interface for employees to mark attendance, reducing

administrative burdens and enhancing employee experience.

 To implement a real-time attendance tracking and reporting system, enabling managers to

monitor attendance patterns, identify trends, and make informed decisions.

 To ensure the security and confidentiality of attendance data, utilizing robust encryption and

access controls to prevent unauthorized access or tampering.

By achieving these objectives, the QR Code Based Attendance System will streamline attendance

management, enhance operational efficiency, and promote employee accountability.

1.4 LIMITATIONS OF PROJECT

 Dependence on QR code scanning technology and internet connectivity, which can be


unreliable.

 Limited scalability, making it challenging to deploy in large-scale settings.

 Vulnerability to cyber-attacks and data breaches, compromising attendance data confidentiality.

 User-related issues, such as employee cooperation and adherence to attendance policies,

impacting accuracy.

 Significant upfront investment in hardware and software, plus potential customization, posing

implementation barriers.

3
QR CODE BASED ATTENDANCE SYATEM

2. LITERATURE SURVEY

2.1INTRODUCTION

The Reed-Solomon error correction algorithm is a key feature in QR code- based attendance
systems. It plays a critical role in ensuring accurate data retrieval from QR codes, even when parts of
the code are damaged or obscured. This algorithm is responsible for interpreting the data by analyzing
the QR code’s structural patterns.

How It Works
When a QR code is scanned using a camera or imaging device, the Reed- Solomon algorithm
processes the captured image. It examines the patterns found in both the horizontal and vertical
components of the QR code to extract the encoded information. The algorithm applies error correction
techniques to recover any missing or corrupted data, enabling the system to read and interpret the code
even under less-than-ideal conditions.

Benefits:

 Damage Tolerance: The Reed-Solomon algorithm allows QR codes to be scanned and decoded
even if part of the code is blocked or damaged.

 Micro QR Codes: It can recover data from micro QR codes that may be up to 25% damaged or

obscured.

 Reliability: The algorithm ensures that QR codes can be successfully read in real-world
scenarios where dirt, wear, or environmental factors might partially cover the code, making it
particularly useful for attendance systems in dynamic settings.

2.2 EXISTING SYSTEM WITH LIMITATIONS

The traditional employee attendance management system has been in place for many years,
serving as the foundation for tracking employee attendance and work hours. In the existing system,

4
QR CODE BASED ATTENDANCE SYATEM

employees typically sign in and out using paper-based attendance sheets. These sheets are usually kept
at the entrance or specific locations within the workplace. It also requires the physical presence of
employees to record attendance. The existing system lacks automation, making it time-consuming and
prone to errors LIMITATIONS:

 Human Error

 Time-Consuming

 Environmental Impact

 Storing and retrieving historical attendance


 Security

2.3 PROPOSED SYSTEM WITH ADVANTAGES

The proposed “QR Code Based Attendance System ” represents a modern and technologically
advanced solution for efficient attendance management. This system aims to overcome the limitations
of manual attendance tracking systems and streamline the process through the integration of QR code
technology, Python, and MySQL database management.

ADVANTAGES :

 Real-Time Attendance Tracking

 User-Friendly Interface

 Environmental Benefits

 Reduced Administrative Burden

 Cost-Effective

2.4 CONCLUSION

The proposed QR Code Based Attendance System offers a significant improvement over traditional
manual attendance tracking methods. By leveraging the robust Reed-Solomon algorithm and QR code
technology, this system ensures reliable and efficient attendance tracking, even in dynamic settings. The
proposed system overcomes the limitations of human error, time-consuming processes, environmental
impact, and security concerns associated with manual attendance tracking. With real-time attendance
tracking, user-friendly interface, environmental benefits, reduced administrative burden, and

5
QR CODE BASED ATTENDANCE SYATEM

costeffectiveness, this system is poised to revolutionize attendance management. By integrating Python


and MySQL database management, the system provides a scalable and secure solution for organizations
seeking to streamline their attendance tracking processes. Ultimately, the QR Code Based Attendance
System promises to enhance operational efficiency, reduce costs, and improve employee accountability,
making it an indispensable tool for modern organizations.

3. ANALYSIS

3.1 INTRODUCTION
This analysis provides an in-depth examination of the QR Code Based Attendance System
project,
evaluating its technical feasibility, functional effectiveness, and operational efficiency. The project aims
to replace traditional manual attendance tracking methods with a digital solution leveraging QR code
technology. Through a comprehensive analysis, this study assesses the system’s strengths and
weaknesses, identifying areas for improvement and optimization. The analysis encompasses various
aspects, including system architecture, user interface, data security, scalability, and integration with
existing infrastructure. By evaluating the project's design, development, and implementation, this
analysis provides valuable insights into the system’s potential to enhance attendance management,
streamline administrative processes, and improve organizational productivity.

3.2 SOFTWARE REQUIREMENTS:

 Operating system : Windows8 or above

 Programming Language : Python(Version 3.7)

 Python Libraries :

 openCV-python for processing image

 Django for Web application development

 MYSQL for database management

 QR code for generating QR codes

6
QR CODE BASED ATTENDANCE SYATEM

 pyzbar for decoding QR codes

3.3 HARDWARE REQUIREMENTS:

 Computer : i3 or above

 Ram : 4 GB

 Camera

 Smartphone

 Network

3.4 CONCLUSION
The analysis of the QR Code Based Attendance System project reveals a promising digital solution
for streamlining attendance management. The system’s design and implementation demonstrate
significant potential for enhancing administrative efficiency, improving data accuracy, and boosting
organizational productivity. While challenges and limitations exist, the project’s successes underscore
the viability of QR code technology in attendance tracking. Recommendations for future development,
including enhanced security measures, scalability improvements, and integration with existing
infrastructure, will further strengthen the system’s effectiveness. Ultimately, the QR Code Based
Attendance System project serves as a compelling model for innovative attendance management
solutions, offering valuable insights for organizations seeking to leverage technology for operational
excellence.

7
QR CODE BASED ATTENDANCE SYATEM

4.DESIGN

4.1 INTRODUCTION
The design of the QR Code Based Attendance System is centered around creating a seamless,
efficient, and secure attendance tracking experience. Leveraging QR code technology, this system aims
to replace traditional manual attendance methods with a digital solution that streamlines administrative
processes and enhances organizational productivity. The design will focus on developing a user-friendly
interface, robust data management, and reliable QR code scanning capabilities. Additionally, the system
will incorporate essential features such as real-time attendance tracking, automated reporting, and
secure data storage. This design will ensure compatibility with various devices and platforms,
guaranteeing ease of use for employees and administrators alike. By integrating cutting-edge
technology with intuitive design principles, the QR Code Based Attendance System will provide a
comprehensive and innovative solution for modern attendance management.

4.2 UML DIAGRAMS

USECASE DIARAM:

8
QR CODE BASED ATTENDANCE SYATEM

username

password
Admin
employee login

QR code scanner

Fig :1 (usecase diagram)

USECASE DESCRIPTION :

A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram
defined
by and created from a Use case analysis. Its purpose is to present a graphical overview of the
functionality provided by a system in terms of actors, their goals (represented as use cases), and any
dependencies between those use cases. The main purpose of a use case diagram is to show what system
functions are performed for which actor. Roles of the actors in the system can be depicted

CLASS DIAGRAM :

Fig :2 (class diagram)

9
QR CODE BASED ATTENDANCE SYATEM

A QR code-based employee attendance system class diagram consists of several key classes and their
relationships. The Employee class has attributes like employeeID, name, department, and position,
with methods to generate and scan QR codes and record attendance. The Attendance class records each
attendance instance with attributes like attendance ID, date, timeIn, and timeOut, and includes methods
to mark entry and exit times and calculate working hours. A QRCode class handles generating,
validating, and assigning QR codes to employees. The Scanner class, equipped with scannerID and
location, scans and validates QR codes, updating attendance. An Admin class manages employees and
attendance, with methods for adding or removing employees, generating reports, and managing records.
The Report class compiles attendance summaries, with methods to generate and export reports.
Relationships include a one-to-one link between Employee and QR Code, a one-to-many link between
Employee and Attendance, and admin permissions to manage employees and attendance records,
establishing the structure for efficient tracking and reporting within the system.

SEQUENCE DIAGRAM

user dataset

admin

employee login

QR code web scanner

Fig 3(sequence diagram)

10
QR CODE BASED ATTENDANCE SYATEM

A sequence diagram for a QR code-based employee attendance system illustrates the flow of
interactions when an employee checks in or out. The process begins with the Employee initiating the
scan by presenting their unique QR code to the Scanner. The scanner reads the QR code and sends the
information to the System for validation. The system verifies the QR code, confirming the employee’s
identity by matching it to existing records in the Database. Once validated, the system logs the check-in
or check-out time in the Attendance records for that employee. After the attendance is recorded, the
system may generate a success message or notification, confirming to the employee that their
attendance was successfully logged. An Admin can later interact with the system to retrieve attendance
records, generate reports, and manage employee attendance data as needed. This diagram captures the
sequence of realtime interactions, ensuring an efficient attendancetracking workflow and accurate data
logging.

4.3 WORKFLOWS

4.3.1 Analysis Workflow :

Object Oriented Analysis :

Object-Oriented Analysis (OOA): Object-Oriented Analysis (OOA) is the first technical activity
performed as part of object-oriented software engineering. OOA introduces new concepts to investigate
a problem. It is based on a set of basic principles, which are as follows-

11
QR CODE BASED ATTENDANCE SYATEM

 The information domain is modeled.

 Behavior is represented.

 The function is described.

 Data, functional, and behavioral models are divided to uncover greater detail.

 Early models represent the essence of the problem, while later ones provide implementation
details.

4.3.2 Design Workflow :

Data Flow Analysis

It is the analysis of flow of data in control flow graph, i.e., the analysis that determines the information
regarding the definition and use of data in program. With the help of this analysis, optimization can be
done.
In general, its process in which values are computed using data flow analysis. The data flow property
represents information that can be used for optimization.

Fig : 4 (data flow analysis)

4.4 MODULES

 Admin module: admin can login to application by using username and password as ‘admin’ and
‘admin’ and then can ADD New Employee Details and then application will generate QR CODE
on EMPLOYEE ID and then admin can download that image and give to employee and

12
QR CODE BASED ATTENDANCE SYATEM

employee can show that image to QR CODE scanner to mark attendance. Admin can view all

employee details and then can view employee attendanceby using start and end date.

 Employee Login Module: employee can login to system by using his ID and can view his
attendance from start and end date selection

 QR CODE WEBCAM SCANNER: employee has to show his QR CODE image from his
mobile to webcam and then webcam will read QR CODE and mark attendance. Only one
attendance for each employee for each day will be marked.

4.4 conclusion
In conclusion, the QR-based attendance management system efficiently streamlines employee
attendance tracking, enhancing accuracy and convenience. The intuitive admin module enables
seamless employee onboarding, QR code generation, and attendance monitoring. Employees can
effortlessly log in and view their attendance records. The QR code webcam scanner ensures secure and
unique daily attendance marking, eliminating errors and duplication.

By leveraging QR code technology and webcam scanning, this system offers a modern, efficient, and
userfriendly solution for attendance management, making it an invaluable asset for organizations
seeking to optimize their workforce management processes.

5.IMPLEMENTATION AND RESULT

5.1 introduction
The implementation of the QR-based attendance management system marks a significant milestone in
streamlining employee attendance tracking and workforce management. This phase involves the
seamless integration of cutting-edge technologies, including QR code generation, webcam scanning,
and secure data storage. Leveraging a user-centric approach, the system’s admin and employee modules
will be meticulously configured to ensure effortless navigation and optimal performance. Through a
combination of rigorous testing, quality assurance, and stakeholder collaboration, this implementation
will deliver a robust, scalable, and efficient attendance management solution. By deploying this
13
QR CODE BASED ATTENDANCE SYATEM

innovative system, organizations will benefit from enhanced attendance accuracy, reduced
administrative burdens, and valuable insights into workforce dynamics, ultimately driving productivity
and operational excellence.

The implementation of the QR-based attendance management system involves the systematic
deployment of hardware and software components to create a seamless and efficient attendance tracking
experience. This phase encompasses setup, configuration, testing, and training to ensure a smooth
transition to the new system. By integrating QR code technology, webcam scanning, and intuitive user
interfaces, this implementation will revolutionize attendance management, fostering a more

accountable, transparent, and productive work environment.

5.2 SOFTWARE ARCHITECTURE:

Fig : 5 ( software architecture)

The software architecture of a QR code-based attendance system is structured with multiple layers to
ensure efficiency, security, and scalability. The Presentation Layer provides a user interface, where
employees use a web or mobile app to scan their QR codes for check-in and check-out, and admins can
view and manage attendance data. The Application Layer handles core backend functions such as user
authentication, attendance processing, QR code validation, reporting, and notifications, allowing the
system to manage attendance data accurately and send real-time confirmations or alerts. The Data Layer
includes databases that store employee details, attendance records, and logs for security and audit
purposes. An Integration Layer with APIs supports functions like QR code generation, validation, and
notifications, connecting external services as needed. Finally, the Security Layer implements encryption
and access control, securing sensitive data and ensuring only authorized users can access or modify
records, creating a robust and secure attendance tracking system.

14
QR CODE BASED ATTENDANCE SYATEM

5.3 SOURCE CODE :

import os from

django.core.files.storage import

FileSystemStorage import pymysql

import datetime import pyqrcode

import png from pyqrcode import

QRCode from django.shortcuts

import render from django.template

import RequestContext from

django.contrib import messages

from django.http import

HttpResponse global username def

test(request): if

request.method ==

'GET':
return render(request, 'test.html', {})
def Amyloid nAction(request):

global username if request.method == 'POST': username =


request.POST.get('t1', False) password =
request.POST.get('t2', False) if username == 'admin' and
password == 'admin': context= {'data':'Hello! Administrator'}
return render(request,
'AdminScreen.html', context) else:
context= {'data':'login failed. Please retry'}

15
QR CODE BASED ATTENDANCE SYATEM

return render(request, 'AdminLogin.html',


context)

def AdminL ogin(req

uest): if request.method

== 'GET':

return render(request, 'AdminLogin.html', {})

def UserLogin(request): if
request.method == 'GET': return
render(request, 'UserLogin.html',
{})

def index(request):

if request.method == 'GET':

return render(request, 'index.html', {})

def AddEmp(request):

if request.method == 'GET': return render(request, 'AddEmp.html', {})

def

16
QR CODE BASED ATTENDANCE SYATEM

ViewEmpAttendanceAction(request):

if request.method == 'POST': empid =

request.POST.get('t1', False)

from_date = request.POST.get('t2', False) to_date = request.POST.get('t3', False) from_dd =


str(datetime.datetime.strptime(from_date, "%d-%b-%Y").strftime("'%Y-%m- %d'")) to_dd =
str(datetime.datetime.strptime(to_date, "%d-%b-%Y").strftime("'%Y-%m%d'")) presence_days = 0

salary = 0

columns = ['Employee ID', 'Presence Date'] output = '<table


border=1 align=center width=100%>' font = '<font size=""
color="black">' output += "<tr>"

for i in range(len(columns)):

output += "<th>"+font+columns[i]+"</th>" output += "</tr>"

con = pymysql.connect(host='127.0.0.1',port = 3306,user = 'root',


password = 'root', database = 'emp_attendance',charset='utf8') with

con:

cur = con.cursor()

cur.execute("select emp_salary FROM employee_details where


employeeID='"+empid+"'") rows = cur.fetchall() for row in rows: salary = row[0] break
con = pymysql.connect(host='127.0.0.1',port =

3306,user = 'root', password = 'root', database =

'emp_attendance',charset='utf8') with con:

17
QR CODE BASED ATTENDANCE SYATEM

cur = con.cursor() cur.execute("select * from mark_attendance where

employeeID='"+empid+"' and

attended_date between "+from_dd+" and "+to_dd) rows = cur.fetchall() for row in


rows: presence_days = presence_days +

1 output += "<tr>" output +=

"<td>"+font+str(row[0])+"</td>"

output += "<td>"+font+str(row[1])+"</td></tr>" output += "<tr>


<td>"+font+"Attended Days :

Salary = "+str(((salary/30)
"+str(presence_days)+"</font><td>"+font+"Current
presence_days))+"</td></tr>"

context= {'data': output}

return render(request, 'AdminScreen.html', context)

def ViewEmpAttendance(request):
if request.method == 'GET': font = '<font size="" color="black">'

output = '<tr><td>'+font+'Choose&nbsp;Emp ID</td><td><select name="t1">'


con = pymysql.connect(host='127.0.0.1',port = 3306,user = 'root', password =

'root', database =

'emp_attendance',charset='utf8')
with con:

cur = con.cursor() cur.execute("select employeeID FROM


employee_details") rows = cur.fetchall() for row in rows:

18
QR CODE BASED ATTENDANCE SYATEM

output += '<option value="'+row[0]+'">'+row[0]+'</option>' output

+= " </select></td></tr>"

context= {'data1': output}

return render(request,

'ViewEmpAttendance.html', context)

def ViewAttendance(request):

if request.method == 'GET':

return render(request, 'ViewAttendance.html', {})

def ViewAttendanceAction(request):

if request.method == 'POST':
global username empid = username from_date = request.POST.get('t1', False) to_date =
request.POST.get('t2', False) from_dd =
str(datetime.datetime.strptime(from_date, "%d-%b-
%Y").strftime("'%Y-%m-

%d'")) to_dd = str(datetime.datetime.strptime(to_date, "%d-%b-%Y").strftime("'%Y-%m- %d'"))

presence_days =

salary = 0

19
QR CODE BASED ATTENDANCE SYATEM

columns = ['Emp ID', 'Attended Date']

output = '<table border=1 align=center width=100%>' font = '<font


size="" color="black">' output += "<tr>"

for i in range(len(columns)):

output += "<th>"+font+columns[i]+"</th>" output += "</tr>"

con = pymysql.connect(host='127.0.0.1',port = 3306,user = 'root', password =

'root', database = 'emp_attendance',charset='utf8')

with con:

cur = con.cursor()

cur.execute("select emp_salary FROM employee_details where


employeeID='"+empid+"'") rows =
cur.fetchall() for row in rows: salary = row[0]

break con = pymysql.connect(host='127.0.0.1',port =

3306,user = 'root', password = 'root', database =

'emp_attendance',charset='utf8')

with con:

cur = con.cursor()

cur.execute("select * from mark_attendance where employeeID='"+empid+"' and


20
QR CODE BASED ATTENDANCE SYATEM

attended_date between "+from_dd+" and

"+to_dd) rows = cur.fetchall() for row in rows:

presence_days = presence_days + 1 output +=

"<tr>"

output += "<td>"+font+str(row[0])+"</td>" output += "<td>"+font+str(row[1])+"

</td></tr>"

output += "<tr><td>"+font+"Attended Days : "+str(presence_days)+"</font>

<td>"+font+"Current Salary =
"+str(((salary/30) * presence_days))+"</td></tr>"
context= {'data': output} return render(request,
'UserScreen.html', context)

def ViewEmp(request):

if request.method == 'GET': columns = ['Emp ID', 'Name',

'Phone No', 'Designation', 'Salary'] output = '<table

border=1 align=center width=100%>' font = '<font size=""

color="black">' output += "<tr>"

for i in range(len(columns)):

output += "<th>"+font+columns[i]+"</th>"

21
QR CODE BASED ATTENDANCE SYATEM

output += "</tr>" con =

pymysql.connect(host='127.0.0.1',port = 3306,user = 'root',

password = 'root', database =

'emp_attendance',charset='utf8') with con:

cur = con.cursor() cur.execute("select * FROM employee_details")

rows = cur.fetchall() for row in rows:

output += "<tr>"

output += "<td>"+font+str(row[0])+"</td>" output += "<td>"+font+str(row[1])+"

</td>" output += "<td>"+font+str(row[2])+"</td>"

output += "<td>"+font+str(row[3])+"</td>" output += "<td>"+font+str(row[4])+"

</td></tr>" context= {'data': output}

return render(request,

'AdminScreen.html', context)

def UserLoginAction(request):

global username if request.method == 'POST':

22
QR CODE BASED ATTENDANCE SYATEM

username = request.POST.get('t1', False)


index = 0
emp_name = None

con = pymysql.connect(host='127.0.0.1',port = 3306,user = 'root', password =

'root', database = 'emp_attendance',charset='utf8')

with con:

cur = con.cursor()

cur.execute("select employeeID, empployeeName FROM employee_details") rows

cur.fetchall()

for row in

rows:

if row[0] == username: emp_name = row[1]


index = 1

break

if index == 1:

context= {'data':'welcome '+emp_name} return render(request,


'UserScreen.html', context)

else:

context= {'data':'login failed. Please retry'} return render(request,

23
QR CODE BASED ATTENDANCE SYATEM

'UserLogin.html', context)

def DownloadActi on(request):

if request.method == 'POST': global username

infile =open("EmployeeAttendance/static/qrcodes/"+username+".png",

'rb')

data = infile.read()

infile.close()

response = HttpResponse(data,

content_type='image/png')

response['ContentDisposition'] = 'attachment;

filename=%s' % username+".png" return


response

def AddEmpAction(request):

if request.method == 'POST': global username

ids = request.POST.get('t1', False) name = request.POST.get('t2',

24
QR CODE BASED ATTENDANCE SYATEM

False) phone = request.POST.get('t3', False) desg =

request.POST.get('t4', False) sal = request.POST.get('t5', False)

output = "none"

con = pymysql.connect(host='127.0.0.1',port = 3306,user = 'root', password = 'root',

database =

'emp_attendance',charset='utf8')

with con:

cur = con.cursor()

cur.execute("select employeeID FROM employee_details") rows = cur.fetchall()


for row in rows: if row[0] == empid:

output = ids+" employee already exists"

break if output ==

'none':

db_connection = pymysql.connect(host='127.0.0.1',port = 3306,user =

'root', password = 'root', database = 'emp_attendance',charset='utf8')

db_cursor = db_connection.cursor() student_sql_query = "INSERT INTO

employee_details(employeeID,empployeeName,phoneNo,designation,emp_salary)

VALUES('"+ids+"','"+name+"','"+phone+"','"+desg+"','"+sal+"')"
db_cursor.execute(student_sql_query) db_connection.commit()

url = pyqrcode.create(ids)

url.png('EmployeeAttendance/static/qrcodes/'+ids+'.png', scale = 6) username = ids

print(db_cursor.rowcount, "Record Inserted") if db_cursor.rowcount == 1: output =

'Emp Details Saved with ID : '+ids context= {'data':output} return

25
QR CODE BASED ATTENDANCE SYATEM

render(request, 'Download.html', context)

5.4 RESULT/OUTPUT

fig : 6 (admin login page)

In above screen click on ‘Admin Login’ link to get below login screen

26
QR CODE BASED ATTENDANCE SYATEM

Fig : 7 ( admin login )

In above screen admin is login and after login will

Fig : 8 (add new employee details)


get below screen

In above screen admin can click on ‘Add New Employee Details’ link to get below
screen to add employee details

27
QR CODE BASED ATTENDANCE SYATEM

Fig : 9 (add new employee details)

In above screen admin is adding NEW Employee Details and then press button to
get below screen

Fig : 10 ( download QR code image)

In above screen employee details added and now click on ‘Click Here to
Download QR Code Image’ button to download QR image and get below output

28
QR CODE BASED ATTENDANCE SYATEM

Fig : 11 ( download QR page)

In above screen in browser status bar we can see QR image is downloaded


and admin will give this image to employee and he can saved this image in
mobile and then can show this image from his mobile to WEBCAM to
mark his attendance and now open that image and view QR CODE like
below screen

Fig : 12 ( QR code)

29
QR CODE BASED ATTENDANCE SYATEM

In above screen we can see QR code and now in application click on ‘View Employee
Details’ link to get below details

Fig : 13(attendance)

In above screen admin can view all employee details and now to mark attendance double
click on
‘RunWebCam.bat’ file to get below screen

Fig : 14(webcam)

30
QR CODE BASED ATTENDANCE SYATEM

In above screen click on ‘Start Webcam’ button to start web cam and get below
screen

Fig : 15(mark attendance)

In above screen webcam started and now employee has to show QRCODE
from his mobile like below screen and once QR code detected then
system will mark attendance

Fig : 16(showing QR code)

31
QR CODE BASED ATTENDANCE SYATEM

In above screen to webcam I am showing QRCODE and once detected then will
get below screen

Fig : 17(attendance saved)

In above screen we got dialog box saying ‘attendance saved in database’ and each
employee each day only one time webcam will scan his QRCODE and if he want
again then delete all rows from database. Now go to previous application and
then click on ‘View Attendance’ link like in below screen

32
QR CODE BASED ATTENDANCE SYATEM

Fig : 18(attendance screen)

In above view attendance screen admin can view all employee names in
drop down box and he can select desired employee name and then choose
start and end date like below screen

Fig : 19(employee atendence)

In above screen admin selected employee id and then select start and end date and then
press ‘get Attendance’ button to get below screen

33
QR CODE BASED ATTENDANCE SYATEM

Fig : 20(employee ID’s)


In above screen in first column we can see employee ID and in second column we
can see date on which he was present and in last column we can see his payable
salary by calculating all present days. Now logout and login as employee

Fig : 21(user login)

34
QR CODE BASED ATTENDANCE SYATEM

In above screen employee can login by using his ID and then press button to get below
screen

Fig : 22(welcome page)

In above screen employee can click on ‘View Your Attendance’ link to get below screen

35
QR CODE BASED ATTENDANCE SYATEM

Fig : 23(view attendance screen)

In above screen employee can select start and end date and then press button to view
his attendance for selected days

Fig : 24(presence days screen)

In above screen employee can view all present days date and current payable salary. Similarly you
can add any number of employees and go for attendance and view it

6.TESTING
6.1 INTRODUCTION

The testing and validation phase of the QR code-based food ordering system is a critical milestone
that ensures the system’s reliability, performance, and user satisfaction. This phase involves a comprehensive
evaluation of the system’s functional and nonfunctional requirements, encompassing usability, security,
scalability, and integration testing. Through rigorous testing methodologies, including unit testing,
integration testing, and user acceptance testing (UAT), potential bugs and defects will be identified and
resolved. Additionally, validation processes will verify compliance with industry standards, regulatory
requirements, and business rules. The testing and validation process will simulate real-world scenarios,
mimicking customer interactions, order processing, and payment transactions to guarantee seamless

36
QR CODE BASED ATTENDANCE SYATEM

functionality. By conducting thorough testing and validation, the system’s stability, efficiency, and overall
quality will be assured, providing a robust foundation for successful deployment and customer adoption.

6.2 SYSTEM TEST


The purpose of testing is to discover errors. Testing is the process of trying to discover Every conceivable
fault or weakness in a work product. It provides a way to check the Functionality of components, sub
assemblies, assemblies and/or a finished product It is the Process of exercising software with the intent of
ensuring that the Software system meets its Requirements and user expectations and does not fail in an
unacceptable manner. There are Various types of test. Each test type addresses a specific testing
requirement.

6.2.1 Types Of Tests

Unit Testing

Unit testing involves the design of test cases that validate that the internal program logic Is
functioning properly, and that program inputs produce valid outputs. All decision branches
And internal code flow should be validated. It is the testing of individual software units of
the
Application .it is done after the completion of an individual unit before integration. This is a Structural
testing, that relies on knowledge of its construction and is invasive. Unit tests perform
Basic tests at component level and test a specific business process, application, and/or system
Configuration. Unit tests ensure that each unique path of a business process performs accurately

To the documented specifications and contains clearly defined inputs and expected results.

Integration Testing

Integration tests are designed to test integrated software components to determine if They actually run
as one program. Testing is event driven and is more concerned with the basic
Outcome of screens or fields. Integration tests demonstrate that although the components
were Individually satisfaction, as shown by successfully unit testing, the combination of
37
QR CODE BASED ATTENDANCE SYATEM

components Is correct and consistent. Integration testing is specifically aimed at exposing


the problems That arise from the combination of components.

Functional Test

Functional tests provide systematic demonstrations that functions tested are available As specified by

the business and technical requirements, system documentation, and user Manuals.

Functional testing is centered on the following items:

 Valid Input : identified classes of valid input must be accepted.

 Invalid Input : identified classes of invalid input must be rejected.

 Functions : identified functions must be exercised.

 Output : identified classes of application outputs must be exercised.

 Systems/Procedures : interfacing systems or procedures must be invoked.

Organization and preparation of functional tests is focused on requirements, key Functions,


or special test cases. In addition, systematic coverage pertaining to identify Business
Process flows; data fields, predefined processes, and successive processes must be
considered For testing. Before functional testing is complete, additional tests are identified
and the effective
Value of current tests is determined.

System Test

System testing ensures that the entire integrated software system meets Requirements. It
tests a configuration to ensure known and predictable results. An example of System
testing is the configuration oriented system integration test. System testing is based on
Process descriptions and flows, emphasizing pre-driven process links and integration
points.

38
QR CODE BASED ATTENDANCE SYATEM

White Box Testing

White Box Testing is a testing in which in which the software tester has Knowledge of the
inner workings, structure and language of the software, or at least its purpose. It is purpose.
It is used to test areas that cannot be reached from a black box level.

Black Box Testing

Black Box Testing is testing the software without any knowledge of the inner Workings,
structure or language of the module being tested. Black box tests, as most other kinds Of
tests, must be written from a definitive source document, such as specification or
Requirements document, such as specification or requirements document. It is a testing in
which The software under test is treated, as a black box .you cannot “see” into it. The test
provides Inputs and responds to outputs without considering how the software works.

Unit Testing

Unit testing is usually conducted as part of a combined code and unit test phase of the
Software lifecycle, although it is not uncommon for coding and unit testing to be
conducted as Two distinct phases. Test strategy and approach Field testing will be
performed manually and functional tests will be written In detail.

Test Objectives

All field entries must work properly. Pages must be activated from the identified link.
The entry screen, messages and responses must not be delayed. Features to be tested
Verify that the entries are of the correct format No duplicate entries should be allowed All
links should take the user to the correct page.

Integration Testing

39
QR CODE BASED ATTENDANCE SYATEM

Software integration testing is the incremental integration testing of two or more


Integrated software components on a single platform to produce failures caused by
interface Defects. The task of the integration test is to check that components or software
applications, e.g. Components in a software system or – one step up – software
applications at the company level

Interact without error.

Test Results: All the test cases mentioned above passed successfully. No defects encountered.

Acceptance Testing

User Acceptance Testing is a critical phase of any project and requires significant Participation

by the end user. It also ensures that the system meets the functional requirements.

Test Results: All the test cases mentioned above passed successfully. No defects encountered.

6.3 CONCLUSION

Thorough testing and validation of the QR code-based food ordering system have
successfully ensured its reliability, performance, and user satisfaction. Through rigorous
testing methodologies and validation processes, potential bugs and defects were
identified and resolved, guaranteeing compliance with industry standards and
regulatory requirements. The system demonstrated exceptional stability, scalability, and
security, supporting seamless customer interactions, order processing, and payment
transactions. With its intuitive interface and efficient workflow, the system is now poised
for successful deployment, providing a enhanced dining experience for customers and
operational excellence for restaurateurs. Ultimately, this comprehensive testing and
validation phase has confirmed the system’s readiness for real-world implementation,

40
QR CODE BASED ATTENDANCE SYATEM

paving the way for widespread adoption and transformative impact on the food

industry.

7. CONCLUSION

In conclusion, a QR code-based attendance system provides an efficient, accurate, and


secure alternative to traditional attendance methods. By using unique QR codes, this system
allows individuals to quickly mark their presence, reducing time spent on manual roll calls and
minimizing human errors. It is easy to implement, requiring minimal infrastructure, and can be
accessed through smartphones or tablets, making it a costeffective solution. The system ensures greater
accuracy and security by preventing proxy attendance and automatically recording data in real time.
This results in instant and digital attendance records, making data management more streamlined and
reducing administrative burdens. Furthermore, QR code attendance systems are environmentally
friendly, eliminating the need for paper-based sheets. While there are some initial setup
requirements and the need for reliable internet access, the benefits of faster, more reliable attendance
tracking make it an ideal choice for educational institutions, businesses, and other organizations looking
to modernize their attendance processes.

7.1 FUTURE ENHANCEMENTS

Future advancements in QR code-based attendance systems may focus on improving error correction
algorithms, such as incorporating more advanced techniques to handle higher levels of damage or
obstruction. Integration with AI and machine learning could enhance scanning accuracy, particularly for
low-quality or distorted codes. Additionally, increasing the data capacity of QR codes while maintaining
reliable decoding is a potential enhancement. Security features, such as encryption or multi-factor

41
QR CODE BASED ATTENDANCE SYATEM

authentication, could be introduced to protect against fraud. Overall, these enhancements will aim to
make QR code-based systems more efficient, secure, and adaptable to future technological needs.

8. REFERENCE

 ISO/IEC 18004:2015. "Information technology – Automatic identification and data capture

techniques – QR Code 2005.

 bar code symbology specification." International Organization for Standardization, 2015.

 Reed, I. S., & Solomon, G. (1960). "Polynomial Codes Over Certain Finite Fields."

 Journal of the Society for Industrial and Applied Mathematics, 8(2), 300-304. Zhuang, D., &
Hu, B.
(2020). "Application of Reed-Solomon error correction in QR code systems."

 International Journal of Advanced Computer Science and Applications, 11(2), 142-149.

 QR Code Technology: How It Works and Why It’s Important." (2024).

 QR Code Generator. Retrieved from https://www.qr-codegenerator.com/blog/ "AI in QR Code

Scanning." (2023).

 Tech Innovations Review. Retrieved from https://www.techreview.com/ai-qr-code-scanning

42

You might also like