You are on page 1of 53

1

ABSTRACT

Facial recognition technologies have undergone largescale upgrades in


performance in the last decade and such systems are now popular in fields such
as security and commerce. This work details a real-time automated attendance
system which will mark attendance of students and employees alike. The
proposed system is a real-world solution to handle day-day activities of an
organization such as a college. The main task is using Principle Component
Analysis in recognizing the faces of the detected person with high accuracy.
The automated system maintains the attendance records of student as manual
management of ledgers is a very tedious task. The system enrolls the subject’s
face into the database against the subject’s ID (unique) and Name. The system
then allots attendance to the recognized faces in the database
2

CHAPTER 1

INTRODUCTION

1.1 PROJECT DESCRIPTION

To verify the student attendance record, the personnel staff ought to have an
appropriate system for approving and maintaining the attendance record
consistently. By and large, there are two kinds of student attendance framework,
i.e. Manual Attendance System (MAS) and Automated Attendance System (AAS).
Practically in MAS, the staff may experience difficulty in both approving and
keeping up every student's record in a classroom all the time. In a classroom with a
high teacher-to-student ratio, it turns into an extremely dreary and tedious process
to mark the attendance physically and cumulative attendance of each student.
Consequently, we can execute a viable framework which will mark the attendance
of students automatically via face recognition. AAS may decrease the managerial
work of its staff. Especially, for an attendance system which embraces Human
Face Recognition (HFR), it normally includes the students' facial images captured
at the time he/she is entering the classroom, or when everyone is seated in the
classroom to mark the attendance.

1.2 SCOPE OF PROJECT

The scope of the project is the system on which the software is installed, i.e.
the project is developed as a windows application and it will work for a
particular institute/schools.
The attendance system of the student can be maintained in two different
forms namely,
 Manual Attendance System (MAS)
 Automated Attendance System (AAS)
3

. CHAPTER 2

SYSTEM ANALYSIS

2.1 INTRODUCTION

System analysis refers to the study of existing system in terms of system goals. The
system analysis of a project includes the basic analysis for the project development, the required
data to develop the project, the cost factor considered for the project development and other
related factors.

2.2 FEASIBILITY STUDY

Feasibility is defined as the practical extent to which a project can be performed


successfully. To evaluate feasibility, a feasibility study is performed, which determines whether
the solution considered to accomplish the requirements is practical and workable in the software.
Information such as resource availability, cost estimation for software development, benefits of
the software to the organization after it is developed and cost to be incurred on its maintenance
are considered during the feasibility study. The objective of the feasibility study is to establish
the reasons for developing the software that is acceptable to users, adaptable to change and
conformable to established standards. Other objectives of feasibility study are

 To analyse whether the software will meet organizational requirements


 To determine whether the software can be implemented using the current technology and
within the specified budget and schedule
 To determine whether the software can be integrated with other existing software.

Types of Feasibility
Commonly considered feasibility includes:

 Technical feasibility
 Operational feasibility
 Economic feasibility      
4

2.2.1Technical feasibility          
Technical feasibility assesses the current hardware and software resources and
technology, which are required to accomplish user requirements in the software within the
allocated time and budget. For this, the software development team ascertains whether the
current resources and technology can be upgraded or added in the software to accomplish
specified user requirements. Technical feasibility also performs the following tasks:

 Analyses the technical skills and capabilities of the software development team members
 Determines whether the relevant technology is stable and established
 Ascertains that the technology chosen for software development has a large number of
users so that they can be consulted when problems arise or improvements are required.

2.2.2 Operational feasibility


Operational feasibility assesses the extent to which the required software performs a
series of steps to solve business problems and user requirements. This feasibility is dependent on
human resources i.e., the software development team and involves visualizing whether the
software will operate after it is developed and be operative once it is installed. Operational
feasibility also performs the following tasks:

 Determines whether the problems anticipated in user requirements are of high priority
 Determines whether the solution suggested by the software development team is
acceptable
 Analyses whether users will adapt to a new software
 Determines whether the organization is satisfied by the alternative solutions proposed by
the software development team.

2.2.3 Economic feasibility


Economic feasibility determines whether the required software is capable of generating
financial gains for an organization. It involves the cost incurred on the software development
team, estimated cost of hardware and software, cost of performing feasibility study, and so on.
For this, it is essential to consider expenses made on hardware purchases and activities required
to carry out software development. In addition, it is necessary to consider the benefits that can be
5

achieved by developing the software. Software is said to be economically feasible if it focuses


on the below listed issues:

 Cost incurred on software development to produce long-term gains for an organization


 Cost required to conduct full software investigation such as, requirements elicitation and
