You are on page 1of 37

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 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........................................................................................................................19
Collaboration 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.........................................................................................................34
Conclusion............................................................................................................................36

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 Request
Element
Project sponsor

Description

Examples

The person who initiates the project and Police Department, Crime
who serves as the primary point of contact department etc
for the on the business side

Business need

The business related reason for initiating


the system

Protects from illegal social


activities

Business

The business capabilities that the system


will provide

Detects suspicious mails

Business value

The benefits that the system will create for


the Organization.

Secures human life and


property

Special issues or

Issues that are relevant to the


implementation of the system and decision
made by the committee about the project

Maintaining and processing


for secured mails

requirements

constraints

4. Work plan
Task Description

Duration
4

Dependency

I. Business Modeling
a. Inception
1. Understand current business situation
2. Uncover business process problems
3. Identify potential projects
b. Elaboration
1. Develop vision document
2. identify business case
c. Construction
1. construct business case
d. Transition
1. review business case
e. Production
1. finalize business case
2. finalize vision document
II. Requirements
a. Inception
1. Identify appropriate requirements analysis
technique
2. Identify appropriate requirements gathering
techniques
3. Identify functional and nonfunctional
requirements
4. Analyze current systems
5. Create requirements definition
A. Determine requirements to track
B. Compile requirements as they are
elicited
C. Review requirements with sponsor
b. Elaboration
1. Review functional requirements
2. review nonfunctional requirements
c. Construction
1. create requirements definition
d. Transition
1. review requirements definition with project
sponsor
e. Production
1. Create final requirements definition
III. Analysis

.5 day
.5 day
.5 day

1.a.1
1.a.2

.5 day
.5 day

1.a.3
1.b.1

.5 day

1.b.2

.5 day

1.c.1

.5 day
.5 day

1.d.1
1.e.1

.5 day
.5 day
.5 day

II.a.1, II.a.2

.5 day
.5 day

II.a.1, II.a.2
II.a.3, II.a.4
II.a.5.A
II.a.5.B

1 day
1 day

11.a.5
11.a.5

.5 day

11.b.1, II.b.2

.5 day

II.c.1

.5 day

II.d.1

a. Inception
1. Identify business processes
2. Identify use cases
b. Elaboration
1. map use cases with business process
c. Construction
1. construct use case diagram
d. Transition
1. review use case diagram with sponsor
e. Production
1. Create final Use case diagram
IV. Design
a. Inception
1. Identify potential classes
2. identify data access requirements
3. identify relational tables
b. Elaboration
1. review data access layer
2. review potential classes
3. identify attributes and functions
c. Construction
1. construct class diagram
2. construct DAM classes
3. Construct relational database design
d. Transition
1. Validate all design documents
e. Production
1. Create final design documents
V. Implementation
a. Inception
1. analyze story board
2. identify method specifications
b. Elaboration
1. create story board
2. create method specifications for all actions
3. create state diagrams
c. Construction
1. Construct HCI layer
2. Construct the application code
d. Transition
1. Validate the code against business
6

.5 day
.5 day

III.a.1

.5 day

III.a.2

.5 day

III.b.1

.5 day

III.c.1

.5 day

III.d.1

.5 day
.5 day
.5 day

III.e.1
IV.a.1
IV.a.2

.5 day
.5 day
.5 day

IV.a.3
IV.b.1
IV.b.2

.5 day
.5 day
.5 day

IV.b.3
IV.c.1
IV.c.2

1 day

IV.c.3

1 day

IV.d.1

1 day
1 day

IV.e.1
V.a.1

1 day
1 day
1 day

V.a.2
V.b.1
V.b.2

1 day
45 days

V.b.3
V.c.1

5 days

V.c.2

requirements
e. Production
1. Finalize application code

2 days

V.d.1

1 day

V.e.1

1 day

VI.a.1

1 day

VI.b.1

1 day

VI.c.1

1 day

VI.d.1

1 day

IV.e.1

1 day

VII.a.1

5 days

VII.b.1

1 day

VII.c.1

1 day

VII.e.1

1 day

VII.e.1

1 day

VIII.a.1

1 day
.5 ay
.5 day

VIII.a.2
VIII.b.1
VIII.b.2

.5 day
.5 day
.5 day

VIII.b.3
VIII.c.1
VIII.c.2

.5 day

VIII.c.3

