Biometric Attendance Register Report

99
Biometric Attendance Register PROJECT REPORT On BIOMETRIC ATTENDANCE REGISTER In partial fulfillment of 4 th Semester of MCA By DINU RAJ.S Reg. no: 95501016 DEPARTMENT OF COMPUTER APPLICATIONS COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY COCHIN-22 1

description

Project Report on BIOMETRIC ATTENDANCE REGISTER

Transcript of Biometric Attendance Register Report

Biometric Attendance Register

PROJECT REPORT

On

BIOMETRIC ATTENDANCE REGISTER

In partial fulfillment of

4th Semester of

MCA

By

DINU RAJ.S

Reg. no: 95501016

DEPARTMENT OF COMPUTER APPLICATIONS

COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY

COCHIN-22

1

Biometric Attendance Register

DEPARTMENT OF COMPUTER APPLICATIONS

COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY

COCHIN -22

CERTIFICATE

This is to certify that the project report entitled“BIOMETRIC

ATTENDANCE REGISTER“is a bonafide record of the project work done by

DINU RAJ.S(Reg No. 95501016) in partial fulfillment of the requirements for the

IVth Semester of MASTER OF COMPUTER APPLICATIONS in Department of

Computer Applications of COCHIN UNIVERSITY OF SCIENCEAND

TECHONOLOGY, COCHIN.

Internal Examiner External Examiner Headof the Department

2

Biometric Attendance Register

DECLARATION

‘I hereby declare that the project work entitled BIOMETRIC ATTENDANCE

REGISTER is submitted in partial fulfillment of the requirements for the IVth Semester

Master of Computer Applications and it is a report of the original work done by me during

the period of January– April in Cochin University of Science and Technology, Cochin.’

Place: Cochin DINU RAJ.S

Date:

3

Biometric Attendance Register

ACKNOWLEDGEMENT

With great pleasure I hereby acknowledge the help given to me by various

individuals throughout the project.

This project itself is an acknowledgement to the inspiration, drive and technical

assistance contributed by many individuals. This project would have never seen the light of

this day without the help and guidance I have received.

Expressing my sincere and heartfelt gratitude to Dr. B. Kannan, Department of

Computer Applications, CUSAT for his valuable guidance and encouragement, which

helped me to successfully complete this project.

I would also like to express my profound thanks to Dr.K.VPramod (Head of the

Department), Dr.A.Sreekumar, Mrs.Malathi S, faculties, Department of Computer

Applications, CUSAT for providing me with excellent infrastructure and awesome

environment that laid potentially strong foundation for my professional life.

I owe and incalculable debt to all staffs of the Department of ComputerApplications

for their direct and indirect helps.

I extend my heartfelt thanks to my parents, friends and well-wishersfortheirsupport

and timely help.

Last but not the least; I thank the God Almighty for guiding me in everystep of the

way.

DINU RAJ.S

4

Biometric Attendance Register

SYNOPSIS

The objective of this project is to createan attendance software for Department of Computer Applications,Cochin University of Science And Technology. Students & faculties use their thumb impression to mark their attendance. The Project contains details of all the students and faculty of the department, including their thumb impressions. Faculties are provided with individual user accounts through which they can access the attendance database of the department that are hidden from external world. They can modify the attendance of students. The only purpose of students is to punch their attendance, they does not have any individual accounts. In order to view individual attendance students are requested to meet their faculties.

The main intention of this project is to provide the following characteristics Simplicity: The functionalities are simple in nature.

Maintainability: It is easy to implement changes since we modularize thedatabase.

User Friendly: Interfaces are easy to understand and simple to use even for a beginner.

Flexibility: The major functionality of this project is to develop amemory efficient and integrated environment that can handle attendance details flexibly.

Reliability: Exceptions are carefully handled and the software is tested fora range of inputs.

Accessibility:This provides authorized access integrate security.

Understandability:The functionalities are transparent and clearly defined.

Modularity: Features are segmented.

5

Biometric Attendance Register

Features:-

Keep track of attendance.

Attendances are taken twice in a day.

Forenoon and Afternoon leaves are taken separately.

Report is submitted at the end of the day.

Stores reports of each user.

Each user can view their detailed report.

Reports are produced on each month and at the end of each semester.

Administration Settings.

Checks whether recommended attendance are obtained.

Checks whether moderations should be given or not.

With permission leaves are also managed.

Attendance History.

Can add or remove user by the administrator.

Administrator can approve the report.

Faculty forwards attendance list to the admin.

Attendance Reports can be printed to a file.

Attendance Export/Import facility.

6

Biometric Attendance Register

CONTENTS

1. PREFACE 9

1.1 Analysis Phase 10

1.2 Design Phase 10

1.3 Development Phase 11

1.4 Testing Phase 11

1.5 Implementation Phase 12

2. INTRODUCTION 13

2.1 Overview 14

2.2 Project Profile 15

2.3 About the Organization 15

2.4 Definitions, Acronyms and Abbreviations 17

3. SYSTEM ANALYSIS 18

3.1 Purpose 19

3.2 Problem Definition 20

3.3 Feasibility Study 20

3.4 Proposed System 21

4. SOFTWARE REQUIREMENT SPECIFICATION 23

4.1 Purpose 24

4.2 Scope 24

4.3 Overall Description 25

4.4 Functional Requirements 27

4.5 Non Functional Requirements 27

4.6 Platform Used 27

4.7 Technology Used 34

5. SOFTWARE QUALITY ASSURANCE PLAN 39

5.1 Purpose 40

5.2 Scope 40

7

Biometric Attendance Register

5.3 Reference Document 40

5.4 Management 41

5.5 Documentation 41

5.6 Standards, Practices and Conventions 42

5.7 Reviews and Audits 42

5.8 Configuration Management 43

5.9 Tools Techniques And Methodologies 43

6. SYSTEM DESIGN 44

6.1 Input Design 45

6.2 Output Design 49

6.3 System Architecture 50

6.4 Data Design 51

7. SYSTEM TESTING 54

7.1 Software Testing 55

7.2 Test Plan 56

7.3 Test Cases 58

8. SYSTEM IMPLEMENTATION 59

8.1 Implementation 60

8.2 Maintenance 61

9. CONCLUSION 62

10. FUTURE ENHANCEMENTS 64

11. BIBILIOGRAPHY 66

12. SCREEN SHOTS 68

8

Biometric Attendance Register

1. PREFACE

1.1 ANALYSIS PHASE9

Biometric Attendance Register

Analysis can be defined as “breaking up of any whole so as to find out their nature,

function etc. a statement of these findings”. It defines design as “to make preliminary

sketches of; to sketch a pattern or outline for plan. The system is studied to the minute

detail and analyzed. The system analyst dwelled deep into the working of the present

system. The system was viewed as a whole and the inputs of the system are identified.

During analysis phase for each problem identified, many alternative solutions were

evaluated and selected the most feasible one. A feasibility analysis was performed to

evaluate possible solutions to recommend the most feasible one.

The various tasks done during system analysis include the following:

Requirement gathering: We gathered informationfrom Department of Computer

Applications, CUSAT and interact with faculties and students by using several

techniques, which was really an interesting experience.

Analysis of the gathered information: A complete analysis of the gathered

information was done exactly and clearly understands the requirements and to

resolve conflicts, inconsistencies in the gathered requirement.SRS of the system are

prepared during the analysis phase.Conceptual modeling has been done in the

analysis phase. In conceptual modeling we developed a logical design or mental

model of the database for Attendance Register. We also identified all the entries

needed for developing this.

1.2 DESIGN PHASE

The primary objective of the design phase is to create a design that satisfies the

agreed application requirements. In the design phase the SDLC process continues to move

from the “what” questions of the analysis phase to the “how” questions. The requirements

prototype that was developed earlier during the analysis phase is gradually improved and

extends to include all the specified functions of the application. The system documentation

process also starts in this phase.

10

Biometric Attendance Register

1.3 DEVELOPMENT PHASEThe development phase is the most exciting phase of the SDLC. During this phase,

the software is developed. Coding starts in this phase. In this phase, examination and re-

examination of the requirements statement is needed to ensure that is being followed as per

customer needs. Any deviations would usually have to be approved either by the project

leader or by the customer. The development phase can be split into two sections, that of

Prototyping and Production Ready Application Creation. Prototyping is the stage of the

development phase that produces a pseudo-complete application, which for all intents and

purpose appears to be fully functional.

Developers use this stage to demo the application to the customer as another check that the

final software solution answers the problem posed. When they are given thefinal‘OK’ from

the customer, the final code is written to complete the phase.

1.4 TESTING PHASE