requirements analysis
 Cost of hardware, software, development team, and training.

2.3 EXISTING SYSTEM


The existing system In the Fingerprint based existing attendance system, a portable
fingerprint device need to be configured with the students fingerprint earlier. Later either
during the lecture hours or before, the student needs to record the fingerprint on the
configured device to ensure their attendance for the day.
. The following are the disadvantages of the existing system,

• The problem with this approach is that during the lecture time it may distract the attention
of the students.
• Student Forget to add the fingerprint

2.4 PROPOSED SYSTEM

The proposed system is to capture the face of each student and to store
it in the database for their attendance. The face of the student needs to be
captured in such a manner that all the feature of the students' face needs to be
detected, even the seating and the posture of the student need to be recognized.
There is no need for the teacher to manually take attendance in the class
because the system records a video and through further processing steps the
face is being recognized and the attendance database is updated.
6

2.5 SYSTEM REQUIREMENTS

2.5.1 Hardware Requirements

Processor : Intel Pentium Dual Core

RAM : 2 GB

HDD : 160GB

Monitor : 15.6” HD DELL

Clock Speed : 2.2 GHZ

2.5.2 Software Requirements


Operating system : Windows 7.

Coding Language : Java using JSP

Tool : Netbeans

Database : MYSQL

2.6 LANGUAGE SPECIFICATION

2.6.1 FEATURES OF FRONT END

JAVA SERVER PAGES (JSP)


 
Java server pages(JSP)is based on java languages and used to
develop dynamic web pages JSP was developed by Sun Microsystems to allow
server side development. JSP files are HTML files with special Tags containing
Java source code that provide the dynamiccontent.JSP provide excellent server side
scripting support for creating database driven web applications. JSP is a java
technology which allows developers to create wide ranges of web services like
ecommerce, banking, corporate intranet banking. JSP combines HTML, XML,
7

Java Servlet and JavaBeans technologies into one highly productive technology


which allow web developers to develop reliable, high performance and platform
independent web applications.JSP is easy to learn as JSP is based on java it
provide robust platform for web development. JSP file contains the HTML, XML,
Java Servlet and Java Beans technologies. You can take one JSP file move it to the
different platform web server or JSP servlet engine.
 
ADVANTAGES OF JSP
 
1. Write once runs anywhere
As JSP is based on java so, it provides it platform independent functionality .once
the program of JSP is written it can be deployed or run on any JSP enabled server.
Without rewriting the changes. 
2. Uses Servlet API
If you are a servlet developer, then it is easy to move over to JSP. In fact, servlet
developers are at a distinct advantage because JSP is nothing but a high-level
abstraction of servlets. You can do almost anything that can be done with servlets
using JSP in a easy way. 
3. Separate dynamic part from the static
JSP provide a new feature that it separate a dynamic part of program from the
static HTML part 
4. JSP container
Provide easy way for accessing objects and actions.
 
Comparison between JSP and ASP
Functionally both the languages are same with some differences. JSP is developed
by Sun Microsystems so it acquire the features of java .while ASP is developed by
Microsoft .JSP is platform independent it run on any operating system that confirm
8

to theJ2EEspecifications. Whereas ASP is mostly found on Microsoft platforms i.e.


NT, JSP allow component reuse by using JavaBeans and EJBs. ASP provides the
use of COM / ActiveX controls.
Comparison of JSP with ASP.net
The main difference between JSP and ASP .net is that ASP. net is based
Microsoft .NET frame work. but JSP is independent just like java.
 Comparison of JSP with Servlet
A java class which provide special side services is called server but t is hard work
to write 
HTML code in Servlets. In Servlets numbers of println statements are used to
generate HTML. JSP pages are converted to Servlets so actually can do the same
thing as old Java Servlets.
JSP ARCHITECTURE

JSPs are built on SUN Microsystems' servlet technology. JSPs are HTML page
with specialJSP tags. These JSP tags can contain Java code. The JSP file extension
is.jsp. The JSPengine parses the.jspand creates a Javaservlet source file. when first
time jsp file compile, the JSP is probably slower the first time it is accessed. Any
time after this the specialcompiled servlet is executed and is therefore returns
faster. 

SETTING UP JSP ENVIRONMENT

1.Download the latest JDK .


2.Setting the path and class path for window 2000 and XP edit the environment
variables
control panel-->system-->Environment variable
3.Download JSP environment.
9

FIRST JAVA PAGE

A JavaServerPage, is a web page which is embedded Java code. Java code is


executed in the server side and merge with the static elements of the web page such
as HTML tags then returns the result which is plain old HTML code, JavaScript
and CSS to the web browser.
 