VI. Test
a. Inception
1. analyze testing approach
b. Elaboration
1. create test plans
c. Construction
1.prepare test scripts
d. Transition
1. Review test scripts with business users
e. Production
1. Implement test plan
VII. Deployment
a. Inception
1. identify deployment requirements
b. Elaboration
1. create deployment model
c. Construction
1. Build infrastructure
d. Transition
1. Deploy applications
e. Production
1. Build deployment documents
VIII. Configuration and change management
a. Inception
1. Identify necessary access controls for
developed artifacts
2. Identify version control mechanisms for
developed artifacts
b. Elaboration
1.Prepareconfigurationcontroldocuments
2. Prepare change management policy
3.Identify change approval policy
c. Construction
1. Create change management policy
2. Create configuration control policy
3. Create Configuration Management DB
d. Transition
1. Transition change management policies to
Operations team
7

e. Production
1. Validate change management procedures
IX. Project management
a. Inception
1. Create work plan for the inception phase
2. Create system request
3. Perform feasibility analysis
A. Perform technical feasibility analysis
B. Perform economic feasibility analysis
C. Perform organizational feasibility
analysis
4. Identify project size
5. Identify staffing requirements
6. Compute cost estimate
7. Create work plan for first iteration of the
elaboration phase
8. Assess inception phase

.5 day

VIII.d.1

1 day

IX.a.2

.5 day
.5 day
.5 day
.5 day

IX.a.3
IX.a.4
IX.a.5
IX.a.1

.5 day

I.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 tool
1 day
2. Acquire and install programming environment 1 day
3. Acquire and install configuration and change 1 day
organization tools
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
8

e. Production
XII. Infrastructure Management
a. Inception
1. Identify appropriate standards and enterprise
models
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 Analysis
Feasibility 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 Feasibility

Technical 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.

10

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.

11

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.

Performance
They 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
12

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.
13

1 Registration module
a. Test data module
Authentication module
Password Verification module
Identification module
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

14

Use case descriptions:


A use case description contains all the information needed to build the structural and behavioral
Diagrams, which can be expressed below

Use case name: Access account

ID: 8622315990

Primary actor : User

Importance level: High


Use 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:


15

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
16

CRC Cards:

Front
Class name : user

ID: 8622315990

Description: User wants to access Associated use cases: 2


his/her account
Responsibilities
Should have user id
Should have password

Collaborators

Back
Attributes :
Sign up

Relationships:
Generalization: User
Other associations : Should know the user id and password

Class diagram:
17

Type: Access account

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
18

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:

19

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
20

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:
21

Figure: communication diagram

Behavioral State machine:

Figure: Behavioral Diagram


22

CRUDE MATRIX
C for create
R for read
U for update
D for delete
E for execute
User
User
Admin
Guest
Login
(Access)
logout

Admin

Guest

Login
(Access)
C,R,U,D,E
C,R,U,D,E
R

C,R,U,D,
E

R,U

APPENDIX
23

Logout

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


24

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 account
Contract ID: 5167280616
Programming Language:
o Visual Basic

Class Name: : User


ID:8622315990
account System
Programmer: mahi, prama

o Smalltalk

o C++

Triggers/Events: user access account by typing patterns


Arguments Received:
Data Type:
Order

Notes:
New costumers order

25

o Java

Messages Sent &


Arguments Passed:

Data Type:

Notes:

Class Name,
Method Name:
User id ()
User details ()

Create password()

User id of particular user


Char, integers
integers
Char, integers Type pattern of password

Argument Returned:
Notes:
Data Type:
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

26

Figure: Activity diagram.

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


27

28

Storyboard

Physical architecture layer design


29

Architecture Diagram

Deployment diagrams:
30

Version b:

31

Version: c

32

Fig4.6: Deployment diagram for Login

Hardware and software Requirements


Software Requirements

Operating System :Windows XP/2000 or Higher

Database

:Oracle 11g

Language

JAVA

Hardware Requirements

Processor

Pentium IV

RAM

512 MB

Hard disk

20 GB

33

Specification
Operating System

Standard Client

Standard Web

Standard

Application

Database

Server
Linux, java

Server
Linux,

Apache

Java

oracle, java
MySQL

2 GB Memory

16 GB Memory

24 GB Memory

32 GB

250 GB Disk

1 TB Disk Drive

2-600 GB Disk

Memory 4-

Drive

600 GB Hot

Windows XP/7

Server
Linux, java

Standard

Internet Explorer
Special Software
Hardware

Drive

plug Disk
Drives

Intel Core i3

Network

Intel Xenon

Intel Xenon

Intel Xenon

X3470

X5620

X5620

18.5 inch HD

18.5-inch HD

18.5-inch

18.5-inch

Monitor

monitor

HD monitor

HD monitor

10 mbps

100 Mbps

100 Mbps

100 Mbps

Ethernet

Ethernet

Ethernet

Ethernet

High-speed
wireless

34

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.

35

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 time

Capacity 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.

36

Conclusion
This 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.

37

You might also like