Вы находитесь на странице: 1из 49

COMPUTER

INVESTIGATORY PROJECT

2019-2020
ATTENDANCE
MANAGEMENT

RAKSHIT SINGH TOMAR


XII B 20654100
CBSE ROLL NO.

KENDRIYA VIDYALAYA NO.1,


. NAUSENABAUGH , VISAKHAPATNAM
KENDRIYA VIDYALAYA No.1,
NAUSENA BAUGH, VISAKHAPATNAM
CERTIFICATE

This is to certify that . RAKSHIT SINGH TOMAR-. roll no. .20654100


………………… student
of class .XII-B
……… –has successfully completed his research on the below
mentioned project under the able guidance and supervision of

.Mrs Gurvinder Kaur & Mrs Tabbasum Banu- (PGT, Comp. Sc.) during
…………………………………………………………………….……………………..……… the
year .2019-2020
………………. .in the partial fulfilment of the Comp. Science (New)
Practical Examination conducted by CBSE.
Project: ……………….……………………….
Attendance Management
.…………………………. .…………………………
Examiner’s Signature Principal’s Signature

Date: ………………… Teacher In-charge: ………………………….


ACKNOWLEDGEMENT
" There are times when silence speaks so much more loudly
than words of praise to only as good as belittle a person,
whose words do not express, but only put a veneer over true
feelings, which are of gratitude at this point of time. "

I would like to express a deep sense of thanks and


gratitude to our teachers Mrs Gurvinder Kaur ma’am and
Mrs Tabbasum Banu ma’am for guiding us immensely through
the course of the project. They always evinced keen interest in
our work. Their constructive advice and constant motivation
have been responsible for the successful completion of this
project.

We are also thankful to our principal sir, Shri SK Dash


for his immense support and guidance.

At last but not least, gratitude to our parents for their


support and encouragement. I would also like to express
gratitude to my friends who helped me (directly or indirectly)
to complete this project within a limited time frame.

 

p rRakshit Singh Tomar


CONTENTS

Certificate …………………………………………………………………………………….. (i)

Acknowledgement……………………………………………………………… (ii)

1. Abstract ……………………………………………………………. 1
2. Introduction…………………………………………………… 2
3. System Analysis……………………………………………………… 3-6
4. Software Description … 7-14
5. Working 15-23
6. Functions Used 24-41
7. Conclusion 42
8.

Bibliography………… ……………………………………………………… (iii)



…………………………………
ABSTRACT

As
we are aware of the fact that minimum 75%
attendance is expected by CBSE from a student in his/her
academic year appearing for class 12 CBSE Board Exams. So
it becomes important to keep track on the attendance and to
take steps in order to improve attendance.

Student attendance management system deals with the


maintenance of the student’s attendance details. It generates
the attendance of the student on basis of presence in class. So,
as one can keep track of his/her attendance.

The student attendance report based on monthly and


consolidate will be generated.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 1


1: INTRODUCTION
Apparently in our today world things cannot be done organized,
accurately and efficiently using file based system so making things
globally in a digitized way is a tremendous advantage in especially this
type of Attendance management system program.

Attendance Management System is software developed for daily


student attendance in schools, colleges and institutes. It facilitates to
access the attendance information of a particular student in a
particular class. The information is sorted by the operators, which will
be provided by the teacher for a particular class. This system is
basically meant for evaluating the attendance eligibility criteria of a
student.

1.1 Purpose:-
The purpose of developing this attendance management system is to
computerized the tradition way of taking attendance. Another
purpose for developing this software is to generate the report
automatically at the end of the semester.

1.2 Scope:-
The scope of the project is the system on which the software is
installed, i.e. the project is developed as a desktop application, and it
will work for a particular institute. But later on, it can be modified to
work online.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 2


2: SYSTEM ANALYSIS