<%@pagecontentType="text/html"pageEncoding="UTF-8"%>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTD HTML 4.01
Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>
JSP Page!</title></head><body><h1><%out.println("Hello to all!");
%></h1></body></html>JSP is composed of HTML and java code. java code
is embedded between the notations<%and %>and it is calledScriplet .Inside the
scriptlet block, we call the methodprintln of theout object to print the text "Hello to
all"
 
JSP SCRIPTING ELEMENTS
JSP scripting allows you to add java code the servlet which is generated from the
jsp page.These are the forms of scripting elements such as comments, expression ,
scriptlet ,declaration and expression language.
 
JSP Comments
JSP comments are used to explain the complicated logic code or to mark some
region inside a JSP page for later changes. Comments in JSP is declared inside a
JSP page as follows: comments are embedded inside <%-- and -- %> <%-- This is
10

a JSP comment for single line --%> <%--This is a JSP comment for multiple
lines --%>.

 
JSP Expressions
Expression is used to insert values directly to the output. Syntax of expression is as
follows 
<%= expression %> there is no space between <% and = for example: To show the
current date and time Date :<%=new java.util.Date() %> 

JSP Scriptlet
Scriplet are just like Expressions without having "=" equal sign. any java code can
be insertinside the scriplet. Syntax of Scriptlet  
<% // any java source code here %>

 
JSP Declaration
 If you want to define methods or fields you can use JSP declaration. The JSP
declaration is surrounded by the sign <%! and %>.Syntax to declare a variable 
<%!inta =30; %> 
here variable a is declare
JSP Directive tag 
JSP directive tag gives special information about the page to the JSP engine.Syntax
of Directive tag 
Directive tag (<%@ directive ... %>)there are mainly three type of directive tags
1. page:
11

- used to provide the information about the page.


2. include:
- include is used to include a file in a JSP page.  
3. tag library:-
Tag lib is used to use the custom tags in the JSP pages (custom tags allows us to
defined our own tags). 
JSP LIFE CYCLE
JSP Life cycle can be divided into four phases
1. Translation:-
 In translation phase, JSP engine translate JSP page into its page implementation
