CVMS

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 28

Company Visitor Management System

COURSE TITLE - MCA

Mini Project Report –MSCL044


By
Enrollment Number: - 180445265
KULDEEP KUMAR

IGNOU UNIVERSITY, NEW DELHI


REPORT INDEX

S no. Chapter

1 Introduction (Project Modules description)

2 Purpose

3 Scope
4 Requirement Specification (Hardware and Software)

5 Analysis and Design (Use case, Class , ER and DFD Diagrams)

6 MySQL Database Tables (Tables and Database Schema)

7 Implementation and System Testing


INTRODUCTION

Introduction:-

Company Visitor Management system is a web-based technology that will


revolutionize the way your company manages visitors. Visitor Management
system is more important to security guards or security company. This web
application provides a way to effectively control record & track company visitor
traffic.

In CVMS we use Python language with Django framework and MySQL database.
This is the project which keeps records of visitors who visited in the
company. CVMS has one module i.e. admin

1. Dashboard: In this sections, admin can briefly view how many visitors
visited in a particular period.
2. Visitors: In this section, admin adds new visitors by filling their information
in add visitors sections and also view and manage visitor’s records. Admin
also put visitors out time in the manage records section.
3. Search: In this bar, admin can search a particular person by their name and
phone number.
4. Reports: In this section admin can generate visitor’s reports between two
dates.
Admin can also update his profile, change password and recover password.

Purpose:-

The purpose of developing company visitor management system is to


computerized the tradition way of visitors. Another purpose for developing this
application is to generate the report automatically.

Scope:-
Company Visitor Management System project is developed as a web application
and it will work over web.

REQUIREMENT SPECIFICATION

Hardware Configuration:

Client Side:
MfgdfRA R RAM 512 MB

Hard disk 10 GB

Processor 1.0 GHz

Server side:
RAM 1 GB
Hard disk 20 GB
Processor 2.0 GHz

Software Requirement:

Client Side:

Web Browser Google Chrome or any compatible browser


Operating System Windows or any equivalent OS

Server Side:
Web Server APACHE
Technology PHP
Platform XAMPP
Database Server MYSQL
Web Browser Google Chrome or any compatible browser
Operating System Windows or any equivalent OS

APACHE

The Apache HTTP Server Project is an effort to develop and maintain an open-
source HTTP server for modern operating systems including UNIX and Windows.
The goal of this project is to provide a secure, efficient and extensible server that
provides HTTP services in sync with the current HTTP standards.

The Apache HTTP Server ("httpd") was launched in 1995 and it has been the most
popular web server on the Internet since April 1996. It has celebrated its 20th
birthday as a project in February 2015.

PHP
PHP, or Hypertext Preprocessor, is a widely-used open-source scripting language
that is particularly suited for web development and can be embedded into HTML.
It's known for its ease of use, flexibility, and vast community support. PHP is
commonly used for creating dynamic web pages, processing forms, managing
databases, and building web applications.

Some key features of PHP include:

1. Simplicity: PHP syntax is similar to C and Perl, making it easy to learn and
use.
2. Integration: PHP can be easily embedded into HTML, allowing developers
to mix PHP code with HTML markup.
3. Cross-platform: PHP runs on various operating systems, including
Windows, macOS, Linux, and Unix.
4. Database support: PHP supports many databases, including MySQL,
PostgreSQL, SQLite, and others, making it suitable for building database-
driven websites.
5. Open-source: PHP is open-source software, meaning it's free to use,
distribute, and modify.
6. Large ecosystem: PHP has a vast ecosystem of frameworks, libraries, and
tools that facilitate rapid development and enhance functionality.

In a company Visitor Management System (VMS), PHP can play several important
roles, primarily in the backend development and server-side logic of the system.
Here's how PHP can be utilized in a VMS:

1. User Interface Interaction: PHP can handle interactions between the user
interface (UI) and the server. When visitors interact with the VMS through
the web interface, PHP scripts process their requests, validate input data,
and generate appropriate responses.
2. Visitor Registration: PHP can manage the registration process for new
visitors. It handles form submissions from visitors, validates the input data,
and stores the visitor information securely in a database.
3. Database Interaction: PHP interacts with the database to store and
retrieve visitor data. When a visitor checks in or checks out, PHP scripts
execute SQL queries to update the database accordingly. This includes
storing visitor details such as name, contact information, purpose of visit,
check-in/out time, and any other relevant information.
4. Access Control: PHP can enforce access control rules within the VMS. It
verifies the identity of users who are accessing the system, determines
their permissions based on their roles or privileges, and restricts access to
sensitive features or data as necessary.
5. Notifications and Alerts: PHP can send notifications and alerts to relevant
parties within the VMS. For example, it can notify hosts or administrators
when a visitor checks in, send reminders for upcoming appointments, or
alert security personnel in case of emergencies.
6. Reporting and Analytics: PHP can generate reports and analytics based on
visitor data stored in the system. It can calculate metrics such as visitor
traffic, peak visiting hours, popular destinations within the facility, and
other insights that help in optimizing the visitor experience and resource
allocation.
7. Integration with Other Systems: PHP can facilitate integration with other
systems and services that the VMS interacts with, such as access control
systems, visitor badge printing systems, email servers, or external
databases.