2.1 Introduction:-
Analysis can be defined as breaking up of any whole so as to find out
their nature, function etc. It defines design as to make preliminary
sketches of; to sketch a pattern or outline for plan. To plan and carry
out especially by artistic arrangement or in a skillful wall. System
analysis and design can be characterized as a set of techniques and
processes, a community of interests, a culture and an intellectual
orientation. The various tasks in the system analysis include the
following.
 Understanding application.
 Planning.
 Scheduling.
 Developing candidate solution.
 Performing trade studies.
 Performing cost benefit analysis.
 Recommending alternative solutions.
 Supervising, installing and maintaining the system.
This system manages to the analysis of the report creation and
develops manual entry of the student attendance. First design the
students entry form , staff allocation and time table allocation forms.
This project helps the attendance system for the department
calculate percentage and reports for eligibility criteria of examination.
The application attendance entry system will provide flexible report
for all students.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 3


2.2 Existing System:-
It will be a tedious job to maintain the record for the user. The human
effort is more here. The retrieval of the information is not as easy as
the records are maintained in the hand written registers.

This application requires correct feed on input into the respective


field. Suppose the wrong inputs are entered, the application resist to
work. So the user finds it difficult to use.

2.3 Proposed System:-


To overcome the drawbacks of the existing system, the proposed
system has been evolved. This project aims to reduce the paper work
and saving time to generate accurate results from the student’s
attendance. The system provides with the best user interface.
The efficient reports can be generated by using this proposed system.
Advantages of Proposed System It is trouble-free to use.
It is a relatively fast approach to enter attendance is highly reliable,
approximate result from user Best user Interface and efficient
reports.

2.4 Feasibility Study:-


Feasibility analysis begins once the goals are defined. It starts by
generating broad possible solutions, which are possible to give an
indication of what the new system should look like. This is where
creativity and imagination are used. Analysts must think up new ways
of doing things- generate new ideas. There is no need to go into the
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 4


detailed system operation yet. The solution should provide enough
information to make reasonable estimates about project cost and
give users an indication of how the new system will fit into the
organization. It is important not to exert considerable effort at this
stage only to find out that the project is not worthwhile or that there
is a need significantly change the original goal.

Feasibility of a new system means ensuring that the new system,


which we are going to implement, is efficient and affordable. There
are various types of feasibility to be determined. They are-

 3.4.1 Economic Feasibility :-


 Development of this application is highly economically feasible.
The only thing to be done is making an environment with an
effective supervision.
 It is cost effective in the sense that has eliminated the paper work
completely. The system is also time effective because the
calculations are automated which are made at the end of the
month or as per the user requirement.

 3.4.2 Technical feasibility :-
 The technical requirement for the system is economic and it does
not use any other additional Hardware and software. Technical
evaluation must also assess whether the existing systems can be
 upgraded to use the new technology and whether the
organization has the expertise to use it.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 5


 3.4.3 Operational Feasibility:-

 The system working is quite easy to use and learn due to its
simple but attractive interface. User requires no special training
for operating the system. Technical performance include issues
such as determining whether the system can provide the right
information for the Department personnel student details, and
whether the system can be organized so that it always delivers
this information.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 6


3: SOFTWARE DESCRIPTION

4.1 Minimum Hardware Requirements:-


RAM : 2 GB
Hard Disk : 500 GB
Processor : Intel core i3

4.2 Software Requirements:-


Operating System : Windows 10
Front Design : Python (Tkinter, PIL)
Front-End Language : .Python / Python version 3.7
.

Back-End Language : MySQL / MySQL version 5.7 is used in


developing the application

4.3 Software Description:-


 4.3.1 Python:-
Python is an interpreted, object-oriented, high level
programming language with dynamic semantics.
Its high-level built in data structures, combined
 with dynamic typing and dynamic binding, make it very attractive
for Rapid Application Development, as well as for use as a scripting
or glue language to connect existing components together. Python's
simple, easy to learn syntax emphasizes readability and therefore
reduces the cost of program maintenance. Python supports
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 7


modules and packages, which encourages program modularity and
code reuse. The Python interpreter and the extensive standard
library are available in source or binary form without charge for all
major platforms, and can be freely distributed.

 Often, programmers fall in love with Python because of the