The testing phase requires organizations to complete various tests to ensure the

accuracy of programmed code and the inclusion of expected functionality. Thorough

testing is critical to ensure that system meet organizational and end-user requirements. If

organizations use effective project management techniques, they will complete test plans

while developing applications, prior to entering the testing phase. Test plans created during

initial project phases enhance an organization’s ability to create detailed tests. The use of

detailed test plans significantly increases the likelihood that testers will identify weaknesses

before products are implemented.

Testing groups are comprised of technicians and end users who are responsible for

assembling and loading representative test data into a testing environment. Functional tests

should ensure that expected functional, security and internal features are present and

operating properly. Testers then complete integration and end-to-end testing to ensure

application and system components interact properly. Users then conduct acceptance tests

to ensure systems meet defined acceptance criteria. Documenting corrections and

modifications is necessary to maintain the integrity of the overall program documentation.

Organizations should review and complete user, operator, and maintenance manuals during

the testing phase. We have done unit testing, functional testing, integration testing end to

end testing and user acceptance testing.

11

Biometric Attendance Register

1.5. IMPLEMENTATION PHASE

Primary task of implementation phase include announcing the implementation

schedule, training end users, and installing the product. The software is configured in the

environmentand run various tests to verify the validity and security parameters, and

conduct post-implementation reviews. Management should circulate implementation

schedules to all affected parties and should notify users of any implementation

responsibilities. We found major modules of the software are error free and ready to use

and meets all the requirements.

12

Biometric Attendance Register

2. INTRODUCTION

2.1 OVERVIEW

13

Biometric Attendance Register

We are living in an area of modern technology .Our life provides us many opportunities to

test our imagination, intelligence, optimism, confidence and sheer obstinacy.

In modern times, few inventions have affected everyday life as much as the

computer .The earliest computers were gigantic machines that filled entire buildings and

were the days when using computers was the privilege of the chosen few who mastered its

peculiarities.

As time went by, computers have evolved and been put to good use in a variety of

areas. Today computers dominate every sphere of life be it entertainment, education,

banking, insurance, research, medicine, design or manufacturing.

While the move towards the digital era is being accelerated every hour, biometrics

technologies have begun to affect people’s daily life more and more. Biometrics

technologies verify identity through characteristics such as fingerprints, faces, irises, retinal

patterns, palm prints, voice, hand-written signatures, and so on. These techniques, which

use physical data, are receiving attention as a personal authentication method that is more

convenient than conventional methods such as a password or ID cards. Biometric personal

authentication uses data taken from measurements. Such data is unique to the individual

and remains so throughout one’s life.

This technology has been applied for controlling access to high-security facilities, but it is

now being widespread developed in information systems such as network, e-commerce,

and retail applications. In these technologies, fingerprint becomes the most mature and

popular biometrics technology used in automatic personal identification. In the beginning,

fingerprint verifying used in the military affairs and in the criminal identification. But now,

this technology is also being used in several other applications such as access control for

high security installations, credit card usage verification, and employee identification.

The reason for the popularity of fingerprint verifying is that fingerprints satisfy uniqueness,

stability, permanency and easily taking. Just for this, a number of fingerprint verification

approaches have been proposed until now

2.2 PROJECT PROFILETitle : Biometric Attendance Register

14

Biometric Attendance Register

Project Objective :To implement an attendance software for DCA

Organization :Department of Computer Applications

Duration : 4 months

Project guide : Dr. B Kannan

Associate Professor

Department of Computer Applications

CUSAT

2.3ORGANISATION PROFILE

About CUSATThe establishment of the erstwhile University of Cochin in 1971 was

a commitment from the Government of Kerala towards the new scientific policy resolution

adopted by the Central Government on 4th March 1958. The University of Cochin was

later reorganized as Cochin University of Science and Technology (CUSAT) in February

1986.

The University’s basic philosophy and goals find eloquent expression in its Coat of

Arms emblazoning the motto ‘Tejaswinavadhitamastu’ which in essence means ‘may

learning illumine us both’ (the teacher and the taught). Starting from 1996-97, CUSAT

became international instudent admissions and faculty exchanges. It is strengthening

contacts and collaborative tie-up with international universities and institutions and is in the

path of growth as a global center for generation of new knowledge in frontier areas of

learning. CUSAT has entered into academic collaborations and exchange programmers

with many notable institutions across the USA, Europe, Russia, Japan, France, Korea etc.

Syndicate, Academic Council, Senate and the Boards of Studies in different

Faculties are the Principal Authorities of the university. Syndicate is the Chief Executive

Body which meets every month. The academic structure comprises of nine Faculties viz.

Engineering, Environmental Studies, Humanities, Law, Marine Sciences, Medical Sciences

and Technology, Science, Social Sciences and Technology. A Sophisticated Test and

Instrumentation Centre (STIC) wereestablished in 1996 in collaboration with the

Government of Kerala.Centers also exist for Interdisciplinary Studies, Microprocessor

15

Biometric Attendance Register

Research, National Manpower Information, Rural Development & Appropriate

Technology, Ocean Electronics Science in Society, Information Resource Management,

Neuroscience, Creative Writing, Comparative Literature, Population Studies, Aquatic

Animal Health, Monsoon Studies, Economic Policy and Analysis & Adult and Extension

education.

The UGC has selected CUSAT as a Center for Excellence in the field of Lasers and

Opto-electronic Sciences for which a new Centre, CELOS has been established. The Union

Ministry of HRD has acknowledged School of Legal Studies as a Depository of Intellectual

Property Rights and an IPR chair has been introduced. Another prestigious chair instituted

by the Ministry of HRD is Rajiv Gandhi Chair on Sustainable Development. By giving

recognition to several well-established premier research institutions in the country and the

Southern Naval Command of Indian Navy, the University has brought within its reach the

resources available in these institutions for the use of the academic community.

Specializations are available in almost all Faculties/Departments for higher studies and

research.

About The Department

The University established the Department of Computer Applications to facilitate research

and human resource development in the subject. The M.C.A. programme was started in

1994 with a model curriculum prepared jointly by ISTE and the Department of Electronics

with minor modifications. The Department has proud alumni, most of them being placed

in much reputed international firms like IBM, WIPRO, INFOSYS, TCS, and CTS etc. The

Research activities of the Department include a wide variety of subjects. The Department

has an excellent library and a well-equipped laboratory.

Computer Applications is one of the thrust areas in science and technology. In

appreciation of its growing importance in business and visualizing the career prospects, the

University established the Department of Computer Applications to facilitate research and

human resource development in the subject. The M.C.A. programme was started (1994)

with a model curriculum prepared jointly by ISTE and the Department of Electronics with

minor modifications. The Syllabus is updated periodically, based on the current trends and

requirements of the industry. The Department has proud alumni, most of them being

placed in much reputed international firms like IBM, WIPRO, INFOSYS, TCS, CTS etc.

16

Biometric Attendance Register

The Research activities of the Department include the subject areas Fuzzy sets and

Logic Applications in Artificial Intelligence, Simulation, Cryptography & Coding Theory,

Algorithm, Pattern recognition, Internet-Marketing, E-commerce and Internet Technology,

Networking and Mobile Communication and Software Engineering. Apart from this, the

Department has taken up a challenging research project funded by AICTE, Computer

Assisted Classical Music. The Department of Computer Applications is also doing

consultancy work for public and private sector undertakings. The Department has an

excellent library with more than 3000 books and various national and international

journals. The Department has a well-equipped laboratory, which is being constantly

updated with the latest computers.

2.4 Definitions, Acronyms and Abbreviations

Field DefinitionBAR Biometric Attendance Register

SRS Software Requirement Specification

SQL Structured Query Language

CUSAT Cochin University of Science And Technology

DCA Department of Computer Applications

Entry Data stored in the DCAWEBSITE Database

IEEE Institute of Electrical and Electronic Engineers

QA Quality assurance

SCMP Software Configuration Management Plan

SQAP Software Quality Assurance Plan

SRS Software Requirements Specification

DMS Department Management System

OS Operating System

17

Biometric Attendance Register

3. SYSTEM ANALYSIS

3.1 PURPOSE

18

Biometric Attendance Register

System analysis or study is an important phase of any system development process.

The system is studied to the minute detail and analyzed. The system analyst dwelled deep

into the working of the present system. The system was viewed as a whole and the input of

the system are identified. During analysis phase for each problem identified many

alternative solutions were evaluated and selected the most feasible one. A feasibility

analysis was performed to evaluate possible solutions to recommend the most feasible one.

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.

Selling of the system.

Supervising, installing and maintaining the system.

3.1.1SYSTEM PLANNING AND INITIAL INVESTIGATION

