sai.docx

46
CS552 Object-Oriented Design Project Mahender Kasarla, Pramod Reddy Dharma Rivier University Project Abstract Today all computer based systems claims for more sophisticated mechanisms to guarantee the information security. The fast evolution of communication system provided us a great volume of information anywhere any time hence, the security question became proprietary. The traditional password based security system has proven to be weak due to its deficiencies. The use of biometric devices which uses human’s physical parts as means of authentication requires hardware of high cost. The keystroke biometric can be used in many real time applications. One such application is the reporter or some other person who hacked the user name and password of the user. First the typing pattern of reporter is stored with the server system. Server after receiving text it tries to match it with the typing pattern information stored in its profile to grant or deny the access to the system. 1

Upload: sanjog-pathak

Post on 27-Sep-2015

214 views

Category:

Documents


2 download

TRANSCRIPT

CS552 Object-Oriented Design ProjectMahender Kasarla, Pramod Reddy DharmaRivier University

Project Abstract Today all computer based systems claims for more sophisticated mechanisms to guarantee the information security. The fast evolution of communication system provided us a great volume of information anywhere any time hence, the security question became proprietary. The traditional password based security system has proven to be weak due to its deficiencies. The use of biometric devices which uses humans physical parts as means of authentication requires hardware of high cost.

The keystroke biometric can be used in many real time applications. One such application is the reporter or some other person who hacked the user name and password of the user. First the typing pattern of reporter is stored with the server system. Server after receiving text it tries to match it with the typing pattern information stored in its profile to grant or deny the access to the system.

AUTHENTICATION OF PEOPLE BY THEIR TYPING PATTERN

1.Table of Contents

2.ExecutiveSummary.....................................................................................................................................4

3.SystemRequest.........................................................................................................................4

4.Workplan..................................................................................................................................5

5.FeasibilityAnalysis...................................................................................................................10

6.RequirementsDefinition...........................................................................................................12

7.FunctionalModel......................................................................................................................14

Activity Diagram.....................................................................................................................14

Use Case Description..............................................................................................................15

UseCase Diagrams.................................................................................................................16

8.StructuralModels......................................................................................................................17

CRC Cards...............................................................................................................................17

Class Diagram..........................................................................................................................18

Object Diagram........................................................................................................................19Collaboration Diagram.............................................................................................................20

9.BehavioralModels.....................................................................................................................21

Sequence Diagram...................................................................................................................21

Communication Diagram.........................................................................................................22

Behavioral State Machine Diagram.........................................................................................22

CRUD Analysis Matrix............................................................................................................23

Appendix.....................................................................................................................................................................................24

Partial package diagram(pp.299).............................................................................................24

Contract(p.353) (Need to submit only one contract form)......................................................25

Method specification................................................................................................................25

Data access and manipulation class mapping scheme(p.404).................................................28

Story board for user interface design.......................................................................................29

Physical architecture layer design................................................................................................30

Deployment diagram................................................................................................................31

Hardware and software specification(p.493)...........................................................................32

Operational requirements.........................................................................................................34Conclusion............................................................................................................................361

Executive summery

Authentication of People by Their Typing Patterns is swings based application. Today all computer based systems claims for more sophisticated mechanisms to guarantee the information security. As an attempt to develop more powerful authentication system, with low cost and good acceptance by users, we proposed here authentication mechanism which combines traditional password system with a system that uses biometric information of human typing patterns i.e. Authentication of People by Their Typing Pattern of user for authentication.

System RequestElementDescriptionExamples

Project sponsorThe person who initiates the project and who serves as the primary point of contact for the on the business sidePolice Department, Crime department etc

Business needThe business related reason for initiating the systemProtects from illegal social activities

Business requirementsThe business capabilities that the system will provideDetects suspicious mails

Business valueThe benefits that the system will create for the Organization.Secures human life and property

Special issues or constraintsIssues that are relevant to the implementation of the system and decision made by the committee about the projectMaintaining and processing for secured mails

4. Work plan

Task DescriptionDurationDependency

I. Business Modeling

a. Inception

1. Understand current business situation.5 day

2. Uncover business process problems.5 day1.a.1

3. Identify potential projects.5 day1.a.2

b. Elaboration

1. Develop vision document.5 day1.a.3

2. identify business case.5 day1.b.1

c. Construction

1. construct business case.5 day1.b.2

d. Transition

1. review business case.5 day1.c.1

e. Production

1. finalize business case.5 day1.d.1

2. finalize vision document.5 day1.e.1

II. Requirements