class if the syntax is correct. This class is actually a standard Java servlet. After
that, JSP engine compiles the source file into class file and ready for use. When the
container get there request, then it checks for the changes in the JSP page since it
was last translated. If no changes was occur, JSP loads the servlet otherwise the
process of check occurs, then it translate and compile again. Because the
compilation process takes time so JSP engine wants to minimize it to increase the
performance of the page processing.
2. Initialization:-
JSP engine loads the class file and create an instance of of the servlet to handle
processing of the initial request. JSP engines will call a method jspInit()to initialize
the a servlet. Jsp Init method is generated during the translation phase which is
normally used for initializing application-level parameters and resource 
<%! public void jspInit() {  // write custom here} %> 
3. Execution:-
After the initialization phase, the web container calls jsp Service()to handle the
request and returning a response to the client. Each request is handled in a
separate thread.
12

4. Finalization:-
In the finalization phase, the web container calls the method jsp Destroy(). This
method is used to clean up memory and resources.<%! public void jspInit() {  //
write custom code here //to cleanup the resources} %> 

JSP IMPLICIT OBJECTS

These objects are available for the JSP developer and they can use
the objects in the JSP files without declaring the objects in the JSP. JSP container
provides a list of instantiated objects for you to access different kind of data in a
web application. These objects are called implicit objects as they are automatically
available for the implement. The following is the list of few implicit objects used
in JSP request object response object session object out object page context object
config object exception object application object.

JSP stands for Java Servlet Pages and is utilized for server-side technology


which is an augmentation of Servlet technology that was created by Sun
Microsystem. The servlet will get executed on client browser where as JSP will get
executed on the server. JSP is utilized to create dynamic web applications like as a
Servlet technology, but gives extra functionalities like custom
tags , JSTL , expression language . JSP concentrates for the most part of
presentation logic of the application. Servlet run quicker than JSP, the fundamental
favorable position of JSP is less coding contrasted with servlets.
Following is the conceptual figure which explains the flow of code.
13

JSP contains both Java and HTML in the same file. JSP is same
like HTML , but the difference in JSP developer writes Java code with script tags.
JSP can be easily managed because business logic is separated from presentation
logic. But in Servlet technology, both will be mixed up. When JSP page is updated,
there is no need to recompile and redeploy the project.
Following are the advantages of JSP.

 Easy to maintain.
 Less code than Servlet.
 Extension to Servlet.
 No need to recompile and redeploy.

4.3.2 FEATURES OF BACK END

MySQL Server

MySQL is a database management system.A database is a structured


collection of data. It may be anything from a simple shopping list to a picture
gallery or the vast amounts of information in a corporate network. To add, access,
and process data stored in a computer database, you need a database management
14

system such as MySQL Server. Since computers are very good at handling large
amounts of data, database management systems play a central role in computing,
as standalone utilities, or as parts of other applications.

MySQL databases are relational

A relational database stores data in separate tables rather than putting all the
data in one big storeroom. The database structures are organized into physical files
optimized for speed. The logical model, with objects such as databases, tables,
views, rows, and columns, offers a flexible programming environment. You set up
rules governing the relationships between different data fields, such as one-to-one,
one-to-many, unique, required or optional, and “pointers” between different tables.
The database enforces these rules, so that with a well-designed database, your
application never sees inconsistent, duplicate, orphan, out-of-date, or missing data.
The SQL part of “MySQL” stands for “Structured Query Language”. SQL is the
most common standardized language used to access databases. Depending on your
programming environment, you might enter SQL directly (for example, to
generate reports), embed SQL statements into code written in another language, or
use a language-specific API that hides the SQL syntax.SQL is defined by the
ANSI/ISO SQL Standard. The SQL standard has been evolving since 1986 and
several versions exist. In this manual, “SQL-92” refers to the standard released in
1992, “SQL:1999” refers to the standard released in 1999, and “SQL:2003”refers
to the current version of the standard. We use the phrase “the SQL standard” to
mean the current version of the SQL Standard at any time.

MySQL software is Open Source


15

Open Source means that it is possible for anyone to use and modify the
software. Anybody can download the MySQL software from the Internet and use
it without paying anything. If you wish, you may study the source code and
change it to suit your needs. The MySQL software uses the GPL (GNU General
Public License), http://www.fsf.org/licenses/, 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 code into a commercial application, you can buy a
commercially licensed version from us. See the MySQL Licensing Overview for
more information (http://www.mysql.com/company/legal/licensing/).

The MySQL Database Server is very fast, reliable, scalable, and easy to use
If that is what you are looking for, you should give it a try. MySQL Server can run
comfortably on a desktop or laptop, alongside your other applications, web
servers, and so on, requiring little or no attention. If you dedicate an entire
machine to MySQL, you can adjust the settings to take advantage of all the
memory, CPU power, and I/O capacity available. MySQL can also scale up to
clusters of machines, networked together.

MySQL Server was originally developed to handle large databases much faster
than existing solutions and has been successfully used in highly demanding
production environments for several years. Although under constant development,
MySQL Server today offers a rich and useful set of functions. Its connectivity,
speed, and security make MySQL Server highly suited for accessing databases on
the Internet.

MySQL Server works in client/server or embedded systems


16

The MySQL Database Software 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 a wide range of application
programming interfaces (APIs).We also provide MySQL Server as an embedded
multi-threaded library that you can link into your application to get a smaller,
faster, easier-to-manage standalone product.

A large amount of contributed MySQL software is available

MySQL Server has a practical set of features developed in close cooperation


with our users. It is very likely that your favorite application or language supports
the MySQL Database Server.
17

CHAPTER 3

SYSTEM DESIGN

INTRODUCTION

System design is the process of defining the architecture, components, modules,


interfaces, and data for a system to satisfy specified requirements. System design could be seen
as the application of system theory to product development. System design is simply the design
of system. It implies a systematic and rigorous approach to design an approach demanded by the
scale and complexity of many system problems.

3.1 DATA FLOW DIAGRAM

The Data Flow Diagram is one of the most improvement tools used by the system analyst
DeMacro (1978) Nad Gand Sarson (1979) popularized the use of the data flow diagram as
modeling tools through their structured system analysis methodologies.

A Data Flow Diagram should be the first tool used by the system analyst to model system
components. These components represent the system processes, the data used by this processes
and external entities that interact with the system and the information flows in the system.

A Data Flow Diagram (DFD) is a graphical representation of the "flow" of data through
an information system, modeling its process aspects. Often they are a preliminary step used to
create an overview of the system which can later be elaborated. DFD can also be used for the
visualization of data processing.

A DFD shows what kind of information will be input to and output from the system,
where the data will come from and go to, and where the data will be stored. It does not show
information about the timing of processes, or information about whether processes will operate
in sequence or in parallel.
18

DATA FLOW DIAGRAM

Figure No. 1: ADMIN DATA FLOW DIAGRAM

3.2 UML DIAGRAM

UML stands for Unified Modeling Language. UML is a standardized general purpose
modeling language in the field of object-oriented software engineering. The standard is managed
and was created by, the Objected Management Group.

The goal is for UML to become a common language for creating models of object
oriented computer software. In its current form UML is comprised of two major components: a
19

Meta-model and a notation. In the future, some form of method or process may also be added to
or associated with UML.

The Unified Modeling Language is a standard for specifying, Visualizing, Constructing


and documenting the artifacts of software system, as well as for business modeling and other
non-software systems. The UML represents a collection of best engineering practices that have
proven successful in the modeling of large and complex systems.

The UML uses mostly graphical notations to express the design of software projects.

GOALS OF UML

 Provides users ready-to-use, expressive visual modeling languages so that they can
develop and exchange meaningful models.
 Provides extendibility and specification mechanisms to extend the core concepts.
 Be independent of particular programming language and development process.
There are various kinds of methods in software design. They are as follows:
 Usecase Diagram
 Sequence Diagram
 Class Diagram
 State Chart Diagram
 Activity Diagram
 Collaboration Diagram
 Component Diagram
 Deployment Diagram

3.2.1 USECASE DIAGRAM

Usecase diagram is a graph of actors, a set of use case enclosed by a system boundary
communication association between the actors and the use cases, and generalization among
the /use cases.
20

The usecase diagram of the project revolves around the actors system, admin, user, and
employee respectively and among the actor, the admin have the privilege to access all the
modules where as the others and they are subjected to access a quite little less than the admin in
accessing the modules.
21

3.2.2 ACTIVITY DIAGRAM


Activity diagram shows the sequence of activity that an object goes through during its life
in response to outside stimuli and messages. In state chart diagram, activities of the objects are
represented with rounded rectangles. The transition different states are represented as an arrow
between states.

The project contains three modules mainly and other sub models sequence flow
performed step by step and the system data changes apparently according to the changes
occurred.
22

Activity Diagram
23

3.2.3 CLASS DIAGRAM


A class diagram is an illustration of the relationships and source code dependencies
among classes in the Unified Modeling Language (UML). In this context, a class defines
the methods and variables in an object, which is a specific entity in a program or the unit of code
representing that entity concept is several years old but has been refined as OOP modeling
paradigms have evolved.
24

Class Diagram
25

3.2.4 SEQUENCE DIAGRAM


A sequence diagram shows object interactions arranged in time sequence. It depicts the
objects and classes involved in the scenario and the sequence of messages exchanged between
the objects needed to carry out the functionality of the scenario.

Sequence Diagram
26

3.3 DATABASE DESIGN

Table Name 1: Student Form

FIELD NAME DATA TYPE DESCRIPTION

Name Text Student Name


Emailid Text Emailid
Phoneno Text Phoneno
Address Text Address

Table Name 2: Admin login

FIELD NAME DATA TYPE DESCRIPTION

Loginid Text Admin login name


Password Text Password

Table Name 3: Staff

FIELD NAME DATA TYPE DESCRIPTION

Student Name Text Student Name


Emailid Text Student Emailid
Attendance Text Mark Attendance
27

CHAPTER 4

SYSTEM DEVELOPMENT

4.1 MODULE DESCRIPTION


4.1.1 Admin

4.1.2 Hod

4.1.3 Staff

4.1.4. Students

4.1.1 ADMIN

The Admin is a person who run and manage the system, in this project the owner or
director of the institutue has rights of admin. The Admin creates the structure of a system to
creating standard and classroom.

 Login Add

 Branch Add

 Staff View

 Attendance Leave

 Reports Logout

4.1.2 HOD
28

The main aim of the attendance system fulfill by HOD. HOD can add staff detail
and also view the student details. Finally, HOD can also view the student
attendance details.

 Login

 Add Staff Details

 View Student Details

 View Student Attendance

4.1.3 STAFF

The main aim of the attendance system fulfill by staff. Staff can add
student detail and fill the attendance daily for his division. The staff can only fill
attendance for his division students and he can manage leaves and complains
made by only his division student.

 Login

 Add student

 View Attendance

 Manage Leave

 Change password

4.1.4 STUDENTS

All student have unique username and password to access the system. After login
into system student can view his attendance reports and manage his account. If any student has
any problem regarding education he can directly make complain to his staff using this system.
29

Student can apply for leave through the system and he can get reply from his staff about his leave
status.

 Login

 View Attendance

 Apply leave

 Change Password
30

CHAPTER 5

SYSTEM TESTING

5.1 TESTING PROCESS

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.

5.1.1 VALIDATION TESTING

The final step involves validation testing, which determines whether the software
function as the user expected. The end-user rather than the system developer conduct this test
most software developers as a process called “Alpha and Beta testing” to uncover that only the
end user seems able to find. The compilation of the entire project is based on the full satisfaction
of the end users. In the project, validation testing is made in various forms. In registration form
Email id, phone number and also mandatory fields for the user is verified.

5.1.2 VERIFICATION TESTING

Verification is a functional concept in software design. This is the bridge between


customer requirements and an implementation that satisfies those requirements.
31

Inadequate testing or non-testing, leads to errors, that may appear few months later. This
will create two problems.

o Time delay between the cause and appearance of the problem.


o The effect of the system errors on files and records within the system.

5.2 TYPES OF TESTS

There are many types of testing like

 Unit Testing
 Integration Testing
 System Testing
 Regression Testing
 Acceptance Testing

5.2.1 UNIT TESTING

The procedure level testing is made first. By giving improper inputs, the errors occurred
are noted and eliminated. Then the web form level testing is made. For example, store data to the
table in the correct manner. The dates are entered in wrong manner and checked. Wrong email-id
and website URL (Universal Resource Locator) is given and checked.

1. Unit testing performed in login unit

Test case id: U1 Test case module name: Login

Test Input Expected Actual Status Error id


description output output
Enter admin, successful successful Go to nil
correct admin login login admin
username page
and
32

password
Enter null admin invalid invalid login nil
either or username username failed
username
password

5.2.2 INTEGRATION TESTING

Testing is done for each module. After testing all the modules, the modules are integrated
and testing of the final system is done with the test data, specially designed to show that the
system will operate successfully in all its aspects conditions. Thus the system testing is a
confirmation that all is correct and an opportunity to show the user that the system works.

Test case id: U1 Test case module name: Login and Registration

Test Input Expected Actual Status


description output output
Enter correct admin, Successful Successful Go to admin
username and admin login login page
password
Enter wrong Authority Access Access Login failed
username, denied, denied,
password specify msg specify msg
to fill all the to fill all text
fields fields
Enter wrong faculty, Successful Successful Go to faculty
username and kcet login login page
password
Enter wrong Authority Access Access Login failed
username, denied, denied,
password specify specify
message to message to
fill all the fill all text
fields fields
33

5.2.3 SYSTEM TESTING

System testing is the testing to ensure that by putting the software in different
environments (e.g., Operating System) it still works. System testing is done with full system
implementation and environment.

5.2.4 REGRESSION TESTING

Regression testing is the testing after modification of a system, component, or a group of


related units to ensure that the modification is working correctly and is not damaging or
imposing other modules to produce unexpected results.

5.2.5 ACCEPTANCE TESTING

Acceptance testing is often done by the customer to ensure that the delivered product
meets the requirements and works as the customer expected.
34

CHAPTER 6

SYSTEM MAINTENANCE

7.1 INTRODUCTION

In software maintenance, an enormous mass of potential problems and cost lies under the
surface. Software maintenance is far more than fixing mistakes. Analyst and programmers
append for more time in maintaining the program than they do writing them few tools and
techniques are available for maintenance. The literature on maintenance contains very few
entries when compared to development activities.

The software maintenance is classified into four tasks:

Corrective maintenance
Adaptive maintenance
Perfective maintenance
Preventive maintenance

7.1.1 Corrective Maintenance

This type of maintenance implies removing errors in a program, which might have crept in
the system due to faulty design or wrong assumptions. Thus, in corrective maintenance,
processing or performance failures are required.

7.1.2 Adaptive Maintenance


35

In adaptive maintenance, program functions are changed to enable the information needs of
the user. This type of maintenance may become necessary because of organizational changes
which may include:

Change in the organizational procedures,


Change in organizational objectives, goals, policies, etc.
Change in forms,
Change in information needs of managers.
Change in system controls and security needs, etc.
7.1.3 Perfective Maintenance
Perfective maintenance means adding new programs or modifying the existing programs to
enhance the performance of the information system. These types of maintenance undertaken to
respond to user’s additional needs which may be due to the changes are within or outside of the
organization. Outside changes primarily environmental changes, which may in the absence of
system maintenance render the information system ineffective and inefficient. These
environmental changes include
a) Changes in governmental policies, laws, etc.

b) Economic and competitive conditions

c) New technology