The most critical phase during the system analysis is planning. To launch a system

investigation we need a clear cut plan detailing the steps to be taken. Initial investigation

has the objective of whether the users request has potential merit.

3.1.2 INFORMATION GATHERING

The key part of system analysis is gathering information of a present system about

the factors affecting the system, the drawbacks and merits of the system etc. The

traditional tools used for information gathering are review of written documents,

interview, questionnaire, on-site observation etc. They help in evaluating the existing

system.

3.1.3 APPLYING ANALYSIS TOOL FOR STRUCTURED ANALYSIS

19

Biometric Attendance Register

The traditional tools for information gathering have many drawbacks.Because of

these drawbacks, the analysts need to focus on functions rather than physical

implementation. Therefore structured tool such as Data Flow Diagram,Decision Trees and

Structured English are used along with the traditional tools. The main objectives of the

structured tools are to study user affected areas, model new logic systems, select hardware

and software etc.

3.2 PROBLEM DEFINITIONOne of the primary reasons for the immense popularity of computers is the speed

with which they can accomplish specified tasks. However computer applications are not

always easy to use. With the advent of graphical operating system like Windows the world

of computing went through a dramatic change. It opened up a whole new world of

graphics.

In this era, it is necessary for every organization to leap forward with the pace of

modern technology.So it is necessary to modernize the departmental process and simplify

its operations. It will also necessary to carry out large scale data processing on different

activities such as student and faculty registration, library and attendance management etc.,

by taking little effort.

3.3 FEASIBILITY STUDYAfter the problem is clearly understood and solutions proposed, the next step is to

conduct the feasibility study. Feasibility study is defined as evaluation or analysis of the

potential impact of a proposed project or program. The objective is to determine whether

the proposed system is feasible. There are three aspects of feasibility study to which the

proposed system is subjected as discussed below.

3.3.1 TECHNICAL FEASIBILITY

Technical feasibility assesses whether the current technicalresources are sufficient

for the new system. If they are not available, canthey be upgraded to provide the level of

technology necessary for the new system?

20

Biometric Attendance Register

3.3.2 ECONOMIC FEASIBILITY

Economic feasibility determines whether the time and money are available to

develop the system. It also includes the purchase of new equipment, hardware, and

software. Since this project requires a web camera it is cost effective. A software product

must be cost effective in the development, on maintenance and in the use. Since the

hardware and resources are already available with the organization and the organization

can afford to allocate the required resources.

3.3.3 OPERATIONAL FEASIBILITY

Operational feasibility determines if the human resources areavailable to operate the

system once it has been installed. The resources thatare required to implement or install are

already available with theorganization. The personsof the organization need no exposure to

computerbut have to be trained touse this particular software. A few of them will be

trained. Further training isvery less. The management will also beconvinced that the project

is optimally feasible.

3.4 PROPOSED SYSTEM

Most of the attendance systems use paper based methods for taking and calculating

attendance and this manual method requires paper sheets and a lot of stationery material.

Previously a very few work has been done relating to the academic attendance monitoring

problem.Registers can be damaged easily and information can be lost.If more books are

there it is difficult to handle. Some software’s have been designed previously to keep track

of attendance. But they require manual entry of data by the staff workers.So the problem

remains unsolved.

This software contains all the details of Students and Faculty in the department,

including their thumb impressions. Faculties are provided with individual user accounts

through which they can access the database.This system efficiently manages the complete

administration of attendances. It reduces the manpower and paper works.

21

Biometric Attendance Register

3.4.1ADVANTAGES OF THE PROPOSED SYSTEM

The advantages of the proposed system are,

Accuracy

Once the details are added, it is not necessary to enter the details again. This

reduces the chance of error by reducing the human involved tasks. Accurate information's

are available at time and accurate decisions can be made at time.

Decision-making

The proposed system assists in the decision making process producing reports at the right

time. The new system allows us to make decisions depending on the search criteria

specified by the user. The search results help us to take the right decisions at right time.

Data Storage

A relational database allows centralized storage of data, thereby eliminating the

redundancy of stored data. Since there is no redundancy of data searching can be made fast.

The stored data is portable and flexible for future enhancements. Data is stored in such a

way that they can be easily accessed and can be updated easily.

Data collection

Methods for collecting data are faster and more efficient. Retrieval of information

is faster than the existing system. Manipulation of data can also be done in effective

manner. Gathering of data is easily because it is done by an automated system.

Speed of response

The time required for information to be available is greatly reduced without

affecting the accuracy of the system. Manual works involve wastage of time. The

automated system access the data in lightning speed and also save the data in high speed.

User friendly

The user friendliness is very high when compared to the existing system. The user

can do the operations without dealing with the complexinnerdetails. New system's

interfaceis made more users friendly. With this graphical user interface the user may

become easily adaptable with the new system. New system uses the concept of showing the

essential details whenever required.The user interface of the new system is made attractive.

The operations on the software are easier with this graphical user interface.

22

Biometric Attendance Register

4. SOFTWARE REQUIREMENT SPECIFICATION

23

Biometric Attendance Register

4.1 PURPOSE

This Software Requirements Specification provides a complete description of all the

functions and specifications of the Biometric Attendance Register. The expected audience of

this document is the faculty of DCA CUSAT, including the faculty who will use this

system, and the developers of the System. It will also serves as a reference for those who

want to extend the software. It also describes the interfaces for the system. It will explain the

purpose and features of the system, the interfaces of the system, what the system will do, the

constraints under which it must operate and how the system will react to external stimuli.

This system efficiently manages the complete administration of a group of activities, events

and training provided from the Department. It is designed specifically to meet the requirements of a

Computer Applications Department administration and reduce the manpower and paper works

involved.

4.2 SCOPE

This document is the only one that describes the requirements of the system. It is

meant for use by the developers, and will also be the basis for validating the final delivered

system. Any changes made to the requirements in the future will have to go through a

formal change approval process. The developer is responsible for asking for clarification,

where necessary, and will not make any alterations without the permission of the client.

Biometric Attendance Register System offers a diversified range of solutions and

support services to fulfill the back office needs of departments to keep track of the

attendances of students and faculty. All this is done by automation hence the human effort

and error is reduced. The software gives you complete control over the attendance of

department and you can prepare things automatically. This software will do just good work

over and over for you and nothing else.

This system works efficiently on a single system.More specifically, this system is designed

to allow administrator, student and faculty of a department to save the attendance and

prepare reports necessarily. The system also contains a relational database containing

images o thumb impressions, list of students, list of faculty, student attendance, faculty

attendance, a student login and a faculty login.

24

Biometric Attendance Register

4.3 OVERALL DESCRIPTIONThe software requires certain tables to be present already as a prerequisite. Each actor

in the system has a role and has a set of permissions defined for him. These permissions

specify the access privileges of the user.

4.3.1PRODUCT PERSPECTIVE

The objective of BAR is to provide quality information in a timely fashion through

systems that are completely integrated.By collecting data at the source and providing wider

electronic access of events and functions,the intention of BAR is to reduce the paper driven

aspects of the existing systems and speed up the access time.The objective of this system is

to provide facilities for students and faculties to mark their attendance.

4.3.2 PRODUCT FUNCTIONS

Keep track of attendance.

Attendances are taken twice in a day.

Forenoon and Afternoon leaves are taken separately.

Report is submitted at the end of the day.

Stores reports of each user.

Each user can view their detailed report.

Reports are produced on each month and at the end of each semester.

Administration Settings.

Checks whether recommended attendance are obtained.

Checks whether moderations should be given or not.

With permission leaves are also managed.

Attendance History.

Can add or remove user by the administrator.

Administrator can approve the report.

Faculty forwards attendance list to the admin.

Attendance Reports can be printed to a file.

Attendance Export/Import facility.

25

Biometric Attendance Register

4.3.4 USERS AND CHARACTERISTICSAll users of the system are expected to have basic knowledge of using a computer

and basic knowledge in English language.

4.3.4.1 Users of the system

Administrator

Faculty

Student

4.3.5OPERATING ENVIRONMENT

4.3.5.1Hardware Interface

Processor Intel Pentium processorRAM 256 MBDisk Space 100 MBKeyboard Normal key boardMouse Optical mouseScanner Fingerprint Scanner

4.3.5.2 Software Interface

1 Operating system (any), BAR2 Operating system (any), BAR, MS SQL 20083 J2EE, JAVA, EJBs, OS(windows), MS SQL 2008

4.3.6DESIGN AND IMPLEMENTATION CONSTRAINTS Members must have a BAR installed computer so as to interact with the System.

Fingerprint images of all the students and faculties are already stored in the system