a. Inception

1. Identify appropriate requirements analysistechnique.5 day

2. Identify appropriate requirements gathering techniques.5 day

3. Identify functional and nonfunctionalrequirements.5 dayII.a.1, II.a.2

4. Analyze current systems.5 dayII.a.1, II.a.2

5. Create requirements definition.5 dayII.a.3, II.a.4

A. Determine requirements to track

B. Compile requirements as they areelicitedII.a.5.A

C. Review requirements with sponsorII.a.5.B

b. Elaboration

1. Review functional requirements1 day11.a.5

2. review nonfunctional requirements1 day11.a.5

c. Construction

1. create requirements definition.5 day11.b.1, II.b.2

d. Transition

1. review requirements definition with project sponsor.5 dayII.c.1

e. Production

1. Create final requirements definition.5 dayII.d.1

III. Analysis

a. Inception

1. Identify business processes.5 day

2. Identify use cases.5 dayIII.a.1

b. Elaboration

1. map use cases with business process.5 dayIII.a.2

c. Construction

1. construct use case diagram.5 dayIII.b.1

d. Transition

1. review use case diagram with sponsor.5 dayIII.c.1

e. Production

1. Create final Use case diagram.5 dayIII.d.1

IV. Design

a. Inception

1. Identify potential classes.5 dayIII.e.1

2. identify data access requirements.5 dayIV.a.1

3. identify relational tables.5 dayIV.a.2

b. Elaboration

1. review data access layer.5 dayIV.a.3

2. review potential classes.5 dayIV.b.1

3. identify attributes and functions.5 dayIV.b.2

c. Construction

1. construct class diagram.5 dayIV.b.3

2. construct DAM classes.5 dayIV.c.1

3. Construct relational database design.5 dayIV.c.2

d. Transition

1. Validate all design documents1 dayIV.c.3

e. Production

1. Create final design documents1 dayIV.d.1

V. Implementation

a. Inception

1. analyze story board1 dayIV.e.1

2. identify method specifications1 dayV.a.1

b. Elaboration

1. create story board1 dayV.a.2

2. create method specifications for all actions1 dayV.b.1

3. create state diagrams1 dayV.b.2

c. Construction

1. Construct HCI layer1 dayV.b.3

2. Construct the application code45 daysV.c.1

d. Transition

1. Validate the code against business5 daysV.c.2

requirements

e. Production

1. Finalize application code2 daysV.d.1

VI. Test

a. Inception

1. analyze testing approach1 dayV.e.1

b. Elaboration

1. create test plans1 dayVI.a.1

c. Construction

1.prepare test scripts1 dayVI.b.1

d. Transition

1. Review test scripts with business users1 dayVI.c.1

e. Production

1. Implement test plan1 dayVI.d.1

VII. Deployment

a. Inception

1. identify deployment requirements1 dayIV.e.1

b. Elaboration

1. create deployment model1 dayVII.a.1

c. Construction

1. Build infrastructure5 daysVII.b.1

d. Transition

1. Deploy applications1 dayVII.c.1

e. Production

1. Build deployment documents1 dayVII.e.1

VIII. Configuration and change management

a. Inception

1. Identify necessary access controls fordeveloped artifacts1 dayVII.e.1

2. Identify version control mechanisms for developed artifacts1 dayVIII.a.1

b. Elaboration

1.Prepareconfigurationcontroldocuments1 dayVIII.a.2

2. Prepare change management policy.5 ayVIII.b.1

3.Identify change approval policy.5 dayVIII.b.2

c. Construction

1. Create change management policy.5 dayVIII.b.3

2. Create configuration control policy.5 dayVIII.c.1

3. Create Configuration Management DB.5 dayVIII.c.2

d. Transition

1. Transition change management policies toOperations team.5 dayVIII.c.3

e. Production

1. Validate change management procedures.5 dayVIII.d.1

IX. Project management

a. Inception

1. Create work plan for the inception phase

2. Create system request

3. Perform feasibility analysis1 dayIX.a.2

A. Perform technical feasibility analysis

B. Perform economic feasibility analysis

C. Perform organizational feasibilityanalysis

4. Identify project size.5 dayIX.a.3

5. Identify staffing requirements.5 dayIX.a.4

6. Compute cost estimate.5 dayIX.a.5

7. Create work plan for first iteration of the elaboration phase.5 dayIX.a.1

8. Assess inception phase.5 dayI.a, II.a, III.a,IV.a, V.a, VI.a, VII.a, VIII.a,IX.a, X.a, XI.a,XII.a

