Visitor Management System
Visitor Management System
On
“Cloud Based Visitor Management System”
Submitted in the Partial fulfillment of the requirement for the Award of Degree of
Bachelors of Technology
In
I am highly grateful to VMM Education, for providing assistance for the six months industrial training.
I want to express gratitude to HOD Er.Vinod Sharma of Department of Computer science and Technology for
their intellectual support throughout the training Course.
We are extremely thankful to Dr. Vijay Kumar Banga Principal, ACET, Amritsar for providing us
infrastructural facilities to work in, without which this work would not have been possible.
Ramneek Singh(1701340)
Simrandeep Singh(1701375)
Tarunjot Singh(1701388)
2
Table of Contents
2. Introduction to project 7
3. Frontend 8-9
4. Backend 10-12
8. Tables 19-22
9. Screenshots 23-42
10. Conclusion 43
11. Bibliography 44
3
ORGANIZATION PROFILE
The Institute where we are pursuing our six months Industrial Training is VMM (Veenus Mind Media), at
Amritsar.
DETAILS OF VMM
VMM Education’s journey started in January 2005 with a vision of bringing computer education of global
standard in the holy city of Amritsar. To turn this dream into reality we needed to create a talent pool of bright
young minds who would power the engines of growth of the global economy, Today seven years later VMM
Education or VMM, as it is popularly known as, is the largest and the most trusted computer center of the
region, with annual turn out of more than 1000 students each year. The reason for the success of VMM is
simply the “Hard work” that our team has put in these seven years.
In this past 7 years, VMM Education has provided world class training in global technologies such as Java ,
.Net , Oracle and Linux , while keeping our syllabus up to date with the current industry standard. We have
managed to successfully train more than 7000 engineers who are currently working in Global Multinationals
like TCS, Tech Mahindra, Infosys, and CSC etc.
VMM is today the favorite choice of students of various engineering college for pursuing their six months or six
weeks industrial training .A unique “industry-endorsed curriculum,” crafted by professionals of VMM enhances
the job-readiness and employability of learners and equips them for the IT Industry.
To provide IT education which can match with the global IT standards, VMM also undertake industrial projects
under the banner of Veenus Software Solutions (VSS as the Veenus Software solution is popularly known as
undertake projects from UK & USA example im4schools.co.uk) this also allows our students to work on the
live projects and make projects for the various industries. Some of the our products include Point of sale
software for Super Markets with barcode reader support, Finger print attendance Management System that can
work for schools colleges and other institutes, Remote Lan Controller which can be used to view remote
desktops on LAN or WAN.
VMM has the world class computer labs that are equipped with the latest Hardware and software so that the
practical’s of the students must always remain for that and we continuously upgrade our hardware and software
every 6 months.
4
Attendance of students is one of the major features of VMM, students are required to record their day to day
attendance using Biometric Finger print recognition device this allows us to provide accurate attendance of
students to their parents and college during their training time.
➢ Foundation course
This course includes two languages C and C++ that allows us to build a strong foundation of programming for
the beginner and First year & Second year engineering graduates
Veenus Mind Media or VMM is a Software Solutions Provider. The company specializes in providing industry-
focused solutions and customized development. The development work ranges from management oriented
solutions utilizing the latest of databases, design and programming tools to web development designing and
Network resources.
The Group
5
Veenus Mind Media is a software arm of Hotel Veenus International (Amritsar), it is one of the fastest growing
software solution provider extending its arms in diversified activities such as School & College Network
AMC’s, Wi-Fi Internet Management solutions in school/colleges/Shopping Malls & Hotels, customized
software development, Web-Site Development & Web Marketing (SEO) The total Turnover of entire group is
more than 5 million (INR)
Sister concerns:
a) Hotel Veenus International
b) S.K Tour & Travels
c) Harmind Shawls
d) Jaws Arts
VMM commenced its operations in the year 2004 as 100% software consultants. VMM was started from one
home computer and today VMM has got infrastructure of more than one million (INR).VMM operates it two
wings one is of the software consultancy services and other is VMM Education i.e. the Education wing which
deals with providing the world class computer education to its students
6
INTRODUCTION TO PROJECT
Visitor management system refers to tracking the usage of a public building or site. By gathering increasing
amounts of information, a Visitor Management System can record the usage of the facilities by specific visitors
and provide documentation of visitor’s whereabouts.[1]
Proponents of an information rich visitor management system point to increased school or college security as
one substantial benefit. As more parents demand action from the schools that will protect children from sexual
predators, some school districts are turning to modern visitor management systems that not only track a visitor’s
stay.
Features of Project
1. We can manage the staff which include the security guards and the gatekeepers by adding new staff,
updating or deleting a staff. A login is made for the staff to change their respective password.
2. We can manage the employees which includes the faculty of the school or college by adding new
employee, updating or deleting an employee which is being used in visitor entry details.
3. We can manage the departments by adding new department, updating or deleting a department.
4. The employee is linked with the department which helps in sorting the employees department wise for
further use.
5. We can send message to all the employees or by department wise.
6. The main feature about this project is about managing the visitor entry and exit. After the visitor entry a
visitor pass is generated which can be printed and given to the visitor and collected at the time of exit.
7. We can view all staff, employees and departments.
8. We can view the visitors on the daily basis or till the date.
7
FRONTEND
Python is an interpreted high-level programming language for general-purpose programming. Created by Guido
van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability,
notably using significant whitespace. It provides constructs that enable clear programming on both small and
large scales. Python features a dynamic type system and automatic memory management. It supports multiple
programming paradigms, including object-oriented, imperative, functional and procedural, and has a large and
comprehensive standard library. Python interpreters are available for many operating systems. Python, the
reference implementation of Python, is open source software and has a community-based development model,
as do nearly all of its variant implementations. Python is managed by the non-profit Python Software
Foundation.
Python uses dynamic typing, and a combination of reference counting and a cycle-detecting garbage collector
for memory management. It also features dynamic name resolution (late binding), which binds method and
variable names during program execution. Python's design offers some support for functional programming in
the Lisp tradition. It has filter(), map(), and reduce() functions; list comprehensions, dictionaries, and sets; and
generator expressions.
The standard library has two modules (itertools and functools) that implement functional tools borrowed from
Haskell and Standard ML. The language's core philosophy is summarized in the document The Zen of Python
(PEP 20), which includes aphorisms such as:
8
Beautiful is better than ugly Explicit is better than implicit Simple is better than complex Complex is better
than complicated Readability counts Rather than having all of its functionality built into its core, Python was
designed to be highly extensible. This compact modularity has made it particularly popular as a means of
adding programmable interfaces to existing applications. Van Rossum's vision of a small core language with a
large standard library and easily extensible interpreter stemmed from his frustrations with ABC, which
espoused the opposite approach. Guido Van Rossum, the creator of Python Features and philosophy While
offering choice in coding methodology, the Python philosophy rejects exuberant syntax (such as that of Perl) in
favor of a simpler, less-cluttered grammar. As Alex Martelli put it: "To describe something as 'clever' is not
considered a compliment in the Python culture."
Python's philosophy rejects the Perl "there is more than one way to do it" approach to language design in favor
of "there should be one—and preferably only one—obvious way to do it".
Python's developers strive to avoid premature optimization, and reject patches to non-critical parts of Python
that would offer marginal increases in speed at the cost of clarity. When speed is important, a Python
programmer can move time-critical functions to extension modules written in languages such as C, or use PyPy,
a just-in-time compiler. Python is also available, which translates a Python script into C and makes direct C-
level API calls into the Python interpreter. An important goal of Python's developers is keeping it fun to use.
This is reflected in the language's name—a tribute to the British comedy group Monty Python and in
occasionally playful approaches to tutorials and reference materials, such as examples that refer to spam and
eggs (from a famous Monty Python sketch) instead of the standard foo and bar.
A common neologism in the Python community is pythonic, which can have a wide range of meanings related
to program style. To say that code is pythonic is to say that it uses Python idioms well, that it is natural or shows
fluency in the language, that it conforms with Python's minimalist philosophy and emphasis on readability. In
contrast, code that is difficult to understand or reads like a rough transcription from another programming
language is called unpythonic. Users and admirers of Python, especially those considered knowledgeable or
experienced, are often referred to as Pythonists, Pythonistas, and Pythoneers.
9
BACKEND
MySQL is an open-source relational database management system (RDBMS). Its name is a combination of
"My", the name of co-founder Michael Widenius' daughter, and "SQL", the abbreviation for Structured Query
Language. The MySQL development project has made its source code available under the terms of the GNU
General Public License, as well as under a variety of proprietary agreements. MySQL was owned and
sponsored by a single for-profit firm, the Swedish company MySQL AB, now owned by Oracle Corporation.
MySQL is a central component of the LAMP open-source web application software stack (and other "AMP"
stacks). LAMP is an acronym for "Linux, Apache, MySQL, Perl/PHP/Python". Applications that use the
MySQL database include: TYPO3, MODx, Joomla, WordPress, phpBB, MyBB, and Drupal. MySQL is also
used in many high-profile, large-scale websites, including Google (though not for
searches), Facebook, Twitter, Flickr, and YouTube.
History
MySQL was created by a Swedish company, MySQL AB, founded by David Axmark, Allan Larsson
and Michael "Monty" Widenius. Original development of MySQL by Widenius and Axmark began in
1994. The first version of MySQL appeared on 23 May 1995. It was initially created for personal usage
from MySQL based on the low-level language ISAM, which the creators considered too slow and inflexible.
They created a new SQL interface, while keeping the same API as MySQL. By keeping the API consistent with
the MySQL system, many developers were able to use MySQL instead of the (proprietarily licensed) MySQL
antecedent.
Features
MySQL is offered under two different editions: the open source MySQL Community Server and the
proprietary Enterprise Server.[61] MySQL Enterprise Server is differentiated by a series of proprietary
extensions which install as server plugins, but otherwise shares the version numbering system and is built from
the same code base.
10
● Stored procedures, using a procedural language that closely adheres to SQL/PSM[62]
● Triggers
● Cursors
● Updatable views
● Online DDL when using the InnoDB Storage Engine.
● Information schema
● Partitioned tables with pruning of partitions in optimizer
● Shared-nothing clustering through MySQL Cluster
● Multiple storage engines, allowing one to choose the one that is most effective for each table in the
application.
● Native storage engines InnoDB, MyISAM, Merge, Memory (heap), Federated, Archive, CSV,
Blackhole, NDB Cluster.
● Commit grouping, gathering multiple transactions from multiple connections together to increase the
number of commits per second.
Deployment
MySQL can be built and installed manually from source code, but it is more commonly installed from a binary
package unless special customizations are required. On most Linux distributions, the package management
system can download and install MySQL with minimal effort, though further configuration is often required to
adjust security and optimization settings.
11
Though MySQL began as a low-end alternative to more powerful proprietary databases, it has gradually
evolved to support higher-scale needs as well. It is still most commonly used in small to medium scale single-
server deployments, either as a component in a LAMP-based web application or as a standalone database
server. Much of MySQL's appeal originates in its relative simplicity and ease of use, which is enabled by an
ecosystem of open source tools such as phpMyAdmin. In the medium range, MySQL can be scaled by
deploying it on more powerful hardware, such as a multi-processor server with gigabytes of memory.
A typical high-end configuration can include a powerful master database which handles data write operations
and is replicated to multiple slaves that handle all read operations. The master server continually pushes binlog
events to connected slaves so in the event of failure a slave can be promoted to become the new master,
minimizing downtime. Further improvements in performance can be achieved by caching the results from
database queries in memory using memcached, or breaking down a database into smaller chunks
called shards which can be spread across a number of distributed server clusters.
12
TOOLS TO BE USED FOR DEVELOPMENT
13
For the Back End XAMPP is being utilized for Database:-
XAMPP is a free and open source cross-platform web server solution stack package developed by Apache
Friends, consisting mainly of the Apache HTTP Server, MariaDB database, and interpreters for scripts written
in the PHP and Perl programming languages. XAMPP stands for Cross-Platform (X), Apache (A), MariaDB
(M), PHP (P) and Perl (P). It is a simple, lightweight Apache distribution that makes it extremely easy for
developers to create a local web server for testing and deployment purposes. Everything needed to set up a web
server – server application (Apache), database (MariaDB), and scripting language (PHP) – is included in an
extractable file. XAMPP is also cross-platform, which means it works equally well on Linux, Mac and
Windows. Since most actual web server deployments use the same components as XAMPP, it makes
transitioning from a local test server to a live server extremely easy as well.
XAMPP is an easy to install Apache distribution for Windows, Mac OS X, Linux and Solaris. The package
includes the Apache web server, MySQL, PHP, Perl, a FTP server and phpMyAdmin.
XAMPP has been designed to be the easiest way to install and run a development server. There are numerous
other WAMP packages available, but XAMPP is one of the most complete on offer. In addition to Apache,
MySQL, and PHP, XAMPP includes other really useful tools such as the phpMyAdmin database administration
tool, FileZilla FTP server, Mercury mail server, Perl programming language, and JSP server Tomcat.
In the XAMPP control panel you can configure the above services with ease. XAMPP can also install an
administration site as the home page of the server. From which you can undertake all manner of administrative
tasks, such as checking the server status and security, launch tools like phpMyAdmin and Webalizer analytics.
You can also view PHP demos which can be of use for those developers who are just starting out.
Overall, XAMPP is a great tool for anyone looking to get a full development server up and running within quick
time constraints. The only issue that we can see, is that because it is so easy to setup, it doesn't have the security
features for this to be used as a production server. However, if you really need to make the server Web
accessible, then you can do so, albeit against the advice of the Apache Friends development team.
14
15
HARDWARE & SOFTWARE REQUIREMENTS
HARDWARE REQUIREMENTS:
Hardware requirements include that hardware which is required for its working. It includes:
SOFTWARE REQUIREMENTS
Windows:
Microsoft Windows 10/8/7 (incl.64-bit)
1 GB RAM minimum
2 GB RAM recommended
1024x768 minimum screen resolution
Python 3.6
Mac:
Mac OS X 10.8 or higher
1 GB RAM minimum
2 GB RAM recommended
Python 3.6
Linux:
512 MB RAM minimum, 1 GB RAM recommended
1024x768 minimum screen resolution
Python 3.6
16
MODEL USED
Iterative Model
An iterative lifecycle model does not attempt to start with a full specification of requirements. Instead,
development begins by specifying and implementing just part of the software, which can then be reviewed in
order to identify further requirements. This process is then repeated, producing a new version of the software
for each cycle of the model. Consider an iterative lifecycle model which consists of repeating the following four
phases in sequence:
1. A Requirements phase, in which the requirements for the software are gathered and analyzed. Iteration
should eventually result in a requirements phase that produces a complete and final specification of
requirements.
2. A Design phase, in which a software solution to meet the requirements is designed. This may be a new
design, or an extension of an earlier design.
3. An Implementation and Test phase, when the software is coded, integrated and tested.
17
4. A Review phase, in which the software is evaluated, the current requirements are reviewed, and changes and
additions to requirements proposed.
5. For each cycle of the model, a decision has to be made as to whether the software produced by the cycle will
be discarded, or kept as a starting point for the next cycle (sometimes referred to as incremental
prototyping). Eventually a point will be reached where the requirements are complete and the software can
be delivered, or it becomes impossible to enhance the software as required, and a fresh start has to be made.
6. The iterative lifecycle model can be likened to producing software by successive approximation. Drawing
an analogy with mathematical methods that use successive approximation to arrive at a final solution, the
benefit of such methods depends on how rapidly they converge on a solution.
7. The key to successful use of an iterative software development lifecycle is rigorous validation of
requirements, and verification (including testing) of each version of the software against those requirements
within each cycle of the model. The first three phases of the example iterative model is in fact an
abbreviated form of a sequential V or waterfall lifecycle model. Each cycle of the model produces software
that requires testing at the unit level, for software integration, for system integration and for acceptance. As
the software evolves through successive cycles, tests have to be repeated and extended to verify each
version of the software.
18
TABLES
1.Staff: This table contains the information about staff that can use the software .Details of staff consist of
their staff id, name, mobile number, designation, email and login password.
Table 1:Staff
19
2.Department: This table contains the information about departments that are there in school or college.
Details of department consist of department name, location and description.
Table 2:Department
20
3.Employee: This table contains the information about employees that are there in school or college. Details of
employee consist of their id, name, father name, mobile number, designation, email, location, status, password
and their respective department.
Table 3:Employee
21
3.Visitor: This table contains the information about visitors that are visiting the school or college regarding any
work. Details of visitor consist of their id, name, mobile number, email, department they are going to visit,
employee id(which employee they are going to meet with), nature of work, photo, date, time, approximate time,
actual exit, and status(In or Out).
Table 4:Visitor
22
SCREENSHOTS
1.Add staff: This window adds new staff for the project.
23
2.View staff: This window shows all the staff .
24
3.Update staff: In this window we can update staff by searching them with their staff id.
25
4.Delete staff: In this window we can delete the staff by searching them with their staff id.
26
5.Add new department: This window add new department.
27
6.View departments: This window shows all the departments.
28
7.Update staff: In this window we can update a department .
29
8.Delete department: In this window we can delete the department.
30
9.Add new employee: This window adds new employees with their respective department.
31
10.View employees: This window shows all the employees.
32
11.Update employee: In this window we can update the employee information.
33
12.Send message: In this window we can send message to all the employess.
34
13.Send message department wise: In this window we can send the message department wise.
35
14.Visitor entry: This window adds a new visitor with respect to which department and employee(of the
selected department) they are visiting.
36
15.Visitor pass: A visitor pass is generated after we add a visitor.
37
16.Change visitor status: This window changes the status of the visitor from IN to OUT by selecting their
visitor id.
38
17.View daily visitors: This window shows all the visitors of the current date.
39
18.View all visitors: This window shows all the visitors till the date.
40
19.Staff login: In this window the staff can login if they want to change their login password.
41
20:Change password: In this window the staff can change their login password by writing the old password
and the new password.
42
Conclusion
The project entitled “ Cloud Based Visitor Management System” has been proposed to be implementing to
replace the manual system.
The developed system accomplished all the objectives stated for the need for the change of the system.
The outputs produced seem to satisfy all the users but it will definitely take to look forward for the real
consequences the new could produce.
This project was made user friendly by the use of python language enabling the user to interact easily with the
database.
It also enabled the platform to serve the needs of emerging technology trends and needs.
43
BIBLIOGRAPHY:
To bring the system to verge of completion the following books have been referred:
• https://www.w3schools.com
• https://www.tutorialspoint.com/
44