The Faculty has a system in place to verify the attendance of the students

An Attendance database is present. No provision is made in the software to add or

edit basic details.

Each user is identified by a user id and password, attendance is marked by

matching the thumb impression of the logged students.

Provide the automation of Data entry/Report making services.

4.3.7ASSUMPTIONS AND DEPENDENCIES All roles are created in the system already.

26

Biometric Attendance Register

Roles and tasks are predefined and are made known to the administrator.

This system mainly for Attendance Manipulation.

Admin send Reports of each user.

Faculty forwards the attendance to the admin.

Thumb impressions are stored in the hard disk.

4.4 FUNCTIONAL REQUIREMENTS

All users of the system are expected to have basic knowledge of using a computer. Users of this system are

Administrator – He/She can monitor all the works and machine. Student- Uses the system for login and checking the attendance. Faculty-Uses the system for login.

4.5NON FUNCTIONAL REQUIREMENTS

The nonfunctional requirements which define the system perfomance are

Security Reliability Maintainability Extensibility Reusability Application affinity/compatibility Resource utilizations Scalability Functionality Performance

4.6 PLATFORM USED

WINDOWS 7

Windows 7 is the current release of Microsoft Windows, a series of operating

systems produced by Microsoft for use on personal computers, including home and

business desktops, laptops, netbooks, tablet PCs, and media center PCs. Windows 7 was

released to manufacturing on July 22, 2009, and reached general retail availability

worldwide on October 22, 2009, less than three years after the release of its predecessor,

27

Biometric Attendance Register

Windows Vista. Windows 7's server counterpart, Windows Server 2008 R2, was released

at the same time.

Unlike Windows Vista, which introduced a large number of new features, Windows

7 was intended to be a more focused, incremental upgrade to the Windows line, with the

goal of being compatible with applications and hardware with which Windows Vista was

already compatible. Presentations given by Microsoft in 2008 focused on multi-touch

support, a redesigned Windows shell with a new taskbar, referred to as the Superbar, a

home networking system called HomeGroup, and performance improvements. Some

standard applications that have been included with prior releases of Microsoft Windows,

including Windows Calendar, Windows Mail, Windows Movie Maker, and Windows

Photo Gallery, are not included in Windows 7; most are instead offered separately at no

charge as part of the Windows Live Essentials suite.

Windows 7 includes a number of new features, such as advances in touch and

handwriting recognition, support for virtual hard disks, improved performance on multi-

core processors, improved boot performance, DirectAccess, and kernel improvements.

Windows 7 adds support for systems using multiple heterogeneous graphics cards from

different vendors (Heterogeneous Multi-adapter), a new version of Windows Media

Center,a Gadget for Windows Media Center, improved media features, the XPS Essentials

Pack and Windows PowerShell being included, and a redesigned Calculator with multiline

capabilities including Programmer and Statistics modes along with unit conversion for

length, weight, temperature, and several others. Many new items have been added to the

Control Panel, including ClearType Text Tuner, Display Color Calibration Wizard,

Gadgets, Recovery, Troubleshooting, Workspaces Center, Location and Other Sensors,

Credential Manager, Biometric Devices, System Icons, and Display. Windows Security

Center has been renamed to Windows Action Center (Windows Health Center and

Windows Solution Center in earlier builds), which encompasses both security and

maintenance of the computer. ReadyBoost on 32-bit editions now supports up to 256

gigabytes of extra allocation. The default setting for User Account Control in Windows 7

has been criticized for allowing untrusted software to be launched with elevated privileges

without a prompt by exploiting a trusted application. Microsoft's Windows kernel engineer

Mark Russinovich acknowledged the problem, but noted that malware can also

compromise a system when users agree to a prompt. Windows 7 also supports images in

RAW image format through the addition of Windows Imaging Component-enabled image

28

Biometric Attendance Register

decoders, which enables raw image thumbnails, previewing and metadata display in

Windows Explorer, plus full-size viewing and slideshows in Windows Photo Viewer and

Windows Media Center.

The taskbar has seen the biggest visual changes, where the Quick Launch toolbar

has been replaced with the ability to pin applications to the taskbar. Buttons for pinned

applications are integrated with the task buttons. These buttons also enable the Jump Lists

feature to allow easy access to common tasks. The revamped taskbar also allows the

reordering of taskbar buttons. To the far right of the system clock is a small rectangular

button that serves as the Show desktop icon. This button is part of the new feature in

Windows 7 called Aero Peek. Hovering over this button makes all visible windows

transparent for a quick look at the desktop. In touch-enabled displays such as touch screens,

tablet PCs, etc., this button is slightly wider to accommodate being pressed with a finger.

Clicking this button minimizes all windows, and clicking it a second time restores them.

Additionally, there is a feature named Aero Snap, which automatically maximizes a

window when it is dragged to the top of the screen. Dragging windows to the left/right

edges of the screen allows users to snap documents or files on either side of the screen for

comparison between windows, such that the windows vertically take up half the screen.

When a user moves windows that were maximized using Aero Snap, the system restores

their previous state automatically. This functionality is also accomplished with keyboard

shortcuts. Unlike in Windows Vista, window borders and the taskbar do not turn opaque

when a window is maximized with Windows Aero applied. Instead, they remain

translucent.

For developers, Windows 7 includes a new networking API with support for

building SOAP-based web services in native code (as opposed to .NET-based WCF web

services), new features to shorten application install times, reduced UAC prompts,

simplified development of installation packages, and improved globalization support

through a new Extended Linguistic Services API. At WinHEC 2008 Microsoft announced

that color depths of 30-bit and 48-bit would be supported in Windows 7 along with the

wide color gamut scRGB (which for HDMI 1.3 can be converted and output as xvYCC).

The video modes supported in Windows 7 are 16-bit sRGB, 24-bit sRGB, 30-bit sRGB, 30-

bit with extended color gamutsRGB, and 48-bit scRGB. Microsoft has also implemented

better support for solid-state drives, including the new TRIM command, and Windows 7 is

able to identify a solid-state drive uniquely. Microsoft is planning to support USB 3.0 in a

29

Biometric Attendance Register

subsequent patch, support not being included in the initial release due to delays in the

finalization of the standard.

Internet Spades, Internet Backgammon and Internet Checkers, which were removed

from Windows Vista, were restored in Windows 7. Windows 7 includes Internet Explorer 8

and Windows Media Player 12. Users are also able to disable many more Windows

components than was possible in Windows Vista. New additions to this list of components

include Internet Explorer, Windows Media Player, Windows Media Center, Windows

Search, and the Windows Gadget Platform. Windows 7 includes 13 additional sound

schemes, titled Afternoon, Calligraphy, Characters, Cityscape, Delta, Festival, Garden,

Heritage, Landscape, Quirky, Raga, Savanna, and Sonata. A new version of Microsoft

Virtual PC, newly renamed as Windows Virtual PC was made available for Windows 7

Professional, Enterprise, and Ultimate editions. It allows multiple Windows environments,

including Windows XP Mode, to run on the same machine. Windows XP Mode runs

Windows XP in a virtual machine and redirects displayed applications running in Windows

XP to the Windows 7 desktop. Furthermore, Windows 7 supports the mounting of a virtual

hard disk (VHD) as normal data storage, and the bootloader delivered with Windows 7 can

boot the Windows system from a VHD; however, this ability is only available in the

Enterprise and Ultimate editions. The Remote Desktop Protocol (RDP) of Windows 7 is

also enhanced to support real-time multimedia application including video playback and

3D games, thus allowing use of DirectX 10 in remote desktop environments. The three

application limit, previously present in the Windows Vista Starter Edition, has been

removed from Windows 7.A recommendation for Windows 7 is to be on Windows Vista

(Longhorn) before upgrading to any version of Windows 7, and to have 16GB on the hard

drive.

LINUX

Linux is a Unix-like computer operating system assembled under the model of free

and open source software development and distribution. The defining component of Linux

is the Linux kernel, an operating system kernel first released 5 October 1991 by Linus

Torvalds.

Linux was originally developed as a free operating system for Intel x86-based

personal computers. It has since been ported to more computer hardware platforms than

30

Biometric Attendance Register

any other operating system. It is a leading operating system on servers and other big iron

systems such as mainframe computers and supercomputers more than 90% of today's 500

fastest supercomputers run some variant of Linux, including the 10 fastest. Linux also runs

on embedded systems (devices where the operating system is typically built into the

firmware and highly tailored to the system) such as mobile phones, tablet computers,

network routers, televisionsand video game consoles; the Android system in wide use on

mobile devices is built on the Linux kernel.

The development of Linux is one of the most prominent examples of free and open

