SRS

download SRS

of 64

description

Software Requirement Specification Document for Biometric Attendance Management System

Transcript of SRS

The Hadoop Cluster

BIOMETRIC ATTENDANCE MANAGEMENT SYSTEM

Software Requirement Specification

For

Biometric Attendance Management System

Version 3.0 Approved

Prepared by

Heena Goyal (101103033)

Gitesh Goyal (101103028)

Software Engineering Project (SE)

Bachelor of Engineering in Computer

Date: 28th April, 2014

Computer Science and Engineering Department

Thapar University, Patiala

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 Ms. Sukhchandan Randhawa, Lecturer, Thapar University for her valuable guidance and encouragement, which helped me to successfully complete this project. I owe and incalculable debt to all staffs of the Department of Computers for their direct and indirect helps.I extend my heartfelt thanks to my parents, friends and well-wishers for their support and timely help.Last but not the least, I thank the God Almighty for guiding me in every step of the way.

OVERVIEW OF PROJECT

The objective of this project is to create an attendance software for Thapar University. 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 the database.

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 a memory efficient and integrated environment that can handle attendance details flexibly.

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

Accessibility:This provides authorized access integrate security.

Understandability:The functionalities are transparent and clearly defined.

Modularity: Features are segmented.

Features:-

Keep track of attendance. 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.

CONTENTS

1. PREFACE71.1 Analysis Phase81.2 Design Phase81.3 Development Phase81.4 Testing Phase91.5 Implementation Phase92. INTRODUCTION112.1 Overview122.2 Project Profile 122.3 Definitions, Acronyms and Abbreviations 133. SYSTEM ANALYSIS143.1 Purpose153.2Problem Definition163.3Feasibility Study163.4 Proposed System174. SOFTWARE REQUIREMENT SPECIFICATION194.1Purpose204.2Scope204.3Overall Description214.4Functional Requirements234.5Non Functional Requirements234.6Technology Used235. SOFTWARE QUALITY ASSURANCE PLAN255.1Purpose265.2Scope265.3Reference Document266. SYSTEM DESIGN276.0 System Design286.1 Logical Design296.2 Physical Design326.3 Object Oriented Approach326.4 Mechanism of Object Oriented Approach336.5 Unified Modelling Language336.6 System Architecture46 7. SYSTEM TESTING577.1Software Testing587.2Test Plan597.3 Test Cases627.4 Test Result 628. BIBILIOGRAPHY63

1. PREFACE

1.1 ANALYSIS PHASE

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 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 information from Computer Department of TU and interacted 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 to clearly understand the requirements and to resolve conflicts, inconsistencies in the gathered requirement. SRS of the system is 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 Management System. 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.

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. 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 the final 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 organizations 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.

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.

2. INTRODUCTION

2.1OVERVIEW

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. While the move towards the digital era is being accelerated every hour, biometrics technologies have begun to affect peoples 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 ones 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 Management SystemProject Objective : To implement an attendance software for TUDuration : 6 monthsProject guide: Ms. Sukhchandan Randhawa2.3 Definitions, Acronyms and AbbreviationsFieldDefinition

BAMSBiometric Attendance Management System

SRSSoftware Requirement Specification

SQLStructured Query Language

TUThapar University

QAQuality assurance

SQAPSoftware Quality Assurance Plan

OSOperating System

3. SYSTEM ANALYSIS

3.1 PURPOSESystem 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 cost benefit analysis. Recommending alternative solutions. Selling of the system. Supervising, installing and maintaining the system.

3.1.1 SYSTEM 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 GATHERINGThe 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 ANALYSISThe 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.

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 FEASIBILITYTechnical feasibility assesses whether the current technical resources are sufficient for the new system. If they are not available, can they be upgraded to provide the level of technology necessary for the new system?