The results obtained from the evaluation process help the organization to determine whether
its information systems are effective and efficient or otherwise.

7.4 Preventive Maintenance

Preventive maintenance is a modification of a software product after delivery to detect and


correct latent faults in the software product before they become effective faults.
36

CHAPTER 8

CONCLUSION

The face detection and recognition algorithms were studied thoroughly taking number of
the test from different varying condition images. For face detection combination of RGB and
HSV model algorithm is used. For face recognition principal component analysis method is used.
Attendance of the student are marked using the recognized face of every individual student and
the data is stored in an attendance sheet. The attendance of every student marked automatically
by recognizing their face with the face present in the data base
37

CHAPTER 9

FUTURE ENHANCEMENT

Further work can be done on this project to alert the student by sending SMS regarding
the attendance. For this purpose module can be used. SMS alert can be given to the parent of the
student.
38

APPENDIX 1

SCREEN SHOTS

HOME PAGE
39

ADMIN LOGIN
40

STUDENT LOGIN
41

REGISTRATION FORM

APPENDIX 2

SAMPLE CODING

Home Page

<!DOCTYPE html>

<html lang="en">

<head>

<title>Automatic Attendance System Using Face Recognition </title>

<meta charset="utf-8">

<link rel="icon" href="images/favicon.ico">