source software collaboration: the underlying source code may be used, modified, and

distributed—commercially or non-commercially—by anyone under licenses such as the

GNU General Public License. Typically Linux is packaged in a format known as a Linux

distribution for desktop and server use. Some popular mainstream Linux distributions

include Debian (and its derivatives such as UBUNTU), Fedora and openSUSE. Linux

distributions include the Linux kernel, supporting utilities and libraries and usually a large

amount of application software to fulfill the distribution's intended use.

A distribution oriented toward desktop use will typically include the X Window

System and an accompanying desktop environment such as GNOME or KDE Plasma.

Some such distributions may include a less resource intensive desktop such as LXDE or

Xfce.for use on older or less powerful computers. A distribution intended to run as a server

may omit all graphical environments from the standard install and instead include other

software such as the Apache HTTP Server and an SSH server such as OpenSSH. Because

Linux is freely redistributable, anyone may create a distribution for any intended use.

Applications commonly used with desktop Linux systems include the Mozilla Firefox web

browser, the LibreOffice office application suite, and the GIMP image editor.

Since the main supporting user space system tools and libraries originated in the

GNU Project, initiated in 1983 by Richard Stallman, the Free Software Foundation prefers

the name GNU/Linux.

Most Linux distributions support dozens of programming languages. The original

development tools used for building both Linux applications and operating system

programs are found within the GNU toolchain, which includes the GNU Compiler

Collection (GCC) and the GNU build system. Amongst others, GCC provides compilers for

Ada, C, C++, Java, and Fortran. First released in 2003, the Low Level Virtual Machine

project provides an alternative open-source compiler for many languages. Proprietary

31

Biometric Attendance Register

compilers for Linux include the Intel C++ Compiler, Sun Studio, and IBM XL C/C++

Compiler. BASIC in the form of Visual Basic is supported in such forms as Gambas,

FreeBASIC, and XBasic, and in terms of terminal programming or QuickBASIC or Turbo

BASIC programming in the form of QB64.

Most distributions also include support for PHP, Perl, Ruby, Python and other

dynamic languages. While not as common, Linux also supports C# (via Mono), Vala, and

Scheme. A number of Java Virtual Machines and development kits run on Linux, including

the original Sun Microsystems JVM (HotSpot), and IBM's J2SE RE, as well as many open-

source projects like Kaffe and JikesRVM.

GNOME and KDE are popular desktop environments and provide a framework for

developing applications. These projects are based on the GTK+ and Qtwidget toolkits,

respectively, which can also be used independently of the larger framework. Both support a

wide variety of languages. There are a number of Integrated development environments

available including Anjuta, Code::Blocks, CodeLite, Eclipse, Geany, ActiveState Komodo,

KDevelop, Lazarus, MonoDevelop, NetBeans, Qt Creator and Omnis Studio, while the

long-established editors Vim and Emacs remain popular.

As well as those designed for general purpose use on desktops and servers,

distributions may be specialized for different purposes including: computer architecture

support, embedded systems, stability, security, localization to a specific region or language,

targeting of specific user groups, support for real-time applications, or commitment to a

given desktop environment. Furthermore, some distributions deliberately include only free

software. Currently, over three hundred distributions are actively developed, with about a

dozen distributions being most popular for general-purpose use.

Linux is a widely ported operating system kernel. The Linux kernel runs on a

highly diverse range of computer architectures: in the hand-held ARM-based iPAQ and the

mainframeIBMSystem z9, System z10; in devices ranging from mobile phones to

supercomputers. Specialized distributions exist for less mainstream architectures. The

ELKS kernel fork can run on Intel 8086 or Intel 8028616-bit microprocessors, while the

µClinux kernel fork may run on systems without a memory management unit. The kernel

also runs on architectures that were only ever intended to use a manufacturer-created

operating system, such as Macintosh computers (with both PowerPC and Intel processors),

PDAs, video game consoles, portable music players, and mobile phones.

32

Biometric Attendance Register

There are several industry associations and hardware conferences devoted to

maintaining and improving support for diverse hardware under Linux, such as

FreedomHEC.

Linux and most GNU software are licensed under the GNU General Public License

(GPL). The GPL requires that anyone who distributes Linux must make the source code

(and any modifications) available to the recipient under the same terms. Other key

components of a software system may use other licenses; many libraries use the GNU

Lesser General Public License (LGPL), a more permissive variant of the GPL, and the

X.org implementation of the X Window System uses the MIT License.

Torvalds states that the Linux kernel will not move from version 2 of the GPL to

version 3. He specifically dislikes some provisions in the new license which prohibit the

use of the software in digital rights management, and it would also be impractical to obtain

permission from all the copyright holders, who number in the thousands.

A 2001 study of Red Hat Linux 7.1 found that this distribution contained 30 million

source lines of code. Using the Constructive Cost Model, the study estimated that this

distribution required about eight thousand man-years of development time. According to

the study, if all this software had been developed by conventional proprietary means, it

would have cost about $1.46 billion (2012 US dollars) to develop in the United States.

Most of the code (71%) was written in the Cprogramminglanguage, but many other

languages were used, including C++, Lisp, assembly language, Perl, Python, Fortran, and

various shell scripting languages. Slightly over half of all lines of code were licensed under

the GPL. The Linux kernel itself was 2.4 million lines of code, or 8% of the total.

In a later study, the same analysis was performed for Debian GNU/Linux version

4.0 (etch, which was released in 2007). This distribution contained close to 283 million

source lines of code, and the study estimated that it would have required about seventy

three thousand man-years and cost US$8.04 billion (in 2012 dollars) to develop by

conventional means.

In the United States, the name Linux is a trademark registered to Linus

Torvalds.Initially, nobody registered it, but on 15 August 1994, William R. Della Croce, Jr.

filed for the trademark Linux, and then demanded royalties from Linux distributors. In

1996, Torvalds and some affected organizations sued him to have the trademark assigned

to Torvalds, and in 1997 the case was settled. The licensing of the trademark has since been

handled by the Linux Mark Institute. Torvalds has stated that he trademarked the name only

33

Biometric Attendance Register

to prevent someone else from using it. LMI originally charged a nominal sublicensing fee

for use of the Linux name as part of trademarks, but later changed this in favor of offering a

free, perpetual worldwide sublicense.

4.7 TECHNOLOGIES USED

JAVA

Java is a programming language originally developed by James Gosling at Sun

Microsystems (which has since merged into Oracle Corporation) and released in 1995 as a

core component of Sun Microsystems' Java platform. The language derives much of its

syntax from C and C++ but has a simpler object model and fewer low-level facilities. Java

applications are typically compiled to bytecode (class file) that can run on any Java Virtual

Machine (JVM) regardless of computer architecture. Java is a general-purpose,

concurrent, class-based, object-oriented language that is specifically designed to have as

few implementation dependencies as possible. It is intended to let application developers

"write once, run anywhere" (WORA), meaning that code that runs on one platform does not

need to be recompiled to run on another. Java is as of 2012 one of the most popular

programming languages in use, particularly for client-server web applications, with a

reported 10 million users.

Principles

There were five primary goals in the creation of the Java language

It should be "simple, object-oriented and familiar"

It should be "robust and secure"

It should be "architecture-neutral and portable"

It should execute with "high performance"

It should be "interpreted, threaded, and dynamic"

Versions

34

Biometric Attendance Register

Major release versions of Java, along with their release dates:

JDK 1.0 (January 23, 1996)

JDK 1.1 (February 19, 1997)

J2SE 1.2 (December 8, 1998)

J2SE 1.3 (May 8, 2000)

J2SE 1.4 (February 6, 2002)

J2SE 5.0 (September 30, 2004)

Java SE 6 (December 11, 2006)

Java SE 7 (July 28, 2011)

Oracle Corporation is the current owner of the official implementation of the Java

SE platform. This implementation is based on the original implementation of Java by Sun.

The Oracle implementation is available for Mac OS X, Windows and Solaris. Because Java

lacks any formal standardization recognized by Ecma International, ISO/IEC, ANSI, or any

other third-party standards organization, the Oracle implementation is the de facto

standard.

The Oracle implementation are packaged into two different distributions. The Java

Runtime Environment (JRE) which contains the parts of the Java SE platform required to

run Java programs. This package is intended for end-users. The Java Development Kit

(JDK), is intended for software developers and includes development tools such as the Java

compiler, Javadoc, Jar, and a debugger.

OpenJDK is another notable Java SE implementation that is licensed under the

GPL. The implementation started when Sun began releasing the Java source code under the

GPL. As of Java SE 7, OpenJDK is the official Java reference implementation.

The goal of Java is to make all implementations of Java compatible. Historically,