increased productivity it provides. Since there is no compilation
step, the edit-test-debug cycle is incredibly fast. Debugging Python
programs is easy: a bug or bad input will never cause a
segmentation fault. Instead, when the interpreter discovers an
error, it raises an exception. When the program doesn't catch the
exception, the interpreter prints a stack trace. A source level
debugger allows inspection of local and global variables, evaluation
of arbitrary expressions, setting breakpoints, stepping through the
code a line at a time, and so on. The debugger is written in Python
itself, testifying to Python's introspective power. On the other hand,
often the quickest way to debug a program is to add a few print
statements to the source: the fast edit-test-debug cycle makes this
simple approach very effective.

4.3.1.1 Tkinter:-

Tkinter is Python's standard GUI (Graphical User Interface) package.


Tkinter is the standard Python interface to the Tk and Tcl graphical
user interface (GUI) toolkit. Tkinter runs on most operating systems,
making it easy to create rich, cross-platform desktop applications
with Python.
tk, the toolkit upon which Tkinter is based, is a mature, robust
toolkit that has its roots in the tcl language, but which can be used
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 8


with many modern languages including python, ruby, perl and
others. Tk provides a native look and feels in most operating
systems. For more information about the cross-platform and cross-
language features of Tk visit tkdocs.com.

4.3.1.2 PIL (Python Imaging Library):-

Python Imaging Library (abbreviated as PIL) (in newer versions


known as Pillow) is a free library for the Python programming
language that adds support for opening, manipulating, and saving
many different image file formats. It is available for Windows, Mac
OS X and Linux.

Development appears to be discontinued with the last commit to


the PIL repository coming in 2011. Consequently, a successor
project called Pillow has forked the PIL repository and added Python
3.x support.

Steps to install pillow repository from PyPi.org :-


(Windows Operating System)

o Prerequisites for installation

a) Python is installed on your computer and you are


connected to the Internet.
b) Python is on system’s PATH.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 9


o Installation :-

cmd> pip install Pillow


-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

*cmd denotes command prompt

4.3.1.3 Python-MySQL Connectivity:-

In order to connect to a database from within Python, you need a


library that provides connectivity functionality. MySQL connector
library for the same is needed. It helps in creating a connection
with the MySQL database with a python program so as to access
the database’s content.

Steps to install Python-MySQL Connector:-


(Windows Operating System)

o Prerequisites for installing Python-MySQL Connector


Before you install MySQL connector on Python, you must
ensure that:
a) Python is installed on your computer and you are
connected to the Internet.
b) Python is on system’s PATH.
c) Python is installed on your computer and you are
connected to the Internet.
d) Python is on system’s PATH.
e) You need root or administrator privileges to perform
the installation process.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 10


o Installing MySQL connector on standard Python
installation, using pip
cmd> pip install mysql-connector-python
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

*cmd denotes command prompt

 4.3.2 MySQL:-
4.3.2.1 Introduction:-

 MySQL is a Relational Database Management
 System (RDBMS).

 R stands for Relational
 DB stands for Database, a repository for the
 information store.
 MS stands for Management System, the
 software that allows you to insert, retrieve,
 modify, or delete records.

 The data in a database is organized into tables, and each table is
organized into rows and columns.
 Each row in a table is called a record. A record may contains several
pieces (called fields) of information, and each column in a table is
known as a field.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 11


 4.3.2.1 Features of MySQL

 Speed :

 Of course, the speed at which a server side program runs depends
primarily on the server hardware.
 Given that the server hardware is optimal, MySQL runs very fast. It
supports clustered servers for demanding applications.

 Cost :

 MySQL is available free of cost. MySQL is a "Open Source" database.
MySQL is part of LAMP (Linux, Apache, MySQL, PHP / Perl / Python)
environment, a fast growing open source enterprise software stack.
More and more companies are using LAMP as an alternative to
expensive proprietary software stacks because of its lower cost,
reliability, and documentation.

 Query Language Support :

 MySQL understands standards based SQL (Structured Query
Language).

 Capability :

 Many clients can connect to the server at the same time. Clients can
use multiple database simultaneously. You can access MySQL using
several interfaces such as command-line clients, Web browsers.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 12