b. Elaboration

c. Construction

d. Transition

e. Production

X. Environment

a. Inception

1. Acquire and install CASE tool1 day

2. Acquire and install programming environment1 day

3. Acquire and install configuration and change organization tools1 day

4. Acquire and install project management tools

b. Elaboration

c. Construction

d. Transition

e. Production

XI. Operations and Support

a. Inception

b. Elaboration

c. Construction

d. Transition

e. Production

XII. Infrastructure Management

a. Inception

1. Identify appropriate standards and enterprisemodels

2. Identify reuse opportunities, such as patterns, frameworks, and libraries

3. Identify similar past projects

b. Elaboration

c.Construction

d. Transition

e. Production

In this project, users are being accepted by their typing pattern of password. The keystroke biometric can be used in many real time applications. One such application is the reporter or some other person who hacked the user name and password of the user. First the typing pattern of reporter is stored with the server system. Server after receiving text it tries to match it with the typing pattern information stored in its profile to grant or deny the access to the system.The traditional password based security system has proven to be weak due to its deficiencies. The use of biometric devices which uses humans physical parts as means of authentication requires hardware of high cost.

Feasibility AnalysisFeasibility Study: The main objective of the feasibility study is to test the Technical, Operational and Economical feasibility for adding new modules and debugging old running system. All system is feasible if they are unlimited resources and infinite time. There are aspects in the feasibility study portion of the preliminary investigation. Technical Feasibility Operation Feasibility Economic FeasibilityTechnical Feasibility:The technical issue usually raised during the feasibility stage of the investigation includes the following Does the necessary technology exist to do what is suggested? Does the proposed equipment have the technical capacity to hold the data required to use the new system? Will the proposed system provide adequate response to inquiries, regardless of the number or location of users? Can the system be upgraded if developed? Are there technical guarantees of accuracy, reliability, ease of access and data security?Earlier no system existed to cater to the needs of Secure Infrastructure Implementation System. The current system developed is technically feasible. It is a web based user interface for Online Project Management. Thus it provides an easy access to the users. The databases purpose is to create, establish and maintain a work flow among various entities in order to facilitate all concerned users in their various capacities or roles. Permission to the users would be granted based on the roles specified. Therefore, it provides the technical guarantee of accuracy, reliability and security. The software and hard requirements for the development of this project are not many and are already available in-house or are available as free as open source. The work for the project is done with the current equipment and existing software technology. Necessary bandwidth exists for providing a fast feedback to the users irrespective of the number of users using the system.

Operational Feasibility:Proposed projects are beneficial only if they can be turned out into information system. That will meet the organizations operating requirements. Operational feasibility aspects of the project are to be taken as an important part of the project implementation. Some of the important issues raised are to test the operational feasibility of a project includes the following Is there sufficient support for the management from the users? Will the system be used and work properly if it is being developed and implemented? Will there be any resistance from the user that will undermine the possible application benefits?This system is targeted to be in accordance with the above-mentioned issues. Beforehand, the management issues and user requirements have been taken into consideration. So there is no question of resistance from the users that can undermine the possible application benefits.Economic Feasibility:A system can be developed technically and that will be used if installed must still be a good investment for the organization. In the economic feasibility, the development cost in creating the system is evaluated against the ultimate benefit derived from the new systems. Financial benefits must equal or exceed the costs. The system is economically feasible. It does not require any addition hardware or software. Since the interface for this system is developed using the existing resources and technologies available at NIC, There is nominal expenditure and economic feasibility for certain.

Requirement Definitions

Functional Requirements:Following is a list of functionalities of the system. Well-structured designs improve the maintainability of a system. A structured system is one that is developed from the top down and modular, that is, broken down into manageable components. The user has to register him/her own account. The user will fill the registration form with the details and also provides the personal password to access that account later. User has to provide his password data repeatedly to store the typing pattern data of the password in the database. The existing user will allowed accessing his account by giving his username and password for authentication. We will verify whether the given key strokes are matching with the keystrokes that are stored in the database at time of registration. We connect the database and retrieve the information of the particular user data with the given user name. The system takes the decision to give the permission to the particular identified account or not. First the typing pattern of reporter is stored with the server system. Server after receiving text. It tries to match it with the typing pattern information stored in its profile to grant or deny the access to the system.

Non Functional Requirements: 24 X 7 availability. Better component design to get better performance at peak time. Flexible service based architecture will be highly desirable for future extension.