42

<link rel="shortcut icon" href="images/favicon.ico">

<link rel="stylesheet" href="css/style.css">

<link rel="stylesheet" href="css/slider.css">

<script src="js/jquery.js"></script>

<script src="js/jquery.easing.1.3.js"></script>

<script src="js/jquery-migrate-1.1.1.js"></script>

<script src="js/superfish.js"></script>

<script src="js/jquery.equalheights.js"></script>

<script src="js/tms-0.4.1.js"></script>

<script src="js/jquery.carouFredSel-6.1.0-packed.js"></script>

<script src="js/jquery.ui.totop.js"></script>

<script>

$(window).load(function () {

$('.slider')._TMS({

show: 0,

pauseOnHover: false,

prevBu: '.prev',

nextBu: '.next',

playBu: false,

duration: 800,

preset: 'fade',
43

easing: 'easeOutQuad',

pagination: true, //'.pagination',true,'<ul></ul>'

pagNums: false,

slideshow: 8000,

numStatus: false,

banners: 'fade',

waitBannerAnimation: false,

progressBar: false

})

});

$(window).load(

function () {

$('.carousel1').carouFredSel({

auto: false,

prev: '.prev1',

next: '.next1',

width: 960,

items: {

visible: {

min: 4,

max: 4
44

},

},

responsive: false,

scroll: 1,

mousewheel: false,

swipe: {

onMouse: false,

onTouch: false

});

});

</script>

<!--[if lt IE 9]>

<script src="js/html5shiv.js"></script>

<link rel="stylesheet" media="screen" href="css/ie.css">

<![endif]-->

</head>

<body>

<header>

<div class="container_12">

<div class="grid_12">
45

<center> <h2 style=" color:yellow;">Automatic Attendance System Using Face


Recognition </h2> </center>

</div>

</div>

<nav>

<div class="container_12">

<div class="grid_12">

<ul class="sf-menu">

<li class="current"><a href="home.jsp">HOME</a></li>

<li><a href="dataowner.jsp">ADMIN</a>

<li><a href="cloudserver.jsp">STUDNET</a></li>

<li><a href="datauser.jsp">STAFF</a></li>

<li><a href="invest.jsp">SIGNUP</a></li>

</ul>

<div class="clear"></div>

</div>

</div>

</nav>

</header>

<div id="content">

<div class="slider-relative">
46

<div class="slider-block">

<div class="slider">

<ul class="items">

<li><img src="images/slider-1.jpg" alt="">

<div class="banner">Our Customers are Our Priority</div>

</li>

<li><img src="images/slider-2.jpg" alt="">

<div class="banner">Creative Problem-Solving</div>

</li>

<li><img src="images/slider-3.jpg" alt="">

<div class="banner">Imagination is Our Power</div>

</li>

<li><img src="images/slider-4.jpg" alt="">

<div class="banner">The World of Opportunities</div>

</li>

</ul>

</div>

</div>

</div>

<div class="container_12">

<div class="grid_3 box-1">


47

<div class="wrap"> <img src="images/page1-img1.png" alt="">

<h4>Standards</h4>

</div>

At vero eos et accusamus et iusto odio dignissimos ducimus qui bl abd gdihtii praesentium
voluptatum deenir rf uiti jll atque. Corrupti quos doloregts. </div>

<div class="grid_3 box-1">

<div class="wrap"> <img src="images/page1-img2.png" alt="">

<h4>Principles</h4>

</div>

Gthoie eos et accusamus et iusto odio dignissimos ducimus qui bl abd gdihtii praesentium
voluptatum deenir rf uiti jll atque. Mjhof sdaw doloregts. </div>

<div class="grid_3 box-1">

<div class="wrap"> <img src="images/page1-img3.png" alt="">

<h4>Experience</h4>

</div>

Loas jift accusamus et iusto odio dniloit

ssimos ducimus qui bl abd gdihtiijolwer praesentium voluptatum deenir rf uiti jlol atque.
Gfasdh quos doloregts. </div>

<div class="grid_3 box-1">

<div class="wrap"> <img src="images/page1-img4.png" alt="">

<h4>Client Reviews</h4>

</div>
48

Owasd et accusamus et iusto odiomulo dignissimos ducimus qui bl abd gdihtiie praesentium
voluptatum deenir rf uiti jllti atque. Ckloerupti quos doloregts. </div>

<div class="clear"></div>

</div>

</div>

</body>

</html>Siguup.jsp

<!DOCTYPE html>

<html lang="en">

<head>

<title>Automatic Attendance System Using Face Recognition</title>

<meta charset="utf-8">

<link rel="icon" href="images/favicon.ico">

<link rel="shortcut icon" href="images/favicon.ico">

<link rel="stylesheet" href="css/style.css">

<script src="js/jquery.js"></script>

<script src="js/jquery.easing.1.3.js"></script>

<script src="js/jquery-migrate-1.1.1.js"></script>

<script src="js/superfish.js"></script>

<script src="js/jquery.equalheights.js"></script>

<script src="js/jquery.ui.totop.js"></script>
49

<!--[if lt IE 9]>

<script src="js/html5shiv.js"></script>

<link rel="stylesheet" media="screen" href="css/ie.css">

<![endif]-->

</head>

<body>

<header>

<div class="container_12">

<div class="grid_12">

<center> <h2 style=" color:yellow;">Automatic Attendance System Using Face


Recognition </h2> </center>

</div>

</div>

<nav>

<div class="container_12">

<div class="grid_12">

<ul class="sf-menu">

<li><a href="home.jsp">HOME</a></li>

<li><a href="dataowner.jsp">Data Owner</a>

<li><a href="cloudserver.jsp">CSP</a></li>

<li><a href="datauser.jsp">Data User</a></li>


50

<li class="current"><a href="invest.jsp">Investigator</a></li>

</ul>

<div class="clear"></div>

</div>

</div>

</nav>

</header>

<div id="content">

<div class="container_12 bot-1">

<div class="grid_12" >

<center> <h2 class="indent-2"> Investigator Login </h2> </center> <br> <br>

</div>

<div class="grid_3">

<div class="grid_3"> <img src="images/invest.jpg" style="width:270px;"> </div>

</div>

<div class="grid_5"> <br> <br> <br>

<center> <form method="post" action="invest_code.jsp " name="form">

<label class="name"> <span class="title" style="font-size:19px; color:red;">Login


id*:</span> &nbsp;&nbsp;&nbsp;&nbsp;

<input type="text" value=" " name="name" style="width:190px;">


51

<br class="clear"> </label> <br> <br>

<label class="name"> <span class="title" style="font-size:19px;


color:red;">Password*:</span> &nbsp;&nbsp;&nbsp;

<input type="password" name="password" style="width:190px;">

<br class="clear"> </label> <br> <br>

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <input
type="submit" value="Login" style="font-size:19px; color:green;"/>

<input type="reset" value="Reset" style="font-size:19px; color:green;"/>

</form> </center>

</div>

<div class="grid_6 push_1">

</div>

</div>

</div>

</body>

</html>
52
53

REFERENCES

[1] Bhumika G. Bhatt, Zankhana H. Shah “Face Feature Extraction Techniques: A Survey”,
National Conference on Recent Trends in Engineering & Technology, 13-14 May 2011.

[2] G. Yang and T. S. Huang, “Human face detection in complex background,” Pattern
Recognition Letter, vol. 27, no.1, pp. 53-63, 1994.

[3] C. Kotropoulos and I. Pitas, “Rule-based face detection in frontal views,” Proc. Int’l
Conf. Acoustics, Speech and Signal Processing, vol. 4, pp. 2537-2540, 1997.

[4] E. Saber and A.M. Tekalp, “Frontal-view face detection and facial feature extraction
using color, shape and symmetry based cost functions,” Pattern Recognition Letters, vol. 17,
no. 8, pp. 669-680, 1998.

[5] M. Turk, A. Pentland, Eigenfaces for Recognition, Journal of Cognitive Neurosicence,


Vol. 3, No. 1, Win. 1991, pp. 71-86

[6] Discriminant analysis for recognition of human face images Kamran Etemad and Rama
Chellappa [7] Sanjay singh et.al, “A robust skin color based face detection algorithm”,
Tamkang Journal of Science and Engineering vol.6, no.4,pp227-234, 2003 [8] Jose
M.Chaves-Gonzalez, Miguel A Vega-Rodriguez,Juan

You might also like