MYSQL

 MYSQL is a database server

 MYSQL is ideal for both small and large


applications
 MYSQL supports standard SQL
 MYSQL compiles on a number of platforms

 MYSQL is free to download and use


 How to access MySQL:

http://localhost/phpmyadmin

ANALYSIS AND DESIGN

Analysis:

In present all visitor work done on the paper. The whole year visitor is stored in

the registers. We can’t generate reports as per our requirements because its take

more time to calculate the visitors report.

Disadvantage of present system:

 Not user friendly: The present system not user friendly because data is

not stored in structure and proper format.

 Manual Control: All report calculation is done manually so there is a

chance of error.

 Lots of paper work: Visitors maintain in the register so lots of paper

require storing details.

 Time consuming

Design Introduction:
Design is the first step in the development phase for any techniques and
principles for the purpose of defining a device, a process or system in sufficient
detail to permit its physical realization.
Once the software requirements have been analyzed and specified the software
design involves three technical activities - design, coding, implementation and
testing that are required to build and verify the software.

The design activities are of main importance in this phase, because in this
activity, decisions ultimately affecting the success of the software
implementation and its ease of maintenance are made. These decisions have the
final bearing upon reliability and maintainability of the system. Design is the only
way to accurately translate the customer’s requirements into finished software
or a system.

Design is the place where quality is fostered in development. Software design is a


process through which requirements are translated into a representation of
software. Software design is conducted in two steps. Preliminary design is
concerned with the transformation of requirements into data