PerformanceThey understand the importance of timing, of getting there before the competition. A rich portfolio of reusable, modular frameworks helps jump-start projects. Tried and tested methodology ensures that we follow a predictable, low - risk path to achieve results. Our track record is testimony to complex projects delivered within and evens before schedule.Security It provides more security by setting username and password.Safety This application provides more safety to the users for accessing the databases and for performing the operations on the databases.Interfaces It provides the interface for accessing the database and also allows the user to do the manipulations on the databases.Reliability This entire project is depends on the SQL Server.Accuracy Since the same table is created at different users account, the Possibility of retrieving data wrongly increases. Also if the data is more, Validations become difficult. This may result in loss of accuracy of data.Easy to Use Ever user should be comfortable of working with computer and internet browsing. He must have basic knowledge of English.Interoperability This provides the import and export facilities for sending one database to another database.Maintainability The key to reduce the need for maintenance while working, if possible to do essential tasks.Testability Testing is done in various ways such as testing the algorithm, programming code; sample data debugging is also one of following the above testing.

Project Theme: Authentication of People by Their Typing Patterns is a swing based application. As an attempt to develop more powerful authentication system, with low cost and good acceptance by users, we proposed here and authentication mechanism which combines traditional password system with a system that uses biometric information of human typing patterns i.e. Authentication of People by Their Typing Pattern of users for authentication.

In this project we modularized the system so that they have minimal effect on each other.

0. Registration modulea. Test data module1. Authentication module2. Password Verification module3. Identification module4. Decision module

Functional Models

Activity Diagram:

The process flows in the system are captured in the activity diagram. Similar to a state diagram, an activity diagram also consists of activities, actions, transitions, initial and final states, and guard conditions.

Figure: activity diagram

Use case descriptions:A use case description contains all the information needed to build the structural and behavioralDiagrams, which can be expressed below

Use case name: Access accountID: 8622315990Importance level: High

Primary actor : UserUse case type: Details, Essentials

Stakeholders and interests:User want to access the account.Administrator - want to allow and secure the account.

Brief Description: this use case describes how users are being allowed into account.

Trigger: user completes his work to log off.Type : Internal

Relationships:Associations: User, Admin.

Use case diagram:The use case diagram is used to identify the primary elements and processes that form the system. The primary elements are termed as "actors" and the processes are called "use cases." The use case diagram shows which actors interact with each use case.

Figure: use case diagram

Structural Models

CRC Cards:

FrontClass name : userID: 8622315990Type: Access account

Description: User wants to access his/her accountAssociated use cases: 2

Responsibilities Should have user id Should have passwordCollaborators

BackAttributes : Sign up

Relationships:Generalization: UserOther associations : Should know the user id and password

Class diagram:

The class diagram is used to refine the use case diagram and define a detailed design of the system. The class diagram classifies the actors defined in the use case diagram into a set of interrelated classes. The relationship or association between the classes can be either an "is-a" or "has-a" relationship. Each class in the class diagram may be capable of providing certain functionalities. These functionalities provided by the class are termed "methods" of the class. Apart from this, each class may have certain "attributes" that uniquely identify the class.

Figure: Class diagram for authentication

Object diagram: The object diagram is special kind of class diagram. An object is an instance of a class. This essential means that an object represents the state of a class at a given point of time while the system is running. The Object diagram captures the state of different classes in the system and their relationships or association at given point of time.

Collaboration diagram:

A collaboration diagram groups together the interactions between different objects. The interactions are listed as numbered interactions that help to trace the sequence of the interactions. The collaboration diagram helps to identify all the possible interactions that each object has with other objects.

Figure: collaboration diagram

Behavioral Models

Sequence diagram:

A sequence diagram represents the interaction between different objects in the system. The important aspect of a sequence diagram is that it is time-ordered. This means that the exact sequence of the interactions between the objects is represented step by step. Different objects in the sequence diagram interact with each other by passing message.

Figure: sequence diagram

Communication diagram:

Figure: communication diagram

Behavioral State machine:

Figure: Behavioral Diagram

CRUDE MATRIX

C for createR for readU for updateD for deleteE for execute

UserAdminGuestLogin(Access)Logout

UserRC,R,U,D,E

AdminC,R,U,D,E

GuestR

Login(Access)C,R,U,D,ER,UR

logout

APPENDIX

Contract (p. 353) (Need to submit only one contract form)

Method name: Access Account Class name: User Account system

ID: 8622315990

Clients (consumers): individuals (users)

Associated Use cases: 2

Description of Responsibilities: should have user id and should have password.

Arguments Received : void