Sun's trademark license for usage of the Java brand insists that all implementations be

"compatible". This resulted in a legal dispute with Microsoft after Sun claimed that the

Microsoft implementation did not support RMI or JNI and had added platform-specific

features of their own. Sun sued in 1997, and in 2001 won a settlement of US$20 million, as

well as a court order enforcing the terms of the license from Sun.[23] As a result,

Microsoft no longer ships Windows with Java.

35

Biometric Attendance Register

Platform-independent Java is essential to Java EE, and an even more rigorous

validation is required to certify an implementation. This environment enables portable

server-side applications.

Automatic memory management

Java uses an automatic garbage collector to manage memory in the object lifecycle.

The programmer determines when objects are created, and the Java runtime is responsible

for recovering the memory once objects are no longer in use. Once no references to an

object remain, the unreachable memory becomes eligible to be freed automatically by the

garbage collector. Something similar to a memory leak may still occur if a programmer's

code holds a reference to an object that is no longer needed, typically when objects that are

no longer needed are stored in containers that are still in use. If methods for a nonexistent

object are called, a "null pointer exception" is thrown.[28][29]

One of the ideas behind Java's automatic memory management model is that

programmers can be spared the burden of having to perform manual memory management.

In some languages, memory for the creation of objects is implicitly allocated on the stack,

or explicitly allocated and deallocated from the heap. In the latter case the responsibility of

managing memory resides with the programmer. If the program does not deallocate an

object, a memory leak occurs. If the program attempts to access or deallocate memory that

has already been deallocated, the result is undefined and difficult to predict, and the

program is likely to become unstable and/or crash. This can be partially remedied by the

use of smart pointers, but these add overhead and complexity. Note that garbage collection

does not prevent "logical" memory leaks, i.e. those where the memory is still referenced

but never used.

Garbage collection may happen at any time. Ideally, it will occur when a program is

idle. It is guaranteed to be triggered if there is insufficient free memory on the heap to

allocate a new object; this can cause a program to stall momentarily. Explicit memory

management is not possible in Java.

Java does not support C/C++ style pointer arithmetic, where object addresses and

unsigned integers (usually long integers) can be used interchangeably. This allows the

garbage collector to relocate referenced objects and ensures type safety and security.

As in C++ and some other object-oriented languages, variables of Java's primitive

data types are not objects. Values of primitive types are either stored directly in fields (for

36

Biometric Attendance Register

objects) or on the stack (for methods) rather than on the heap, as commonly true for objects

(but see Escape analysis). This was a conscious decision by Java's designers for

performance reasons. Because of this, Java was not considered to be a pure object-oriented

programming language. However, as of Java 5.0, autoboxing enables programmers to

proceed as if primitive types were instances of their wrapper class.

Java contains multiple types of garbage collectors. By default, HotSpot uses the

Concurrent Mark Sweep collector, also known as the CMS Garbage Collector. However,

there are also several other garbage collectors that can be used to manage the Heap. For

90% of applications in Java, the CMS Garbage Collector is good enough.

MS SQL SERVER

MS SQL Server is database management software, which is rich and powerful

application. It is a language that enables us to create and operate on relational databases,

which are sets of related information stored in tables. Because of its elegance and

independence from machine specifies, as well as its support by the industry leaders in

relational database technology, SQL become the standard language and will remain as it for

the foreseeable future. The SQL standard is recognized by ANSI and is currently accepted

by ISO. Even though most commercial database programs extend SQL beyond the ANSI

definition, we will follow the ANSI standard with an eye towards the most common

variations. SQL also makes it easy for the user's even beginners to work with the database.

We can create tables, edit data and use queries to find the data we want with very little

effort and time.

Features of Microsoft SQL Server 2005

•Internet Integration.

The SQL Server 2005 database engine includes integrated XML support. It also has the

scalability, availability, and security features required to operate as the data storage

component of the largest Web sites.

•Scalability and Availability.

The same database engine can be used across platforms ranging from laptop computers

running Microsoft Windows 98 through large, multiprocessor servers running Microsoft

Windows 2005 Data Center Edition. SQL Server 2005 Enterprise Edition supports features

37

Biometric Attendance Register

such as federated servers, indexed views, and large memory support that allow it to scale to

the performance levels required by the largest Web sites.

•Enterprise-Level Database Features

The SQL Server 2005 relational database engine supports the features required to

support demanding data processing environments. The database engine protects data

integrity while minimizing the overhead of managing thousands of users concurrently

modifying the database.

•Ease of installation, deployment, and use

SQL Server 2005 includes a set of administrative and development tools that improve

upon the process of installing, deploying, managing, and using SQL Server across several

sites. SQL Server 2005 also supports a standards-based programming model integrated

with the Windows DNA, making the use of SQL Server databases and data warehouses a

seamless part of building powerful and scalable systems.

•Data warehousing

SQL Server 2005 includes tools for extracting and analyzing summary data for online

analytical processing. SQL Server also includes tools for visually designing databases and

analyzing data using English-based questions.

38

Biometric Attendance Register

5. SOFTWARE QUALITY ASSURANCE

PLAN

5.1PURPOSE39

Biometric Attendance Register

The purpose of this Software Quality Assurance (SQA) Plan is to establish the

goals, processes, and responsibilities required to implement effective quality assurance

functions for the BAR.

The BAR Software Quality Assurance Plan provides the framework necessary to

ensure a consistent approach to software quality assurance throughout the project life cycle.

It defines the approach that will be used by the SAM and Software Quality (SQ) personnel

to monitor and assess software development processes and products to provide objective

insight into the maturity and quality of the software. The systematic monitoring of BAR

products, processes, and services will be evaluated to ensure they meet requirements and

comply with existing systems, and BAR policies, standards, and procedures, as well as

applicable Institute of Electrical and Electronic Engineers (IEEE) standards.

5.2 SCOPE AND OVERVIEW

This plan covers SQA activities throughout the formulation and implementation

phases of the BAR mission. The scope of this project includes SQA tasks and

responsibilities; provide reference document and guidelines to perform SQA activities;

provide the standards, practices and conventions used in carrying out SQA activities; and

provide the tools and techniques and methodologies to support SQA activities and its

reporting.

The goal of the SQA paradigm is to verify that all software and documentation to be

delivered meet all technical requirements. The SQA procedure defined herein shall be used

to examine all deliverable software and documentation to determine compliance with

technical and performance requirements.

5.3 REFERENCE DOCUMENT

http://www.iptc.org/std/NewsCodes/0.0/documentation/SRS-doc-Guidelines_3.pdf

http://srs.ebi.ac.uk/srs/doc/srsuser.pdf

http://dict.mizoram.gov.in/download/books/SRS%20Document%20Guidelines.pdf

5.4 MANAGEMENT

40

Biometric Attendance Register

This section describes the management organizational structure, its roles and

responsibilities, and the software quality tasks to be performed.

5.4.1 ORGANIZATION

Efforts for this project are supported by numerous entities, organizations and

personnel. This tool is developed as a project as part of partial fulfillment of requirements

for Masters in Computer Applications degree. It will be the sole responsibility of the

developer to review the product’s usability, efficiency, reliability, and accuracy. The

project guide will however conduct inspections and walkthrough on regular basis. His

suggestion will be used in places where quality decisions need to out –weigh development

schedule decisions.

5.4.2 ROLES

5.4.2.1 Project guide:

Dr B. Kannan

Associate Professor.

Department Of Computer Applications

CUSAT

5.4.2.2 Developers:

SUJITH P S

DINU RAJ S

VRINDA V S

5.5 DOCUMENTATIONThe essential documentation will include:

The Software Requirement Specification (SRS), which

Prescribes each of the essential requirements(functions, performance, design

constraints and attributes) of the software and external interfaces

Objectively verifies achievement of each requirement by a prescribed method.

Facilities traceability of requirements specification to product delivery.

41

Biometric Attendance Register

Gives estimates of the cost/effort for developing the product including a project

plan.

The System Design Description:

Depicts how the system will be structured.

Gives an object model the essential classes that would make up the product.

Software test plan:

Describes the test cases that will be employed to test the product.

5.6 STANDARDS, PRACTICES AND OVERVIEW

5.6.1 STANDARDS

//…Coding (commenting will follow JavaDoc standards) Testing – IEEE Standard for Software Test Documentation SLOC – source lines of code will be primarily used for measuring the size of the

Software

5.7 REVIEWS AND AUDITS

Mrs. RafidhaRahimanand and Dr.Kannan, Lecturers of the Department Of

Computer Applications, performed a formal technical inspection on thearchitecture design

document and provide a formal report. Also, each group member reviewed the produced