3.3.2 ECONOMIC FEASIBILITYEconomic 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 scanner, 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 that are required to implement or install are already available with the organization. The persons of the organization need no exposure to computer but have to be trained to use this particular software. A few of them will be trained. Further training is very less. The management will also be convinced that the project is optimally feasible.3.4 PROPOSED SYSTEMMost 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 softwares 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.

3.4.1 ADVANTAGES 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 is 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.

4. SOFTWARE REQUIREMENT SPECIFICATION

4.1 PURPOSE

This Software Requirements Specification provides a complete description of all the functions and specifications of the Biometric Attendance Management System. The expected audience of this document is the faculty of TU, 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 THAPAR administration and reduce the manpower and paper works involved.4.2 SCOPEThis 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 Management 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.

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.1 PRODUCT PERSPECTIVEThe objective of BAMS 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 BAMS 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. 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. Attendance History. Can add or remove user by the administrator. Administrator can approve the report. Faculty forwards attendance list to the admin.4.3.3 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.3.1 Users of the system Administrator Faculty Student4.3.4 OPERATING ENVIRONMENT

4.3.4.1 Hardware Interface ScannerFingerprint Scanner

4.3.4.2 Software Interface1Operating system (any), BAMS

2Operating system (any), BAMS, MS SQL 2008

3J2EE, JAVA, OS(windows), MS SQL 2008

4.3.5 DESIGN AND IMPLEMENTATION CONSTRAINTS

Members must have a BAMS 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.6 ASSUMPTIONS AND DEPENDENCIES

All roles are created in the system already. Roles and tasks are predefined and are made known to the administrator. This system is 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.5 NON FUNCTIONAL REQUIREMENTSThe nonfunctional requirements which define the system perfomance are Security Reliability Maintainability Extensibility Reusability Application affinity/compatibility Resource utilizations Scalability Functionality Performance

4.6 TECHNOLOGIES USEDJAVAJava 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 implementation dependencies as possible.

VersionsMajor 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. My SQL SERVERMy 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. We can create tables, edit data and use queries to find the data we want with very little effort and time.

5. SOFTWARE QUALITY ASSURANCEPLAN

5.1 PURPOSEThe 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 BAMS. The BAMS 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. 5.2 SCOPE AND OVERVIEWThis plan covers SQA activities throughout the formulation and implementation phases of the BAMS 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

6. SYSTEM DESIGN

6. SYSTEM DESIGNSystem design is the second phase of the software life cycle after analysis. 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.Design specifications can take many forms including written documentation, or working computer generated prototypes of the new system. There are two types of design1) Logical design2) Physical design.

6.1 Logical Design

6.1.1 Process Modeling: Data Flow Diagram (DFD)

The DFD is an excellent communication tool for analysts to model processes and functional requirements. One of the primary tools of the structured analysis efforts of the 1970's it was developed and enhanced by the likes of Yourdon, McMenamin, Palmer, Gane and Sarson.

Context level Diagram

DFD Level 1

DFD Level 2

6.1.2 E-R DIAGRAMThe entity-relationship model or entity-relationship diagram (ERD) is a data model or diagram for high-level descriptions of conceptual data models, and it provides a graphical notation for representing such data models in the form of entity-relationship diagrams. Such models are typically used in the first stage of information-system design; they are used, for example, to describe information needs and/or the type of information that is to be stored in the database during the requirements analysis.The Entity-Relationship (ER) model was originally proposed by Peter in 1976 as a way to unify the network and relational database views. Simply stated the ER model is a conceptual data model that views the real world as entities and relationships. A basic component of the model is the Entity-Relationship diagram which is used to visually represent data objects.

6.2 Physical design

Physical design is the process of translating the logical abstract model into the specific technical design for the new system. In this project Data Dictionary has been used for physical data modeling.

6.2.1 Data Dictionary

The data dictionary is a specialized application of the kinds of dictionaries used as references in everyday life. The data dictionary is a reference work of data about data (that is, metadata), one that is compiled by systems analysts to guide them through analysis and design. As a document, the data dictionary collects and coordinates specific data terms, and it confirms what each term means to different people in the organization.Data Store NameDescriptionInbound Data FlowOutbound Data Flow