Type of Value Returned: Characters, Special characters, Numbers

Pre-Conditions: user name and password depends on the user. make sure with the user id and password(type of password pattern).

Post-conditions: For security reason you must log off your account after work. Never save password and account.

Method specification:Method Name: Access accountClass Name: : User account System ID:8622315990

Contract ID: 5167280616Programmer: mahi, prama

Programming Language:o Visual Basico Smalltalko C++o Java

Triggers/Events: user access account by typing patterns

Arguments Received:Data Type:Notes:

Order New costumers order

Messages Sent & Arguments Passed: Class Name, Method Name:Data Type:Notes:

User id ()

User id of particular user

User details () Char, integersintegers

Create password() Char, integers

Type pattern of password

Argument Returned: Data Type:Notes:

None

There is no Argument Returned

Algorithm Specification:Authentication - user id and password - verify password pattern IF the password pattern matches()Permit the access. ELSE Re-type the password pattern then verify.See the Activity diagram based algorithm specification below.

Misc. Notes:None

Figure: Activity diagram.

Data access and manipulation class mapping scheme (p. 404)

Storyboard

Physical architecture layer designArchitecture Diagram

Deployment diagrams:Version b:

Version: c Fig4.6: Deployment diagram for Login

Hardware and software RequirementsSoftware Requirements Operating System :Windows XP/2000 or Higher Database :Oracle 11g Language :JAVAHardware Requirements Processor:Pentium IV RAM:512 MB Hard disk:20 GB

SpecificationStandard ClientStandard Web ServerStandardApplicationServerStandard Database Server

Operating System

Windows XP/7Internet ExplorerLinux, javaLinux, javaLinux, oracle, java

Special SoftwareApacheJavaMySQL

Hardware2 GB Memory250 GB Disk Drive

Intel Core i3

18.5 inch HDMonitor

16 GB Memory1 TB Disk Drive

Intel Xenon X347018.5-inch HD monitor

24 GB Memory2-600 GB Disk Drive

Intel Xenon X562018.5-inchHD monitor32 GB Memory 4-600 GB Hot plug Disk Drives

Intel Xenon X562018.5-inchHD monitor

Network10 mbps EthernetHigh-speed wireless100 Mbps Ethernet100 Mbps Ethernet100 Mbps Ethernet

Operational requirements (p.496)Technical Environment Requirements: Special hardware, software, and network requirements imposed by business requirements. The system will work over the Web environment with Internet Explorer or any standard web browser. The version of the system will be provided for the user connecting over the internet via smart phone. Users will only need Internet Explorer on their desktops. Optionally they may need any word processing software to prepare and upload user details.System Integration Requirements: The extent to which system will operate with other system Administration system will need to access to Human Resource Management System to authorize a user as manager Administration system will need access to Human resource Management system to transfer applicant details and resume during new user/ Administrator creation process Administration system will need access to internal Human resource Management system internal skill matrix library of resources, while validating results(progress of User)obtained via internal sourcing process Administration systems will need access to external admissions for user posting web sites to post promotion ads.

Portability Requirements: The extent to which the system will need to operate with other systems. The system will need to remain current with evolving standards around social networking sites to gather information about users in much more efficient way. The system must be able to work with different operating system.

Maintainability Requirements: Expected business changes to which system should be able to accept. System should support change approval cycles during new user requirement posting process as internal processes change in future. New version of the system will be released for every new user for six months.e) Performance requirements (p. 498) Response times for user should be less than 7 seconds. Updates the results or important message posting sites must be reflected in real timeCapacity Requirements:

The System will support at least500 applicant logins at its peak

The system will support at least 10 recruiter logins for concurrent resume screening and resource intensive operations. Application database(user and administrator)will hold resumes of all applicants for at least 10 years and will store more than 25,000 applicant details at its peak For the user the inventory database must be updated in real time.

Speed Requirements:

There will be minimum of 100-200 simultaneous users at peak user times

Availability and Reliability Requirements: The applicant system should be available 24/7. Scheduled maintenance shall not exceed one 6-hour period each month. The system shall have 99 percent uptime performance.

ConclusionThis project of creation of a user useful software to authorize the account using typing of a password pattern using object oriented design clearly states requirement, processing steps and method of software. Clients clearly understand the project by diagrams of system design.This object-oriented design is helpful in identifying the components of the system, analyzing and identifying patterns to determine what components are used repeatedly or share characteristics, classifying components based on similarities and differences.Further steps of creating software and coding are easier by use of system design patterns in this project.