documentation and made comments and suggestions duringeach presentation. Each

milestone must be approved by each committee member toproceed to the next milestone.

Each milestone is indicated by the presentation of eachphase. There are three presentation

described as follow:

Presentation I at the end of phase I include project overview, software requirements,

project plan, SQA plan and prototype demonstration.

Presentation II atthe end of phase II includes formal requirement

specification,Architecture design, test plan and architecture prototype demonstration.

Presentation III at the end of phase III includes component design, assessmentevaluation,

project evaluation, result from formal technical inspection and completedsoftware

demonstration.

5.8CONFIGURATION MANAGEMENT

42

Biometric Attendance Register

The software developer reported the problems encountered throughout the duration

of the project to the Systemdeveloper. The systemdeveloper had reported and discussed the

problems with the major professor. The conflicts or problems were discovered by one of

the committee members during a presentation, the developer then corrected the errors.

5.9 TOOLS TECHNIQUES AND METHODOLOGIES

5.9.1 TOOLS

SQA software tools include, but are not limited to, operating system utilities,

debugging aids, documentation aids, checklists and JAVA will be the language

used for coding the software.

Netbeans 6.9 is used as the IDE for developing the system.

This software will be tested under Windows/Linux.

5.9.2 TECHNIQUES

Include review of the use of standards, software inspections, requirements tracing, requirements and design verification, reliability measurements and assessments etc.

5.9.3 METHODOLOGIES

Methodologies are an integrated set of the above tools and techniques. The methodologies should be well documented for accomplishing the task or activity and provide a description of the process to be used.

43

Biometric Attendance Register

6. SYSTEM DESIGN

6. SYSTEM DESIGN

44

Biometric Attendance Register

System design is the second phase of the software life cycle. The system goes

through logical and physical state of development. The user oriented performance

specification is extended into a design specification while designing the needed system.

The design phase begins when the Requirement Specification document for the software to

be developed is available. When the Requirement Specification activity is entirely in the

problem domain, design is the first step to move from the problem domain to the solution

domain. Design is essentially the bridge between the requirements specification and the

final solution for satisfying these requirements.

6.1 INPUT DESIGN

Input design is the process of converting a user-oriented description of the inputs to

a computer-based business system into a programmer-oriented specification. The design

decision for handling input specify how data are accepted for computer processing. Input

design is a part of overall design that needs careful attention.

The collection of input data is considered to be the most expensive part of the

system design. Since the inputs have to be planned in such a way so as to get the relevant

information, extreme care is taken to obtain the pertinent information. If the data going into

the system is incorrect then the processing and outputs will magnify these errors. The goal

of designing input data is to make data entry as easy, logical and free from errors as

possible.

The following are the objectives of input design:

To produce a cost effective method of input.

To ensure validation.

Effort has been made to ensure that input data remains accurate fromthe stage at

which it is recorded and documented to the stage at which it is accepted by the computer.

Validation procedures are also present to detect errors in data input, which is beyond

control procedures. Validation procedures are designed to check each record, data item or

field against certain criteria.

6.1.1 STRUCTURED DESIGN

45

Biometric Attendance Register

Structured design is a data-flow-based methodology. The approach begins with a

system specification that identifies inputs and outputs and describes the functional aspects

of the system. The system specifications then are used as a basis for the graphic

representation- data-flow-diagram (DFD)-of the data flows and processes. From the DFD,

the next step is the definition of the modules and their relationships to one another in a

form called a structure chart, using a data dictionary and other structured tools. Structured

design partitions a program into small, independent modules. They are arranged in a

hierarchy that approximates a model of the business area and is organized in a top-down

manner. Thus, structured design is an attempt to minimize complexity and make a problem

manageable by subdividing it into smaller segments.

6.1.1.1 DATA FLOW DIAGRAMS

A data flow diagram (DFD) is a graphical representation of the "flow" of data through

an information system, modeling itsprocess aspects. Often they are a preliminary step used

to create an overview of the system which can later be elaborated.DFDs can also be used

for the visualization of data processing (structured design).

A DFD shows what kinds 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.

46

SYMBOLS USED

N

External Entities

Processes

Data Stores

Connectors

Data Flows

Biometric Attendance Register

Context level Diagram

Level One

47

USERBAMS

DATABASE

Biometric Attendance Register

6.1.1.2 USE CASE DIAGRAMS

48

Biometric Attendance Register

6.2 OUTPUT DESIGN

The output design phase of the system design is concerned with the conveyance of

information to the end users in user-friendly manner. The output design should be efficient,

intelligible so that the system relationship with the end user is improved and thereby

enhancing the process of decision making.

The output design is an ongoing activity almost from the beginning of the project,

efficient and well-defined output design improves the relation of the system and the user.

The primary considerations in the design of the output are the requirement of the

information and the objective of the end user. There are various types of outputs required

by most of the systems, but outputs of BAR are purely interactive outputs- which involve

the user in communicating with the computer.

The system output may be of any of the following

A report

A document

A message

49

Biometric Attendance Register

6.3SYSTEM ARCHITECTURE

This system consists of three modules namely, Administrator, Faculty and Student

Of which I have done the following modules.

ADMINISTRATOR: She/he is also a faculty. She/he has the overall power on the system. Manages the attendance list. Marking the attendance of faculties. Managing the attendances of faculties. Defines a day as Working or Holiday. Can add/remove faculty & students. Export/Import of the attendance

FACULTY:

This system provides a functionality of taking the attendance using a system.

It eliminates the difficulty of making a register. Students punch attendance morning and afternoon and faculty checks

whether it is marked. She/he can manage the attendance of students. They can edit the leaves and mark with permission leaves later. Export/Import of the attendance

STUDENT:

Login to the system Can view his/her report by requesting the teacher.

50

Biometric Attendance Register

6.4 DATA DESIGNTables

Table Name: Course

Field Name Data Type Key

Id Int(2) Primary

Name Varchar(20)

Duration Int(1)

Table Name: facattendance

Field Name Data Type key

Id Varchar(15) Primary

Month Int(2) Primary

Day Int(2) Primary

Morning Varchar(1)

Noon Varchar(1)

Table Name: facmnthattendance

Field Name Data Type Key

id Varchar(15) Primary

Month Int(2) Primary

totAtted Int(2)

presentdays Int(2)

Table Name: stattendance

Field Name Data Type key

51

Biometric Attendance Register

Id Varchar(3)

PrimaryMonth Int(2)

Day Int(2)

Morning Varchar(1)

Noon Varchar(1)

Table Name: faculty

Field Name Data Type Key

Id Varchar(15) Primary

Name Varchar(20)

Subject Varchar(20)

Password Varchar(10)

Imagename Varchar(20)

Role Varchar(1)

Table Name:stmnthattendance

Field Name Data Type Key

Id Varchar(3) Primary

Month Int(2) Primary

52

Biometric Attendance Register

TotAttend Int(2)

Presentdays Int(2)

Table Name: workingdays

Field Name Data Type Key

Day Int(2) Primary

Month Int(2) Primary

Table Name:student

Field Name Data Type Key

id Varchar(3) Primary

Name Varchar(20

)

Course Varchar(10

)

Batch Varchar(10

)

Imagename Varchar(20

)

53

Biometric Attendance Register

7. SYSTEM TESTING

7.1 SOFTWARE TESTING

54

Biometric Attendance Register

The most difficult part of this project was testing. After coding of each module,the application had to send to the mobile for its verification.By analyzing the performance, we could correct and modify the codes, at necessary stages. Thus testing was done in each phases and it was necessary, because start of the next phase was depending upon the performance of the previous stages. Each module was then tested independently.

Software testing is the process of checking whether the developed system is working according to the original objectives and requirements. Software testing process commences once the program is created and the documentation and related data structures are designed. Software testing is essential for correcting errors. The system should be tested experimentally with test data so as to ensure that the system works according to the required specification. When the system is found working, test it with actual data and check performance. Software testing is a critical element of software quality assurance and represents the ultimate review of specification, design and coding.

Need for Testing

Testing was essential for the following reasons:-

Existence of program defects of inadequacies

The software behavior as intended by its designer

Conformance with requirement specification/user needs.

Assess the operational reliability of the system.

Reflect the frequency of actual user inputs.

Find the fault, which caused the output anomaly.

Checks for detect flaws and deficiencies in the requirements.

Check whether the software is operationally useful.

Exercise the program using data like the real data processed by the program.

Test the system capabilities.

Check whether or not the program is usable in practice

Testing Strategies

The philosophy behind testing is to find errors. Test cases are devised with this

purpose in mind. Test case is a set of data that the system will process as normal input.

Characteristics of a Good Test:

Tests are likely to catch bugs

No redundancy

Not too simple or too complex

7.2 TEST PLAN

55

Biometric Attendance Register

Systems are not designed as entire systems nor are they tested as single systems. So,

performing of both Unit and System testing is essential. There are mainly two types of

testing, Black box testing and White box testing; both tests were carried out in secure data-

transfer.

Black-box test design treats the system as a "black-box", so it doesn't explicitly use

knowledge of the internal structure. Black-box test design is usually described as focusing

on testing functional requirements.

White-box test design allows one to peek inside the "box", and it focuses

specifically on using internal knowledge of the software to guide the selection of test data.

7.2.1 UNIT TESTING

Unit testing focuses verification effort on the smallest unit of software designs the

module. To check whether each module in the software works properly so that it gives

desired outputs to the given inputs. All validations and conditions are tested in the module

level in the unit test. Control paths are tested to ensure the information properly flows into,

and output of the program unit and out of the program unit under test. Boundary conditions

are tested to ensure that the modules operate at boundaries. All independent paths through

the control structure ensure that all statements in a module have been executed at least

once.

7.2.2 INTEGRATION TESTING

The major concerns of integration testing are developing an incremental

strategy that will limit the complexity of entire actions among components as they are

added to the system. Developing a component as they are added to the system, developing

an implementation and integration schedules that will make the modules available when

needed, and designing test cases that will demonstrate the viability of the evolving system.

Though each program works individually they should work after linking them together.

This is also referred to as interfacing. Data may be lost across interface and one module can

have adverse effect on another. Subroutines after linking may not do the desired function

expected by the main routine. Integration testing is a systematic technique for constructing

program structure while at the same time conducting tests to uncover errors associated with

the interface. In the testing, the programs are constructed and tested in small segments.

56

Biometric Attendance Register

Here our objective is that to edit, compile and execute j2meprograms . Using

integration test plan prepared in the design phase ofthe system developments guide, the

integration test is carried out and all the errors found in the system are corrected for the

next testing steps.

7.2.3SYSTEM TESTING

When a system is developed, it is hoped that it performs properly. In practice

however some errors always occur. The main purpose of testing and information system is

to find the errors and correct them. A successful test is one which finds an error.

The main objectives of system testing are

To ensure during operation the system will perform as per specifications.

To make sure that the system meets user’s requirements during operation.

To verify that the controls incorporated in the system function as intended.

To see that when correct inputs are fed to the system the outputs are correct.

The scope of a system test should include both manual operations and

computerized. Operations system testing is a comprehensive evaluation of theprograms,

manual procedures, computer operations and controls. System testing is the process of

checking if the developed system is working according to the original objectives and

requirements. All testing needs to be conducted in accordance to the test conditions

specified earlier.

7.2.4 VALIDATION TESTING

Validation testing is done to ensure complete assembly of the error-free software.Validation can be termed successful only if it functions in manner that is reasonably expected by the clients.

7.2.5 MODULE TESTING

Each individual programs module is tested for any possible errors. They were also tested for specifications, i.e. to see whether they are working as per what the program should do and how it should perform under various conditions.

57

Biometric Attendance Register

7.3 TEST CASES

Test case Field Value Message Status

User Authentication

Username paul Invalid Username or password

PASS

Password paul

Required field Username *Username required PASS

Primary Key Validation

Id in faculty admin Username already exists

PASS

Fingerprint Matching

Height 250 Size does not matching. PASS

Width 280

Numeric Validation

Duration in Course

A12 Only Numbers Permitted

PASS

58

Biometric Attendance Register

8. SYSTEM IMPLEMENTATION

59

Biometric Attendance Register

8.1IMPLEMENTATION

System implementation is the conversion of new system into an operating

one which involves creating compatible files, training clients and installing hardware. User

training is crucial for minimizing resistance to change and giving chance to prove its worth.

Training aids user friendly manuals and healthy screens provide the user

with a good start. Software maintenance follows conversion to the extent that changes are

necessary to maintain satisfactory operations relative to changes in the user’s environment.

Maintenance often includes minor enhancements or corrections to the problem that surface

late in the systems operations.

In the implementation phase, the team builds thecomponents either from

scratch or by composition. Given thearchitecture document from the design phase and the

requirement document from the analysis phase, the team should build exactly what has

been requested, though there is still room for innovation and flexibility. For example, a

component may be narrowlydesigned for this particular system, or the component may be

made more general to satisfy a reusability guideline. The architecture document should

give guidance. Sometimes, this guidance is found in the requirement document.

The implementation phase deals with issues of quality, performance,

baselines, libraries, and debugging. The end deliverable is the product itself. During the

implementation phase, the system is built according to the specifications from the previous

phases. This includes writing code, performing code reviews, performing tests, selecting

components for integration, configuration, and integration.

The implementation includes the following things.

Careful planning

Investigation of system and constraints.

Design the methods to achieve the changeover.

Training the staff in the changed phase.

Evaluation of change over method.

The method of implementation and time scale to be adopted are found out initially.

60

Biometric Attendance Register

8.2 MAINTANANCEThis phase occurs as a result of deploying the whole system at the end users

organization. They will perform the beta testing at the end users and inform to the

developers about any needed modification to the application .the customer records all the

problems that are encountered during the beta testing and rep[orts these to the developer at

regular intervals.

As result of problems reported during implementation, the software product to the entire

customer base

Types of changes that can be encountered during the maintenance phase

8.2.1 CORRECTIVE MAINTENANCE

Even with the best quality assurance activities, It is likely that the customer will

uncover defects in the software. Corrective maintenance changes the software to correct the

defects

8.2.2 ADAPTIVE MAINTENANCE

Over time, the original environment (CPU, operating system, business rules,

external product characteristics) for which the software was developed is likely to change.

Adaptive maintenance results in modification to the software to accommodate changes to

its external environment

8.2.3 PREVENTIVE MAINTENANCE

Computer software deteriorates due to change,and because of this preventive

maintenance often called software re-engineering,must be conducted to enable the software

to serve the needs of its end users .preventive maintenance makes changes to computer

programs so that they can be more easily corrected, adapted and enhanced.

61

Biometric Attendance Register

9. CONCLUSION

62

Biometric Attendance Register

9. CONCLUSION

It can be concluded that a reliable, secure, fast and an efficient system has been

developed replacing a manual and unreliable system. This system can be implemented in

academic institutes for better results regarding the management of attendance. This system

will save time, reduce the amount of work the administration has to do and will replace the

stationery material with electronic apparatus. Hence a system with expected results has

been developed but there is still some room for improvement.

63

Biometric Attendance Register

10. FUTURE ENHANCEMENTS

64

Biometric Attendance Register

FUTURE ENHANCEMENTS

In future System can be updated. Input data can be read from external device such as Fingerprint scanner, Iris

Scanner,Face Camera.

65

Biometric Attendance Register

11. BIBLIOGRAPHY

11BIBLIOGRAPHIES

66

Biometric Attendance Register

[1] D. Maltoni, D. Maio, A. K. Jain, S. Prabhaker, “Handbook of Fingerprint Recognition”, Springer, New York, 2003.

[2] A.C. Weaver, “Biometric authentication”, Computer, 39(2), pp 96-97 (2006). [3] J. Ortega-Garcia, J. Bigun, D. Reynolds and J.Gonzalez-Rodriguez, “Authentication gets

personal with biometrics”, Signal Processing Magazine, IEEE, 21(2), pp 50-62 (2004). [4] Anil K. Jain, Arun Ross and SalilPrabhakar,” An introduction to biometric recognition”,

Circuits and Systems for Video Technology, IEEE Transactions on Volume 14, Issue 1, Jan. 2004 Page(s):4 – 20.

[5] FakhreddineKarray, JamilAbouSaleh, Mo Nours Arab and MiladAlemzadeh,, “Multi Modal Biometric Systems: A State of the Art Survey” , Pattern Analysis and Machine Intelligence Laboratory, University of Waterloo, Waterloo, Canada.

[6] Abdulmotaleb El Saddik, Mauricio Orozco, YednekAsfaw, ShervinShirmohammadi and Andy Adler “A Novel Biometric System for Identification and Verification of Haptic Users”, Multimedia Communications Research Laboratory (MCRLab) School of Information Technology and Engineering University of Ottawa, Ottawa, Canada.

http://www.java.sun.com/ http://www.wikipedia.org/ http://www.w3school.com/

67

Biometric Attendance Register

12.SCREEN SHOTS

68

Biometric Attendance Register

69

Biometric Attendance Register

70

Biometric Attendance Register

71

Biometric Attendance Register

72

Biometric Attendance Register

73