UML Diagrams:
Actor:
A coherent set of roles that users of use cases play when interacting with
the use `cases.
Use case: A description of sequence of actions, including variants, that a system
performs that yields an observable result of value of an actor.

UML stands for Unified Modeling Language. UML is a language for specifying,
visualizing and documenting the system. This is the step while developing any
product after analysis. The goal from this is to produce a model of the entities
involved in the project which later need to be built. The representation of the
entities that are to be used in the product being developed need to be designed.

USECASE DIAGRAMS:

Use case diagrams model behavior within a system and helps the developers
understand of what the user require. The stick man represents what’s called an
actor.

Use case diagram can be useful for getting an overall view of the system and
clarifying who can do and more importantly what they can’t do.

Use case diagram consists of use cases and actors and shows the interaction
between the use case and actors.

 The purpose is to show the interactions between the use case and
actor.
 To represent the system requirements from user’s perspective.
 An actor could be the end-user of the system or an external system.

USECASE DIAGRAM:A Use case is a description of set of sequence of actions.


Graphically it is rendered as an ellipse with solid line including only its name. Use
case diagram is a behavioral diagram that shows a set of use cases and actors and
their relationship. It is an association between the use cases and actors. An
actor represents a real-world object. Primary Actor – Sender, Secondary Actor
Receiver.

Use Case Diagrams:

Admin Login

Dashboard
Add New Visitors

Manage Visitors

(Update/Del Details)

Generate Reports

Update Profile

Change Password

Password Recovery

Class Diagram:

A description of set of objects that share the same attributes operations,


relationships, and semantics
ER Diagram:

The Entity-Relationship (ER) model was originally proposed by Peter in 1976


[Chen76] as a way to unify the network and relational database views. Simply
stated the ER model is a conceptual data model that views the real world as
entities and relationships. A basic component of the model is the Entity-
Relationship diagram which is used to visually represent data objects. Since Chen
wrote his paper the model has been extended and today it is commonly used for
database design for the database designer, the utility of the ER model is:

 It maps well to the relational model. The constructs used in the ER model
can easily be transformed into relational tables.
 It is simple and easy to understand with a minimum of training. Therefore,
the model can be used by the database designer to communicate the
design to the end user.
 In addition, the model can be used as a design plan by the database
developer to implement a data model in specific database management
software.

ER Notation

There is no standard for representing data objects in ER diagrams. Each modeling


methodology uses its own notation. The original notation used by Chen is widely
used in academics texts and journals but rarely seen in either CASE tools or
publications by non-academics. Today, there are a number of notations used;
among the more common are Bachman, crow's foot, and IDEFIX.

All notational styles represent entities as rectangular boxes and relationships as


lines connecting boxes. Each style uses a special set of symbols to represent the
cardinality of a connection. The notation used in this document is from Martin.
The symbols used for the basic ER constructs are:

 Entities are represented by labeled rectangles. The label is the name of the

entity. Entity names should be singular nouns.

 Relationships are represented by a solid line connecting two entities. The

name of the relationship is written above the line. Relationship names

should be verbs

 Attributes, when included, are listed inside the entity rectangle. Attributes

which are identifiers are underlined. Attribute names should be singular

nouns.

 Cardinality of many is represented by a line ending in a crow's foot. If the

crow's foot is omitted, the cardinality is one.

Existence is represented by placing a circle or a perpendicular bar on the line.


Mandatory existence is shown by the bar (looks like a 1) next to the entity for an
instance is required. Optional existence is shown by placing a circle next to the
entity that is optional.
Data Flow Diagram
A DFD does not show a sequence of steps. A DFD only shows what the different
process in a system is and what data flows between them.

The following are some DFD symbols used in the project

External entities

Process: A transaction of information that resides within


the bounds of the system to be module.

DATAFLOWS

DATASTORE: A repository of data that is to be


stored for use by one or more processes, may
be as simple as buffer of queue or as a
RULES FOR DFD: relational database.

 Fix the scope of the system by means of context diagrams.


 Organize the DFD so that the main sequence of the actions
reads left to right and top to bottom.
 Identify all inputs and outputs.
 Identify and label each process internal to the system with
rounded circles.
 A process is required for all the data transformation and
transfers. Therefore, never connect a data store to a data
source or the destinations or another data store with just a
data flow arrow.
 Do not indicate hardware and ignore control information.
 Make sure the names of the processes accurately convey
everything the process is done.
 There must not be unnamed process.
 Indicate external sources and destinations of the data, with
squares.
 Number each occurrence of repeated external entities.
 Identify all data flows for each process step, except simple
Record retrievals.
 Label data flow on each arrow.
 Use details flow on each arrow.
 Use the details flow arrow to indicate data movements.
 There can’t be unnamed data flow.
 A data flow can’t connect two external entities.
LEVELS OF DFD:

The complexity of the system means that it is a responsible to represent the


operations of any system of single data flow diagram. At the top level, an
Overview of the different systems in an organization is shown by the way of
context analysis diagram. When exploded into DFD

They are represented by:


 LEVEL-0 : SYSTEM INPUT/OUTPUT
 LEVEL-1:SUBSYSTEM LEVEL DATAFLOW FUNCTIONAL
 LEVEL-2: FILE LEVEL DETAIL DATA FLOW.
The input and output data shown should be consistent from one level to the
next.

LEVEL-0: SYSTEM INPUT/OUTPUT LEVEL

A level-0 DFD describes the system-wide boundaries, dealing inputs to and


outputs from the system and major processes. This diagram is similar to the
combined user-level context diagram.

LEVEL-1: SUBSYSTEM LEVEL DATA FLOW

A level-1 DFD describes the next level of details within the system,
detailing the data flows between subsystems, which makeup the whole.

LEVEL-2: FILE LEVEL DETAIL DATA FLOW

All the projects are feasible given unlimited resources and infinite time. It is both
necessary and prudent to evaluate the feasibility of the project at the earliest
possible time. Feasibility and the risk analysis are pertained in many ways. If
project risk is great.
ZERO LEVEL DTAFLOW DIAGRAM

FIRST LEVEL DTAFLOW DIAGRAM


SECOND LEVEL DTAFLOW DIAGRAM
IMPLEMENTAION AND SYSTEM TESTING

After all phase have been perfectly done, the system will be implemented to the
server and the system can be used.

System Testing

The goal of the system testing process was to determine all faults in our project .The
program was subjected to a set of test inputs and many explanations were made and
based on these explanations it will be decided whether the program behaves as expected
or not. Our Project went through two levels of testing

1. Unit testing

2. Integration testing

UNIT TESTING
Unit testing is commenced when a unit has been created and effectively
reviewed .In order to test a single module we need to provide a complete
environment i.e. besides the section we would require

 The procedures belonging to other units that the unit under test calls

 Non local data structures that module accesses

 A procedure to call the functions of the unit under test with


appropriate parameters
1. Test for the admin module

 Testing admin login form-This form is used for log in of administrator of


the system. In this form we enter the username and password if both are
correct administration page will open otherwise if any of data is wrong it
will get redirected back to the login page and again ask the details.

 Report Generation: admin can generate report from the main database.

INTEGRATION TESTING

In the Integration testing we test various combination of the project module by


providing the input.

The primary objective is to test the module interfaces in order to confirm that no
errors are occurring when one module invokes the other module.
EVALUATION

Login Page

Dashboard
Admin Profile

Change Password
Add New Visitor

Manage Visitor

Update Visitor Detail


Between Dates Report of Visitor

Search Data
CONCLUSION

This Application provides a computerized version of Company Visitor


Management System which will benefit the company.

It makes entire process online and can generate reports. It has a facility of
staff’s login where staff can fill the visitor details and generate report.

The Application was designed in such a way that future changes can be
done easily. The following conclusions can be deduced from the development of
the project.

 Automation of the entire system improves the productivity.


 It provides a friendly graphical user interface which proves to be
better when compared to the existing system.
 It gives appropriate access to the authorized users depending on
their permissions.
 It effectively overcomes the delay in communications.
 Updating of information becomes so easier.
 System security, data security and reliability are the striking features.
 The System has adequate scope for modification in future if it is
necessary.

You might also like