Main DatabaseIt stores the fingerprints for both faculty and student.Add or Remove Student/ Add or Remove SubjectAdd New Student Screen/ Add or Remove Subject Screen

Attendance DatabaseStores the record of attendance for all studentsView AttendanceAll Attendance

6.3 Object Oriented Approach

There have been basically 3 approaches in information system development area: process- oriented, data-oriented and object-oriented approaches.The object-oriented approach combines data and processes (called methods) into single entities called objects. Objects usually correspond to the real things an information system deals with, such as customers, suppliers, contracts, and purchase agreements. The goal of object- oriented approach is to make system elements more reusable, thus improving system quality and the productivity of systems analysis and design.

6.4 Mechanism of Object-oriented Approach

The principals of objects, encapsulation, inheritance, and polymorphism are the foundation

of object-oriented systems development. To understand and express the essential and interesting features of an application in the complex real world, an object-oriented model is built around objects. An object encapsulates both data and behavior.Objects can inherit characteristics from more than one parent object. Inheritance attempts to avoid the redundant definition of similar characteristics that can be embodied at higher levels in the system.By a concept called polymorphism, functionality that is conceptually similar among differing objects is extracted to a global level. This process limits the production of parallel functionality and streamlines the information interface.6.5 Unified Modeling Language

The Unified Modeling Language (UML) is an object-oriented language for specifying, visualizing, constructing, and documenting the artifacts of software systems, as well as for business modeling.As UML uses simple, intuitive notation, nonprogrammers can also understand UML models. If developers, customers, and implementers can all understand a UML diagram, they are more likely to agree on the intended functionality.The UML notation is useful for graphically depicting object-oriented analysis and design models. It not only allows us to specify the requirements of a system and capture the design decisions, but it also promotes communication among key persons involved in the development effort.

The following UML diagrams are shown in this project:- Use Case Diagram Activity Diagram Sequence Diagram State Chart Diagram Class Diagram Collaboration Diagram Component Diagram Deployment Diagram

6.5.1 Use Case Diagram

A use case is a collection of possible sequences of interactions between the system under discussion and its Users (or Actors), relating to a particular goal.

PRE CONDITIONS:

1. The fingerprints of the students should be available.2. The fingerprints of the teacher should be available.3. The fingerprint scanner should generate correct output signals.

USE CASE NAME: ATTENDANCE SYSTEM

USE CASE NUMBER:

UC1

ACTORS:

1. Student2. Admin3. Teacher

POST CONDITIONS:1. The monthly report is sent to the students.2. The attendance of the students is viewable by teachers and admin.6.5.2 Activity Diagram

The easiest way to visualize an Activity diagram is to think of a flowchart of a code. Activity diagrams represent the business and operational workflows of a system.The Activity Diagram can help to describe the flow of control of the target system, such as the exploring complex business rules and operations, describing the use case also the business process.

6.5.3 Sequence DiagramIt depicts how objects interact with each other via messages in the execution of a use case or operation.

6.5.4 Collaboration Diagram

6.5.5 State Chart Diagram

6.5.6 Class Diagram

6.5.7 Component Diagram

In the Unified Modelling Language, acomponent diagram depicts howcomponentsare wired together to form larger components and orsoftware systems. They are used to illustrate the view of arbitrarily complex systems.

6.5.8 Deployment Diagram

6.5.9 Work BreakDown StructureA work breakdown structure (WBS), in project management and systems engineering, is a deliverable based breakdown of a project into minor components. It describes and clusters a project's isolated work elements in a way that helps organize and define the total work scope of the project.

(i) Phase based WBS

BAMS0

Concept1Testing5Final Release6Project Development4Project Design3Project Analysis 2

Project Scope1.1

Test Plan 5.1Architecture Design3.1Create Project Charter 2.1Coding4.1