Connectivity and Security :

 MySQL is fully networked, and database can be accessed from
anywhere on the Internet, so you can share your data with anyone,
anywhere.

 Portability :

 MySQL runs on many varieties of UNIX, as well as on other non-UNIX
systems, such as Windows OS/1. MySQL runs on hardware from
home PCs to high-end server. MySQL can be installed on
Windows XP, Windows Server 1003, Red Hat Fedora Linux, Debian
Linux, and others.

 MySQL is Open Source Software :-

 Open Source means that it is possible for anyone to use and modify.
Anybody can download MySQL from the Internet and use it without
paying anything. Anybody so inclined can study the source code and
 change it to fit their needs.

 MySQL uses the GPL (GNU General Public License) to define what
you may and may not do with the software in different situations. If
you feel uncomfortable with the GPL or need to embed MySQL into
a commercial application you can buy a commercially licensed
version from us.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 13






 Why use MySQL?

 MySQL is very fast, reliable, and easy to use. If that is what you
are looking for, you should give it a try.
 MySQL also has a very practical set of features developed in very
close cooperation with our users.
 MySQL was originally developed to handle very large databases
much faster than existing solutions and has been successfully
used in highly demanding production environments for several
years. Though under constant development, MySQL today
offers a rich and very useful set of functions.

 The technical features of MySQL :

 MySQL is a client/server system that consists of a multi-threaded
SQL server that supports different back ends, several different client
programs and libraries, administrative tools, and several
programming interfaces.
 MySQL has a lot of contributed software available.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 14


4: WORKING
For the first time, a Signup page appears for MySQl-connectivity. The
MySQL user name and password are stored in a text file, “user.txt” while
the username and password needed for login are stored in the database
‘Login’ inside the ‘log’ table.
Then comes the login page, where the admin has to provide username
and password. If the username and password matches with the ones
stored in the ‘Login’ db, then the admin can proceed. Also admin can
reset password and user name.
After the admin gets access to the home page,
The home page allows the admin to create a New Class. The New Class
and its details i.e. subjects are stored in the database, ‘dgclass’ . Adding
a new class leads to the creation of a database carrying the name of the
class.
Further, operations like adding a new student, and providing
attendance details of student on monthly basis can be carried out. These
details are stored in the database, ‘<class-name>’. Then one can
generate reports based on the student’s attendance. Also admin has the
privilege to drop a class or view them.

Flowchart depicting the Flow of Execution:-


Consider the flowchart, where we have,
A :
. Create New Class D : Student and Report
B :
. Add New Student E : Class/ View and Delete
C :
. New Attendance
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 15


Text file
Start
No Yes

Signup Data
Base
Login
username and password
did not match
username and
password matches
Home DATABASE
CONNECTIVITY
Error

A B C

D E

No/close Logout/close

Stop

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 16


SCREENSHOTS:-
-------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 17


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 18


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 19


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 20


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 21


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 22


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 23


5: FUNCTIONS USED

The major functions are:-


1. signup ( ) function
2. login ( ) function
3. afterlogin ( ) function #home page
4. create_class( ) function
5. new _student ( ) function
6. new_atten ( ) function
7. report ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 24


# signup ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 25


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 26


# login ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 27


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 28


# afterlogin ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 29


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 30


# create_class ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 31


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 32


# new_student ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 33


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 34


# new_atten ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 35


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 36


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 37


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 38


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 39


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 40


# report ( ) function

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 41


6: CONCLUSION

We were able to attain our set objectives, and this helped


us gain confidence in writing our own code and our own
applications.

We worked as a team, and gained some experience on


how professional programmers work in the industry.

There is always room for improvement, and this


application we created can also be improved. This is especially
because we had to create it within a limited time due to other
projects and Exams. With more time, the software can be vast
and improved to include security and different types of users.
Thanks a lot.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Attendance Management Rakshit Singh Tomar | 42


BIBLIOGRAPHY

https://www.wikipedia.org

Sumita Arora (Python)

https://www.python.org

https://stackoverflow.com

https://www.google.com

https:// github.com

Вам также может понравиться