TestCase 5.2Implementation4.2Detail Design3.2Create WBS2.2Define Features1.2

Test Report5.3Define Requirement1.31.3

Specify Schedule2.3

Specify Resources2.4

(ii) Product based WBS

(iii) WBS DictionaryProject Title: Biometric Attendance Management System WBS Item No: 1 WBS Item Name: Authentication Description: Authentication is needed to check valid users and permit them to access their account. WBS Item No: 1.1WBS Item Name: LoginDescription: For a successful login valid username and password is required. It is the next step in authentication.WBS Item No: 2.0WBS Item Name: Faculty ModuleDescription: This module deals with the entry of fingerprint and its validation by the staff. WBS Item No: 2.1 WBS Item Name: Thumbprint ImpressionDescription: It deals with the thumbprint details of the faculty.WBS Item No: 2.2WBS Item Name: View ReportDescription: It deals with providing the attendance report to the faculty on the monthly basis.WBS Item No: 3.0 WBS Item Name: Student AttendanceDescription: It deals with the marking of attendance of the student by taking the fingerprint impression and updating the attendance record.WBS Item No: 3.1 WBS Item Name: Thumbprint ImpressionDescription: It validates the thumbprint impression obtained of the student with the database entry already stored.WBS Item No: 3.2 WBS Item Name: View ReportDescription: It deals with providing the attendance report to the faculty on the monthly basis.6.6 SYSTEM ARCHITECTUREThis 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.

INTERFACE DESIGN:

Initiation Screen:

VALIDATION CHECKS:

ATTENDANCE BY STUDENTS:

7. SYSTEM TESTING

7.1 SOFTWARE TESTING

The most difficult part of this project was testing. After coding of each module, the application had to be sent 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 practiceTesting StrategiesThe 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 PLANSystems 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 TESTINGUnit 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 TESTINGThe 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. 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.3 SYSTEM TESTINGWhen 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 users 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 the programs, 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 TESTINGValidation 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 TESTINGEach 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.

7.3 TEST CASES

UNIT TESTING:1 int width1 = img1.getWidth(null);System.out.print("6");2 int width2 = img2.getWidth(null);System.out.print("7");3 int height1 = img1.getHeight(null);System.out.print("8"); 4 int height2 = img2.getHeight(null);System.out.print("9"); 5 if ((width1 != width2) || (height1 != height2)) { 7 System.err.println("Error: Images dimensions mismatch"); 8 System.exit(1); } 9System.out.print("10");

CYCLOMATIC GRAPH:

1

2

3

4

5

7

8

9

Cyclomatic Complexity:V-E+2= 8-8+2=2 OrNo. of predicate nodes+1=2

Test paths:1-2-3-4-5-91-2-3-4-5-7-8-9

Black Box Testing:

Test caseFieldValueMessageStatus

User AuthenticationUsernameHeenaInvalid Username or passwordPASS

PasswordHello

Required fieldUsername*Username requiredPASS

Primary Key ValidationId in facultyAdminUsername already existsPASS

Fingerprint MatchingHeight460Size does not match.PASS

Width1024

User AuthenticationPasswordA12Passwords do not matchPASS

Black box Testing(Equivalence Partitioning):

Test Case: For marking attendance of student

Valid set:{correct fingerprint}Invalid set:{incorrect fingerprint, no fingerprint}

InputActual Output Expected OutputResult

Incorrect FingerprintSorry, not AcceptableSorry, not AcceptablePASS

Correct FingerprintAttendance updatedAttendance UpdatedPASS

7.4 Test Result:The tester also created the results of the test execution, which are referred to as the test log. Test cases are executed by the tester and results of the tests are documented in the test log. The Test Analyst role is responsible for identifying and defining the mandatory tests, observing comprehensive testing advancement and results in each test cycle and evaluating the overall quality experienced as a result of testing activities.

8. BIBLIOGRAPHY

8. BIBLIOGRAPHIES [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.

43