Sei sulla pagina 1di 113

By Neha Deshwal

A
PROJECT REPORT ON

Employment Performance &Recognition Portal

Submitted in partial fulfillment of the


requirements for the award of the degree of

Master of Computer Science & Applications

Submitted by:
Under the Supervision of:
NAME – Dr Ashok Kumar Neha Deshwal
Assistant Professor MCA 6th Semester
Department of Computer Science & Applications, Roll No: ---------
Maharshi Dayanand University, (Registration No.: ------)
Govt. College Sector-9
Gurugram

Department of Computer Science & Applications


Maharshi Dayanand University
Govt. College Sector-9
Gurugram

1
CANDIDATE’S DECLARATION

I, “Neha Deshwal”, hereby declare that the work presented in the project
report entitled “Employment Performance Recognition Portal”
submitted to Department of Computer Science & Applications, Maharishi
Dayanand Govt. College Sector-9 Gurugramfor the partial fulfillment of the
award of degree of “Master of Computer Applications” is an authentic
record of my work carried out during the final semester, 20XX at Company
Name, under the supervision of Mr. X (External Guide Information) and
Internal Guide Mr.Sanjay , Department of Computer Science & Applications
Maharishi Dayanand Govt. College Sector-9 Gurugram
The matter embodied in this project report has not been submitted
elsewhere by anybody for the award of any other degree.

Neha Deshwal
(MCA 6th semester)
Univ.Roll No-

2
COMPANY CERTIFICATE

3
Maharishi Dayanand University
Govt. College Sector-9
Gurugram

CERTIFICATE

This is to certify that the project titled "Employment Performance


Recognition Portal" is a bonafide work carried out by Mr./Ms. X, Roll
No. XXX in the partial fulfillment of the requirement for the award of the
degree of Master of Computer Applications from Maharishi Dayanand
University Maharishi Dayanand
UniversityGovt. College Sector-9 Gurugram, under the supervision of

NAME
Assistant Professor
Department of Computer Science & Application

4
ACKNOWLEDGEMENT

I would like to thank people who were part of this work in numerous
ways. In particular, I wish to thank Mr./Ms. X (External Guide Information),
my project guides for their suggestions and improvements in this project
and providing continuous guidance at each and every stage of the project.
Thanks are extended especially to my guide
______________(Assistant Professor, Department of Computer
Science & Applications, Maharshi Dayanand University Govt. College
Sector-9 Gurugram) I must also be thankful to my classmates and friends
for their continuous co-operations and help in completing this project.
Last but not the least, I want to express my thanks to my parents
and family members for their support at every step of life.

Student Name
Univ.Roll No

5
Sr.NoContentsPage No.
1. Abstract 8

1.1. Contents
1.2. Introduction
1.3. Vision
1.4. Scope
1.5. Definition, Acronyms, Abbreviations
1.6. Overview

2. System Analysis 10
1.7. Existing System
1.8. Limitations in Existing System
1.9. Proposed System
1.10. Advantages over Existing System
1.11. Feasibility Study
1.12. Economic Feasibility
1.13. Operational Feasibility
1.14. Technical Feasibility

3. Requirement Analysis in this Project14


1.15. Software Requirements
1.16. Hardware Requirements

4. System Design 20
1.17. Architecture Diagram
1.18. Authentication
1.19. Functional Description
1.20. Functions
1.21.
5. Screen- Shots 60
1.22. UML Diagrams
1.23. Class Diagram
1.24. Use-case Diagram

6
1.25. Sequence Diagram
1.26. Component Diagram
1.27. Deployment Diagram
6. Bibliography 111

Employee
Performance &
Recognition Portal
7
1.Abstract
Employee Performance and Recognition Portal is online Performance Appraisal
and Recognition system used by all the employees in different sections of the company.
Salary hike and promotion depends upon the employee performance. This portal is a
one stop shop for all the employees to provide details like tasks performed and
performance measures improved etc to their superiors. It allows superiors to evaluate
and analyze the employee’s performance and work done by him and target achieved in
a given period of time and to rate him. It provides a very good interface between
superiors and subordinates. Based on these ratings and overall performance shown by
employees ranks will be allotted to them among the group of employees with same
designation. This rank is called consolidated rank. This is the basic criteria for
recognizing employee’s performance and to provide salary hike/promotion to any
employee.

This application maintains the entire data in a centralized and secured database server
to maintain consistency in report generation and allows users to access from any
location. This is an online application that allows multi user access of system and to
track or manage the data simultaneously. Various roles and authentications have been
provided and access to various areas in the tool is restricted according to the role given
to users.

The aim of this application is to reduce the manual effort needed to manage the details
of tasks and performance measures of each and every employee which is very tedious.
And maintaining historical data used by HR team in generating consolidated data is not
possible. This portal helps them in generating consolidated rank or required reports with
a single click. Also this application provides an interface to management and other users
to manage the details of and to generate required reports. This helps to prevent
unnecessary delays and human errors. This system helps in generating foolproof reports
with in not time by users which is very difficult in current system (manual system).

8
This system design is modularized into various categories. This system has
enriched UI so that a novice user did not feel any operational difficulties. This system
mainly concentrated in designing various reports requested by the users as well as
higher with export to excel options.

Features
● 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
● Professional look and feel
● Browser testing and support for IE
● Website is highly customizable and flexible enough to easily deploy without
much effort
● Secured data driven role based access

Project Scope:This intranet application has been developed to be implemented in


place of existing manual system. This application provides effective appraisal system
for the employees by evaluating their performances and retains the present functionality
available in the current system. The specific purpose of this system is to store and
process information about different tasks, weightage, self ratings and final rating at

9
different stages and generates the reports as and when required. The administrator is
responsible for maintenance of this system. Based on the Type of user category of the
user i.e. administrator, appraisee, appraiser, reviewer the various parts of the system are
made available.

Problem Statement

Problem statement is one of the basic and important phases of project development.
When the basic problem is determined, it is documented and the symptomatic problem
is analyzed, then the current list of basic problem is completed. A system is simply a
set of components that interact to accomplish some purpose.

In “DCKMS” maintaining the details of different types of tasks, their status,


details of tasks, their self rating, login details of the different types of users (Appraisee,
Appraiser, Reviewer, and Admin), personal details of the employees. Final evaluation
details, employee average rating and consolidated rank details are to be kept in a
database and also can be retrieved easily when the authorized user wants to get or
update the data.
Actually the process going on here is when the user (employee) submits his task
details then he needs to store inside an excel sheet and send it to his appraiser manually
and if appraiser wants to send evaluated rating details to the employee then he needs do
the same thing. Evaluating each and employee task details, calculating average rating
of all the employees yearly for two times and finally generating consolidated tanks
based on some criteria at different levels leads to human errors in the current system.

2.System Analysis:
System Analysis is first stage according to System Development Life Cycle
model. This System Analysis is a process that starts with the analyst.

Analysis is a detailed study of the various operations performed by a system and


their relationships within and outside of the system. One aspect of analysis is defining
the boundaries of the system and determining whether or not a candidate system should
consider other related systems. During analysis, data are collected on the available
files, decision points, and transactions handled by the present system.

10
Logical system models and tools that are used in analysis. Training, experience,
and common sense are required for collection of the information needed to do the
analysis.

Existing System:
Here the existing system is nothing but a manual system in which the employees has
to fill their rating details in an excel sheet and send it to their supervisor then the
supervisor has to merge all the employee rating details and arrange them in to a single
sheet. Calculating the average rating of the employees by considering the no of tasks
they have done and their weightage into consideration and finally generating a rank is
a tedious process in this system.

Drawbacks:

⮚ Difficulty in maintaining employee individual rating information in an excel


sheet.
⮚ More manual hours need to calculate average based on different constraints
and generating
⮚ Difficulty in maintaining role based security.
⮚ Difficulty in co-relating different ratings.
⮚ Doesn’t provide effective communication between different levels of
employees.
⮚ Doesn’t provide security.
⮚ Difficulty in generating the reports
⮚ Difficulty in generating different reports

One way to overcome all these difficulties is so store all the information in the
computer. The computerization helps the users a lot.

Proposed System:The Employee Performance and Recognition Portal is to

replace the existing manual system with a software solution. It allows all the employees
in different sections of the company to post rating details individually which will be
forwarded to their appraiser. It allows the appraiser to re-rate the employee individual

11
task ratings which takes into consideration and calculates average rating of the all
employees based on no of tasks they have done, their ratings and weightage. Based on
these average ratings this system will generate consolidated ranks for the employee
automatically with any errors.

⮚ Faster processing when compared to existing one


⮚ Centralized database helps in avoiding conflicts
⮚ Easy to use GUI that does not requires specific training
⮚ Provides facility for the employees (appraise) to post their rating details which
will be forwarded to their appraiser effectively
⮚ Allows the appraiser to re-rate the employee ratings
⮚ It helps in calculating the average rating of the employees and generates
consolidated ranks.
⮚ Helps in generating different reports within no time.

Requirements Analysis

The requirement phase basically consists of three activities:


1. Requirement Analysis
2. Requirement Specification
3. Requirement Validation

Requirement Analysis:

Requirement Analysis is a software engineering task that bridges the gap


between system level software allocation and software design. It provides the system
engineer to specify software function and performance indicate software’s interface
with the other system elements and establish constraints that software must meet.

The basic aim of this stage is to obtain a clear picture of the needs and
requirements of the end-user and also the organization. Analysis involves interaction
between the clients and the analysis. Usually analysts research a problem by asking

12
questions and reading existing documents. The analysts have to uncover the real needs
of the user even if they don’t know them clearly. During analysis it is essential that a
complete and consistent set of specifications emerge for the system. Here it is essential
to resolve the contradictions that could emerge from information got from various
parties. This is essential to ensure that the final specifications are consistent.

It may be divided into 5 areas of effort.

4. Problem recognition
5. Evaluation and synthesis
6. Modeling
7. Specification
8. Review

Each Requirement analysis method has a unique point of view. However all analysis
methods are related by a set of operational principles. They are

● The information domain of the problem must be represented and


understood.

● The functions that the software is to perform must be defined.



● The behavior of the software as a consequence of external events must
be defined.

● The models that depict information function and behavior must be
partitioned in a hierarchical or layered fashion.

● The analysis process must move from essential information to


implementation detail.

3.Requirement Analysis in this Project

13
The main aim in this stage is to assess what kind of a system would be
suitable for a problem and how to build it. The requirements of this system can
be defined by going through the existing system and its problems. They
discussing (speak) about the new system to be built and their expectations from
it. The steps involved would be

Problem Recognition:
The main problem here is the more time is taken to manage the different
task of all the employee and forwarding them appropriate appraisers and finally
evaluate them manually. This has to be eliminated. A comprehensive solution
has to be developed which will facilitate to fulfill the requirements faster and
more efficient way.

Evaluation and Synthesis:


The system has to be designed only after complete evaluation of the
existing one, upon which we can see that a lot depends on the medium of
communication. The proposed system is used to maintain all the employee task
details in the database appraiser wise, to avail them to all the appraisers. So this
has to be used such that there is no waste of time.

Specification:
The specifications from the user, here maintaining all documents of the
employees manually lead to unnecessary submissions. The appearance of
forms, and their field names, the different screens he desired, the stages
of this database etc., were all given. The system has been built following all the
specifications.

Requirements Specification

Introduction

According to Roger Pressman in Software Engineering: A Practitioner's Approach


(McGraw-Hill Publications) [SEPA–1997], the requirement specification document is
produced at the end of Analysis of the system. This document is a very comprehensive

14
document & contains all the User requirements & Analysis diagrams. The
Requirements are broadly divided into two groups:
1. Functional requirements
2. Non-functional requirements

Functional Requirements Specification


Hierarchy of Users

The hierarchy of the system is maintained by the privileges to access the system. There
are three types of users.

Appraise:Every employee is an appraisee and submits his appraisal to his manager


with tasks and performance measures for evaluation. Appraisee can give self rating. He
can submit the rating. Appraisee can send the request for re-rating. He can generate all
the reports.

Appraiser: Appraiser is appraisee’s reporting manager. Main function is to evaluate


appraisal and rate appraisee’s performance. He also can give rating initiation. He can
generate consolidate rank. He can verify the reviewer’s request.

Reviewer: Reviewer is appraiser’s reporting manager to view the appraisal.


Reviewer can verify the appraisee request. He can view the appraiser contacts. He can
generate all the reports.

Product Scope and Functional Specifications


Scope:
The functional scope of Employee Performance & Recognition Portal is to provide a
user-friendly management system for resources as well as to give a tracking of
employee appraisals, which tracks the employees performance and appraisals. .

The following functional activities are considered for executing the project.

15
Every employee (appraisee) can submit their appraisal to his
manager (appraiser).
Every appraisee can prove their performance based on the tasks
those they are completed successfully.
Appraiser’s work is to evaluate appraisals and rate them.
Appraiser can generate the average rating and consolidated rank.
Reviewer can view the appraisee request and if they need, he can
give the permission to re-rate their self.

Reports should be generated on the current status and every report will be accountable
by the employees of the company.

● No of Employee – This report can show the total employees of


the company.
● Appraisal calculation – This report can show all the employees
appraisal calculations.

Database: The Employee Performance & Recognition Portal application has the
JDBC- connectivity, which is provided to interface with MySQL 5.0 database. The
MySQL 5.0 is chosen for this project because of higher security level and web
compatibility features offered by it and it is open source.

Non-Functional Requirements:
1) Documentation:
User is provided a manual in the system. This will guide user or the
operator in driving the system in a perfect manner. There is no need to specify the
technical documentation for the user.
2) Hardware Considerations:
If the software is to be executed on existing hardware or on
predetermined software, all the characteristics of the hardware, including memory
restrictions should be specified. In addition, the current use and load the characteristics
of the hardware should be given:

Configuration Required Recommended

16
Main Memory 256 MB 512 MB
Microprocessor PentiumIV PentiumIV
Hard disk Drive 40 GB 80 GB
Printer Any Printer Any Printer
The system should be consisted with the hardware such that any up
gradations made to the current system should support.

3) User Interface and Human Factors:


The user interface used is a graphical user interface (GUI). When the
user clicks buttons, select the checkbox item, uses the mouse or perform any relate
action, an interface event occurs.
A little training for the user to the system is needed. A preliminary user
manual with all user commands, screen formats. An explanation is giving how to
feedback and error messages.
4) Modifiability:
The system is consisting with future modifications. In future,
if
any changes to the system are required they can be done easily without
changing the overall.
5) Security Issues:
The system should be protected against security threats. The
Organization has the responsibility to restrict the threats such as external instructions,
malicious users. The company should deploy instruction detection technique. Security
to the system is provided with login and password.
6) Resource Issues:
Developers should be take concern about resource utilization
issues the resources must be used in reasonable and efficient manner.
Insufficient use of the resources request in the increase of cost of
automation of project over manual system.

Software and hardware requirements


Development Environment

17
● Operating System: Windows 2000/XP
The system will be built on windows compatible environment. The
application will be web based using Java technology

● Web Server:
Apache Tomcat Web Server to serve as Servlet\JSP engine. The
system requires Apache Tomcat Web Server
● Server side Application Software: Java Server Pages (JSP)
● Client Side Application Software:Java Script, HTML

● Data Base: MySQL 5.0


The system requires MySQL as a database, however the system will be
JDBC complaint to work on any standard database.

● Client Browsers:
Internet Explorer 6.0 or Netscape Navigator 4.7
● Java Software : Jdk1.5.0
● Hardware: Pentium PCs with 256 MB RAM/ 80 GB HDD.

Feasibility Study
All projects are feasible given unlimited resources and infinite time.
But the development of software is plagued by the scarcity of
resources and difficult delivery rates. It is both necessary and

18
prudent to evaluate the feasibility of a project at the earliest possible
time.

Three key considerations are involved in the feasibility analysis.

Economic Feasibility:

This procedure is to determine the benefits and savings that are expected from a
candidate system and compare them with costs. If benefits outweigh costs, then the
decision is made to design and implement the system. Otherwise, further justification
or alterations in proposed system will have to be made if it is to have a chance of being
approved. This is an ongoing effort that improves in accuracy at each phase of the
system life cycle.

Technical Feasibility:

Technical feasibility centers on the existing computer system (hardware,


software, etc.,) and to what extent it can support the proposed addition.
If the budget is a serious constraint, then the project is judged not
feasible.

Operational Feasibility:

People are inherently resistant to change, and computers have been


known to facilitate change. It is understandable that the introduction of
a candidate system requires special effort to educate, sell, and train the
staff on new ways of conducting business.

Feasibility Study in This Project

Technical Feasibility

This project, Employee Performance and Recognition Portal


needs the support to average technology already being implemented
for other useful systems in a company. It requires PC’s and a modem

19
with normal configuration for Internet access. Almost all
administrators have their own PC on their desk. Thus it is technically
feasible to implement the new system here.

Economic Feasibility

“Employee Performance and Recognition Portal” is a mid-scale


project. It is very much useful to employees as well as admin people
in reducing manual work which increases the productivity of the
company. The infrastructure for the development of their new
system is available in the company. The system is developed at no
additional cost. Hence it is economically feasible for the new system
to be implemented.

Operational Feasibility

This system is being automated on the request of the


employees of a company and the management people. This new
system meets their requirement and covers all aspects required
much better than the old manual system. Most of the people involved
in this company are computer literates and do not need much training
if this system is implemented. Hence it is operationally feasible.

4.System Design
The most creative and challenging phase of the life cycle is system design. The
term design describes a final system and the process by which it is developed. It refers
to the technical specifications that will be applied in implementations the candidate
system. The design may be defined as “the process of applying various techniques and
principles for the purpose of defining a device, a process or a system in sufficient details
to permit its physical realization”.

20
The designer’s goal is how the output is to be produced and in what format
samples of the output and input are also presented. Second input data and database files
have to be designed to meet the requirements of the proposed output. The processing
phases are handled through the program Construction and Testing. Finally, details
related to justification of the system and an estimate of the impact of the candidate
system on the user and the organization are documented and evaluated by management
as a step toward implementation.

The importance of software design can be stated in a single word “Quality”.


Design provides us with representations of software that can be assessed for quality.
Design is the only way that we can accurately translate a customer’s requirements into
a finished software product or system without design we risk building an unstable
system, that might fail it small changes are made or may be difficult to test, or one
who’s quality can’t be tested. So it is an essential phase in the development of a
software product.

SYSTEM DESIGN phase follows system analysis phase. Design is


maintaining record proof design divisions and providing a blueprint for the
implementation phase. Design is the bridge between system analysis and
system implementation.

System design is transition from a user oriented, document oriented to


programmers or database personnel. The design is a solution, a “how to”
approach to the creation a new system. This is composed of several steps.
It provides the understanding and procedural details necessary for
implementing the system recommended in the feasibility study. Design
goes through logical and physical stages of development, logical design
reviews the present physical system, prepare input and output
specifications, detail the implementation plan, and prepare a logical design
walkthrough.

The database tables are designed by analyzing various functions involved in


the system and the format of the fields is also designed. The fields in the

21
database table should define their role in the system. The unnecessary
fields should be avoided because it affects the storage areas of the system.
Care is to be taken to encode the lengthy names. Then in the input and the
output screen design, the design should be made user friendly. The menu
should be precise and compact.

Objectives of Design
System design is like a blue print for a building, it specifies all the features
that are to be in the finished product. Design states how to accomplish
objectives determined in the analysis phase.

Logical Design:

The design of an information system produces the details that state how a
system will meet the requirements identified during systems analysis. This
stage is login design.

(a) Module Description:

We have identified the following modules:

Admin Module: This module provides interface to administrator to manage


(add /delete / edit) the employees and view the list of currently available
employees. It allows admin to create logins for different employees and
assign different roles while creation. It allows the administrator to create,
delete and view the projects. It provides a facility to store the any report
information excel sheet. It allows in generating consolidated ranks for the
employees. It allows to view already generated ranks. It allows the
administrator to change his for enhanced security in future.

Appraisee:This module treats every employee as an appraisee and allows


them to submits appraisals to his manager which contains task details like

22
Task ID, Task Desc, Task Status, Weightage of the task, self rating for the
all the task he has done with in this half-yearly period. He can view the
appraisals what he has submitted. He can view the rating given by the
appraiser for the task in his appraisals. If he satisfies with the ratings then
he can confirm so that average rating of his employee will be calculated
based no of tasks in his appraisal, weightage of the tasks and their
evaluated ratings. If he is not satisfied then he can send a request to the
reviewer to make him ask the appraiser to review his appraisal again.

Appraiser:Appraiser is nothing but Appraisee’s reporting manager. Main


function is to evaluate appraisal and rate appraisee’s performance. He can
evaluate the rating given by the appraisee and he can give the consolidate
rank to the appraisee. After that, he can submit it to the reviewer. He can
view the reviewers requests forwarded from reviewers and re-rate the
appropriate employee appraisal. He can view reports like My Projects, View
CR, print appraisal and viewMyCRank.

Reviewer:Reviewer is nothing but Appraiser’s reporting manager to review


the appraisal. He can view the review requests from different appraisees
and forward those requests to appraisers. He can collect the report from
the appraiser’s based on that report he can give the rating to the employee.
He can view reports like MyProjects, View CR, Print appraisal and view
MyCRank.

23
UML Diagrams:

Use Case Diagram for Admin:

User Management

Project Management

Generate CR

Admin
24
Use Case Diagram for the following Users:

Tasks

Performance
Measures

Feedback

Print Appraisal
Appraisee Report

Generate CR

Settings

View Appraisals
25

Evaluate
Appraiser

Reviewer

Class Diagram:

Re-Rating Request Users Consolidated


Ranks
Add ()
∝ Update () 1
Send () 1 Delete () 1 Generate ()
View () View ()
Login ()

1 1
1

∝ ∝
Task Details Rating Evaluation Requests
Initiation

Start () Evaluate () View ()


View () Update () Forward ()

26
Rating Submission
1

Sequence Diagram for Administrator:

Employee Update Update Projects Update Generate


Login Mgt Employee User Mgt User Mgt Projects CR

Manage ()

Update ()

Manage ()

Update ()

Manage ()

Update ()

27
Generate ()

Sequence Diagram for Appraisee:

Performa
Current Past nce
Login Settings Tasks Appraisal Appraisal Feedback Reports
Measures

Set ()

manage ()

Update ()

Update ()

Update ()

Post ()

28
Generate ()

Sequence Diagram for Appraiser:

View Evaluate Rejected


Login Settings Appraisals Appraisals Appraisals Reports

Set ()

Get ()

Evaluate ()

View ()

Generate ()

29
Sequence Diagram for Reviewer:

View
Forward
Appraisal
Login Requests Settings Reports
Requests

View ()

Forward ()

Set ()

Generate ()

30
EmployeePerformance Portal Activity Diagram:

Self Rating
Initiation

Self Rating Rating


Submission Evaluation

Re-Rating
Request

View Appraisee
Request

Appraiser
Contacts Mgt

View Re-Rating
Request

Re-Rating
Evaluation

Average Rating

31

Consolidated
Rank
Physical Design

The process of developing program software is referred to as physical


design. In this stage the logical design elements are specified which support
the business activities. The physical design ensures the system features to
meet the user requirements.

(a) Physical Architecture Model

(b) Layered Architecture

32
Database Layer Contains the data and database-related
objects like stored procedures, triggers,
packages, etc.
Application Layer Contains the objects addressing the
business logic; Most of the middle-level Java
objects will be here in application layer.
Web Interface Layer It will be on the web server; It contains the
web pages (JSPs) of the application which
will interact with the front-end browsers
Client Layer Contains the web browser which interacts
with web server

(c) Database Dictionary:

The logical characteristics of current systems data stores, including name,


description, aliases, contents, and organization. Identifies processes where
the data are used and where immediate access to information needed.
Serves as the basis for identifying database requirements during system
design.

33
Uses of Data Dictionary:

● To manage the detail in large systems

● To communicate a common meaning for all system elements

● To Document the features of the system

● To facilitate analysis of the details in order to evaluate characteristics


and determine where system changes should be made.

● To locate errors and omissions in the systems

1. TABLE NAME: APPRAISALDETAILS

Field Name Data Type Size PRIMARYKEY


APRRAISALID VARCHAR 11 PRIMARY
EMPNO INT 25
STARTDATE DATE
ENDDATE DATE
APPRAISALPERIOD VARCHAR 30
STATUS VARCHAR 30

2. TABLE NAME: CRANKDETAILS

Field Name Data Type Size Primary


key
CRID VARCHAR 25 PRIMARY

EMPNO INT 35

APPRAISALPERIOD VARCHAR 24

OVERALLRATINGS CHAR 20

OVERALLPERFORMANC CHAR 20
E

34
CONSOLIDATERANK INT 3
APPRAISALID VARCHAR 31 PRIMARY

3. TABLE NAME: FEEDBACK

Field Name Data Type Size

APPRAISALID VARCHAR 50
APPRAISERFEEDBACK TEXT

REVIEWERCOMMENT TEXT
S

4. TABLE NAME: LOGIN

Field Name Data Type Size

USER ID VARCHAR 25
PASSWORD VARCHAR 25

AUTH VARCHAR 10

5. TABLE NAME: MASTERDATA

Field Name Data Type Size

SNO INT 11
EMPNO INT 10

NAME VARCHAR 100

EMAILID VARCHAR 100

PROJECTCODE VARCHAR 100

CLIENTNAME VARCHAR 100

35
APPRASERMAILID VARCHAR 100

STARTDATE DATE

ENDDATE DATE

CURRENTLOCATIO VARCHAR 100


N
BASE LOCATION VARCHAR 100

JOININGDATE DATE

ROLE VARCHAR 100

DESIGNATION VARCHAR 100

6. TABLE NAME: MENU_BASE

Field Name Data Type Size

MENU_ID INT 11
LABEL VARCHAR 100

DESCRIPTION VARCHAR 255

7. TABLE NAME: MENU_FRAME_EXECUTABLE_MAPPING

Field Name Data Type Size

SNO INT 11
MENURELATIONSHIPI INT 11
D
TARGETFRAME VARCHAR 100

EXECUTABLE VARCHAR 255

8. TABLE NAME: MENU_ROLE_RELATIONSHIP

36
Field Name Data Type Size

MENURELATIONSHIPI INT 11
D
ROEL VARCHAR 20

DESCRIPTION VARCHAR 255

9. TABLE NAME: MENUITEM_RELATIONSHIP

Field Name Data Type Size

MENURELATIONSHIPID INT 11
PARENTMENUID INT 11

CHILDMENUID INT 11

RELATIONSHIPDESCRIPTIO VARCHAR 255


N
MENULEVEL1 INT 11

10. TABLE NAME: PERFORMANCEDETAILS

Field Name Data Type Size

APPRAISALID VARCHAR 100


PERFORMANCEID VARCHAR 100

PERFORMANCEMEASUR VARCHAR 100


E
WEIGHTAGE INT 3

APPRAISERRATING CHAR 5

APPRAISERCOMMENTS TEXT

TARGET INT 3

PERCENTACHIEVED INT 3

37
11. TABLE NAME: PROJECTHISTORY

Field Name Data Type Size

SNO INT 11
EMPNO INT 10

EMAILID VARCHAR 100

PROJECTCODE VARCHAR 100

CLIENTNAME VARCHAR 100

ALLOCATEDFROM DATE

ALLOCATEDTO DATE

ROLE VARCHAR 100

REPORTINGMANAGERMAILI VARCHAR 100


D

12. TABLE NAME: REVIEWERCOMMENTS

Field Name Data Type Size

APPRAISALID VARCHAR 100


REVIEWERCOMMENT TEXT
S

13. TABLE NAME: TASKDETAILS

Field Name Data Type Size

APPRAISALID VARCHAR 100


TASKID VARCHAR 10

TASKDETAILS VARCHAR 255

DURATION VARCHAR 50

STATUS VARCHAR 50

38
SELFRATING CHAR 5

APPRAISERRATIN CHAR 5
G
WEIGHTAGE INT 5

COMMENTS TEXT

39
E-R Diagram:

Project History
Reviewer
comments

Login
Involves

Posts Master Data


Maintains

Posts

Feedback

Appraisal Has
Details
Gets

Contains

Performance
CRankDetails Details

Task Details

Input Design:

40
Input design includes data mediums used for inputting data and validations
that are to be done during data entry. Different messages regarding data
are given to guide users during data entry. Validation checks are done
for each input.

Data entry screens are designed so that the system interacts with the user
in providing an effective dialogue. Fields in the screen are logically
arranged to help the user.

The design is the process of converting the user-originated inputs into a


compute-based format. The goal of the input design is to make the data
entry easier, logical and free from error. Errors in the input data are
controlled by input design.

The application has been developed in a user-friendly manner. The


windows have been designed in such a way that during the processing
the cursor is placed in the position where the data must be entered. If
any of the data going into the system is wrong then the process and
output will magnify these errors.

The decisions made during design of input are:

1) To achieve the highest possible level of accuracy.

2) To provide a list of possible choices and help while accepting


the input for an important field wherever possible outputs
from computer system are required primarily to communicate
the results of processing to the users. They are also used to
provide a permanent copy of these results for later
consultation/verification.

Output Design

Output refers to the results and information that are generated by the
system. Output is the main reason for developing the system and based
on this, the usefulness and applicability of system are evaluated.

41
Outputs from computer systems are required primarily to communicate the
results of processing to users. Efficiently designed outputs enhance the
understandability of the information.

According to the requirements of the system, various types of outputs are


considered and designed as follows.

Internal outputs, whose destination is within the organization and which


require careful design because they are the user’s main interface with
the computer.

Interactive outputs, in which the user communication with the Computer is


essential.

Introduction to HTML:
The hypertext markup language (HTML) is a simple markup language.
Used to create a hypertext documents that are portable from one platform
to another HTML documents are SGML (Standard generalized mark up
language) documents with generic semantics that are appropriate for
representing information from a wide range of applications. This
specification defines HTML version 3.2.HTML 3.2 aims to capture
recommended practice as of early ’96 and as such a replacement for
HTML2.0 (RFC 1866).

A set of instructions embedded in a document is called mark up language.


These instructions describe what the document text means and hoe it
should look like in a display. Hyper Text Mark Up language (HTML) is the
language used to encode World Wide Web documents.

WHY TO USE HTML

42
Website is a collection of pages, publications, and documents that
reside on web server. While these pages publications and a document as a
formatted in a single format, you should use HTML for home page and all
primary pages and the site. This will enable the millions of web users can
easily access and to take advantage of your website.

HTML is considered first for formatting any new material you plan to
publish on the web. HTML documents are platform independent, meaning
that they don’t confirm to any standard. If they are created properly you
can move home page to any server platform or you can access them with
any complaint www browser.

STRUCTURE OF HTML

HTML elements perform a defined task. HTML uses two types of elements
. Empty Tags
. Container Tags
Empty (or open) tags and container tags. These tags differ because
of what they represent. Empty tags represent formatting constricts such as
line breaks and horizontal rules. Container tags define a section of text and
specify the formatting the containers dot all of the selected text. A container
tag has both a beginning and an ending.

HTML LAYOUT:
An HTML document consists of text, which comprises the
content of the document and tags, which, defines the structure, and
appearance of the document. The structure of an HTML document is simple,
consists of outer.
<HTML>tag enclosing the document header and body
<HTML>
<HEAD>
<TITLE>the title of HTML document</TITLE>

43
</HEAD>
<BODY>
This is where the actual HTML documents
Text lies, which is displayed in the browser
</BODY>
</HTML>

Each document has a head and body delimited by the <HEAD> and
<BODY> tag. The head is where you give your HTML document a title and
where you indicate other parameters the browser may use when displaying
the document. This includes the text for displaying the text. Tag also
references special and indicates the hot spots that link your document to
other documents.

HTML FORMS:

Create a form usually involves two independent steps: create the layout for
the form itself and then writing a script program on the server side to
process the formation you get back from a form.

To create a form. You use the <FORM> tag. Inside the opening and
closing FORM tags are each of the individual form elements plus any other
HTML content to create a layout for that form.

The opening tag of the FORM element usually includes the attributes:
METHOD and ACTION. The METHOD attributes can be either GET or POST
which determines how your form data is sent to the script to process it.

The ACTION attribute is a pointer to the script that processes the form
on the server side. The ACTION can be included by a relative path or by a
full URL to a script on your server or somewhere else. For example, the
following <FORM> tag would call a script called form-name in cgi-bin
directory on server www.myservser.com

<FORM Method= post action=http://www.mytservser.com/cgi-bin/form-


name.pl>
……………….
</FORM>

44
METHOD ATTRIBUTE:

The other required attribute for the <form> tag sets the methods by which
the browser form’s data to the server for processing. There are two ways:
the POST method and GET method. With POST method, the browser sends
the data in two steps: the browser first contacts the form-processing server
specified in the action attributes, and once contact is made, sends the data
to the in to a separate transmission.

The GET method in the other hand, contacts the form processing
server and sends the form data in a single transaction step: the browser
appends the data to the form’s action URL, separated by the question mark
(?) character.

INTRODUCTION TO JAVA

CREATION OF JAVA

Java was conceived by James Gosling, Patrick Naughton, Chris Warth, Ed


Frank and Mike Sheridan at SUN Microsystems Incorporation in the year
1991.It took 18 months to develop the 1st working version. This language
was initially called “OAK”, but was renamed “JAVA” in 1995, many more
contributed to the design and evolution of the language.

JAVA OVERVIEW

Java is a powerful but lean object-oriented programming language.


It has generated a lot of excitement because it makes it possible to program
for Internet by creating Applets. Programs that can be embedded in web
page. The context of an applet can be an animation with sound, an
interactive game or a ticker tape. With constantly updated stock prices.
Applets can be just little decorations to liven up web page, or they can be
serious applications like Word processor or Spreadsheet.

But Java is more than a programming language for writing Applets.


It is being used more and more for writing standalone applications as well.

45
It is becoming so popular that many people believe it will become standard
language for both general purpose and Internet programming.

There are many buzzwords associated with Java, but because of its
spectacular growth in popularity, a new buzzword has appeared ubiquitous.
Indeed, all indications are that it will soon be everywhere.

Java builds on the strength of C++. It has taken the best features of
C++ and discarded the more problematic and error prone parts. To this
lean core, it has added garbage collection (automatic memory
management), multithreading (the capacity for one program to do more
than one thing at a time), security capabilities. This result is that Java is
simple, elegant, and powerful and easy-to-use.

Java is actually a platform consisting of 3 components:


● Java Programming Language.
● Java Library of Classes and Interfaces.
● Java Virtual Machine

The following sections will say more about these components.

JAVA IS PORTABLE:

One of the biggest advantages Java offers is that it is portable. An


application written in Java will run on all the major platforms. Any computer
with a Java-based browser can run the applications or Applets written in the
Java-Programming-Language. A programmer no longer has to write one
program to run on a Macintosh, another program to run on a Windows-
machine still another to run on a UNIX-machine and so on. In other words,
with Java developers write their programs only once.

The Virtual Machine is what gives Java is cross platform capabilities.


Rather being compiled into machine language, which is different for each
OS’s and computer architecture, Java code is compiled into Byte codes.

46
With other languages, the program code is compiled into a language
that the computer can understand. The problem is that other computers
with different machine instruction set cannot understand that language.
Java code on the other hand is compiled into Byte-Code rather than a
machine language. These byte codes go to the JVM, which executes them
directly or translates them into the language that is understood by the
machine running it.

In summary, these means that with the JDBC API extending Java, a
programmer writing Java code can access all the major RDBMS on any
platform that supports the JVM.

JAVA IS OBJECT-ORIENTED:

The Java programming language is OBJECT-ORIENTED, which makes program


design focus on what you are dealing with, rather than on how your are
going to do something. This makes it more useful for programming in
sophisticated projects, because one can break the things into
understandable components. A big benefit is that these components can
then be reused.

Object-Oriented Languages use the paradigm of classes. In simplest


term, a class includes both the data and the functions to operate on data.
You can create an instance of a class, also called an object, which will have
all the data members and functionality of its class. Because of this, you can
think of a class as being like template, with each object being a specific
instance of a particular type of class.
The class paradigm allows one to encapsulate data so that specific
data values are those using the data cannot see the function
implementation. Encapsulation makes it possible to make the changes in
code without breaking other programs that use that code.
If for example, the implementation of a function is changed, the
change is invisible to any programmer who invokes that function, and does
not affect his/her program, except hopefully to improve it.

47
Java includes inheritance, or the ability to derive new classes from
existing classes. The derived class, is also called as Sub-Class, inherits all
the data in the functions of the existing class.

JAVA DEVOLPMENT EVNIRONMENT

To code, edit, debug and test the java programs, one needs to have a java
development environment. At the minimum this will consists of a java
compiler interpreter and applet viewer where applets can be tested.
Sun’s java development kit (JDK) latest version is 2.2 can be freely
downloaded from the Internet.
Java compiler is available on DOS, Win95, WIN’NT, Solaris and MAC etc.

Introduction to JavaScript

JavaScript:

JavaScript is a new scripting language for WebPages scripts written with


java script can be embedded into your HTML pages. With java script you
have very many possibilities for enhancing your HTML page with interesting
elements. For example you are able to respond to user-initiated events
quite easily. Some effects that are now possible with java script were some
time ago only possible with CGI. So you can create really sophisticated
pages with the helps of java script on the Internet.

Difference between java and Java Script

Although the names are almost the same Java is not the same as Java
Script. These are two different techniques for Internet programming. Java
is programming language. JavaScript is a scripting language as the name
implies. The difference is that we can create real programs with java. But
about real programming. So Java Script is meant to be easy to understand

48
and easy to use. JavaScript authors should not have to care too much
about programming. We could say that Java Script is rather an extension
to HTML than a separate computer language. Of course this is not the
official definition but it makes it easier to understand the difference between
java and java script.

How can Java Script scripts run?

The first browser to support java script was the Netscape Navigator
2.0 of course the higher versions do have java script as well. You might
know that java does not run on all Netscape Navigators 2.0 (or higher
versions) versions. But this is not true for java script -although there are
some problems with the different versions.
The Mac version for example seems to have many bugs. In the near
future there are going to be some other browsers, which support java script.
The Microsoft Internet explorer 3.0 is going to support java script.
JavaScript enabled browsers are going to spread soon - it is worth learning
this new technique now. You might realize that is really easy to write Java
Script scripts. We have to know is some basic techniques and some work-
around for problems you might encounter. Of course we need a basic.
Understanding HTML before reading this tutorial you can find many really
good online resources about HTML. Best you make an online search about
‘html’ at yahoo if you want to get informed about HTML. Now I want to
show some small script s so you can learn how they are implemented into
HTML-documents and to show which possibilities you have with the new
scripting language. The following is a very small script, which will only print
a text into an HTML document.

<html>
<head>
My first JavaScript
</head>
<body><br>
This is a normal HTML document
<br>

49
<script language=”JavaScript”>
Document.write (“this is a java script”)
</script><b r>
Backing HTML again
</body>
</html>

If you are using a java script enabled-browser at the moment then


you will have the possibility to see this script working. If your browser
doesn’t support Java Script then this output might be some kind of strange…

This is a normal HTML document


This is java script!
Back in HTML again.

Functions

Functions are bet declared between the <Head> tag of HTML page.
Functions are called by user-initiated events. Seems reasonable to keep
the functions between the <Head> tags. They are loaded first before a
user can do anything that might call a function. Scripts can be placed
between inside comment fields to ensure that older browser do not display
the script itself.

<html>
<head>
<script language=”JavaScript”>
function pushbutton (){
alert (“Hello!”);
}
</script>
</head>
<body>
<form>
<input type=”button” name=”Button1” value=”push me” onclick=”pushbutton
()”>
</form>
</body>
50
</html>

If we want to test this one immediately and you are using a Java Script
enabled browser then please go ahead and push the button.
This script will create a button and when you press it a window will pop
up saying “hello!”. In fact we have a lot of possibilities just by adding
functions to our scripts.
The common browsers transmit the form information by either method:
here’s the complete tag including the GET transmission method attribute
for the previous form

Example

<Form method =GET action=http://www.mycompany.com/cgi-


bin/upfdate.pl>
………
</form>

Input elements.

Use the <input> tag to define any one of a number of common form
elements including text fields multiple choice lists click able images and
submission buttons. There are many attributers for this tag only that types
and name attributes are required for each element, each type of input
element uses only a subset of the followed attributes. Additional <input>
attributes may be required based upon which type of the form element you
specify.

Submit button:

The submit button (<input type=submit>) does what its name implies,
settings in motion the form’s submission to the server from the browser.
We many have more than submit buttons will be added to the parameter
list the browser sends along to the server.

Example
< Input type =”submit”>
<Input type=”submit” value=”submit” name=”name”>

51
Reset button:

The reset button if firm <input> button is nearly self- explanatory; it lets
the user reset erase or set to some default value all elements in the form.
By default the browser displays a reset button worth the label “reset”. We
can change that by specifying a value attribute with tour own button label.

INTRODUCTION TO JDBC

JDBC (Java Database connectivity) is a front-end tool for connecting


to a server to ODBC in that respect, however JDBC can connect only java
client and it uses ODBC for the connectivity. JDBC is essentially a low-level
API since any data manipulation, storage and retrieval has to be done by
the program itself. Some tools, which provide a higher-level abstraction,
are expected shortly.

The next question that needs to be answered is why we need JDBC,


once we have ODBC on hand. We can use the same ODBC to connect the
entire database and ODBC is a proven technology.
Problem for doing this is ODBC gives a ‘c’ language API, which uses
pointers extensively. Since java does not have any pointes and is object-
oriented sun Microsystems, inventor of java developed to suit its needs.

Requirements to use JDBC:

To use JDBC you need a basic knowledge of databases and SQL.A part
from this you need the jdk1.1 (Java Development Kit1.1 available javasoft’s
website) or a version of Java since jdk1.1 and above come bundled with
JDBC software.

After that you need to have a back-end database engine for which a
JDBC driver is available. When JDBC drivers are not available JDBC-ODBC
bridge drivers are used to access the database through ODBC.Back-end is
not needed when JDBC driver is capable of storing and retrieving the data
itself, or if JDBC-ODBCBridge and the ODBC driver can be used to store and
retrieve the information.

52
DATABASE MODELS

JDBC and accessing the database through applets and JDBC.API via
an intermediate server resulted server resulted in a new type of database
model which
is different from the client-server model. Based on number of intermediate
server through the request should go it is named as single tire, two tire and
multi tire architecture

Single Tier

In a single tier the server and client are the same in the sense that a
client program that needs information (client) and the source of this type
of architecture is also possible in java, in case flat files are used to store the
data. However this is useful only in case of small applications. The
advantage with this is the simplicity and portability of the application
developed.

Server and
client

Database

Two Tier (client-server)

In two architecture the database resides in one machine the network. In


this type of architecture a database management takes control of the
database and provides access to clients in a network. This software bundle

53
is also called as the server. Software in different machines, requesting for
information are called as the clients.

Server

Client

Database
Client

Three Tier and N-Tier

In the three-tier architecture, any number servers can access the


database that resides on server. Which in turn serve clients in a network.
For example, you want to access the database using java applets, the applet
running in some other machine, can send request only to the server from
which it is down loaded. For this reason we will need to have a intermediate
server which will accept the requests from applets and them to the actual
database server. This intermediate server acts as a two-way communication
channel also. This is the information or data from the database is passed
on to the applet that is requesting it. This can be extended to make n tiers
of servers, each server carrying to specific type of request from clients,
however in practice only 3 tiers architecture is popular.

JDBC Driver Types:

The JDBC drivers that we are aware of at this time fit into one of four
categories

1. JDBC-ODBCBRIDGE PLUS ODBC DRIVER

54
The java soft bridge product provides JDBC access via ODBC drivers.
Note that ODBC binary code end in many cases database client code must
be loaded on each client machine that uses this driver. As a result, this kind
of driver is most appropriate on a corporate network where client
installations are not major problem, or for application server code written
in java in a 3-tier architecture.

2. NATIVE API PARTLY-JAVA DRIVER

This kind of driver converts JDBC calls into calls on the client API for
oracle Sybase, Informix, DB2, or other DBMS. Note that, like the bridge
driver, this style of driver requires that some binary code be loaded on each
client machine.

1. JDBC-NET ALL-JAVA DRIVER

This driver translates JDBC calls into a DBMS independent net protocol, which
is then translated, to a DBMS protocol by a server. This net server middle-ware is able
to connect its all java clients to many different databases. The Specific protocol used
depends on the vendor. In general, this most flexible JDBC alternative. It is likely that
all vendors of this solution will provide products suitable for intranet use. In order for
these products to also support Internet access, they must handle the additional
requirements for security, access through firewalls, etc that the web imposes. Several
vendors are adding JDBC drivers to their existing database middleware products.

2. NATIVE PROTOCOL ALL-JAVA DRIVER

This kind of driver converts JDBC calls into the network protocol used by
DBMS directory. This allows a direct call from the client machine to the DBMS server
that is practical solution for intranet access. Since many of these protocols are
proprietary, the database vendors themselves will be the primary source. Several
database vendors have these in progress. Eventually, we expect that driver categories 3
and 4 will be the preferred way to access databases from JDBC. Driver categories
one and two are interim solutions where direct all java drivers are not yet
available. Category 4 is in some sense the ideal; however, there are many

55
cases where category 3 may be preferable: eg: -where a thin DBMS-
independent client is desired, or if a DBMS –independent protocol is
standardized and implemented directly by many DBMS vendors.

Servlets
Servlets provides a Java-Based solution used to address the
problems currently associated with doing server side programming,
including inextensible scripting solutions, platform specific APIs, and
incomplete interfaces. Servlets are objects conform to a specific interface
that can be plugged into a Java-based server. Servlets are to the server-
side what applets are to the client-side-object byte codes that can be
dynamically loaded off the net. They differ from applets in that they are
faceless objects (without graphics or a GUI component). They serve as
platform independent, dynamically loadable, plug gable helper byte code
objects on the server side that can be used to dynamically extend server-
side functionality.

For example, an HTTP servlet can be used to generate dynamic HTML content.
When you use servlets to do dynamic content you get the following advantages:

They’re faster and cleaner than CGI scripts.

They use a standard API (the Servlet API)

They provide all the advantages of Java (run on a variety of servers

without needing to be rewritten)

The attractive of Servlets

There are many features of servlets that make them easy and attractive to use.
These include:

Easily configured using the GUI-based Admin Tool.

56
Can be loaded and invoked from a local disk or remotely across the network.

Can be linked together, or chained, so that one servlet can call another servlets or
several servlets in sequence.

Can be called dynamically from within HTML pages, using server-side include tags

Invoking the servlet

To invoke a servlet you call it by creating a URL with “/servlet/”


pretended to the servlet name. Then enter this URL in your favorite browser
to see the output of the Servlet.
Example:
After installing according to the directions above, access the
HelloServlet by entering the following URL in your favorite browser:
http://server-host-name:8080/servlet/hell

Internal Servlets

The Java Server servlet architecture is very flexible and the server takes
advantage of this by dividing up its work among several internal servlets. These are

● File Servlet
● Invoker Servlet
● Server side include servlet
● Admin Servlet
● CGI Servlet
● Image map servlet

File Servlet

The file servlet provides the standard document serving capabilities of java
server. This servlet includes a caching mechanism to speed up response times of
frequently accesses files. In addition it recognizes files that are to be parsed for server
side includes and passes them on to the SSInclude Servlet.
Servlets are an effective substitute for CGI scripts and provide a faster and
cleaner way to generate dynamic documents.

57
The java server is both flexible and extensible. Using the java serer APIs you
can write your own servlet and incorporate it into the server. To do this follows these
three steps
1. Write the servlet
2. Configure the servlet
3. Invoke the servlet

Writing the Servlet

Unless they are used with the http protocol, servlets subclass the servlet. GenericServlet
class and override the service (ServletRequest, ServletResonse) method.

Servlets use with the HTTP protocol should subclass the


javax.servlet.HttpServlet class override one or both of the doGet (HttpServletRequest,
HttpServletResonse) and doPost (HttpServletRequest, HttpServletResonse) methods

Servlets class may choose to override the default implementations of the servlet
“lifecycle” servlet methods, init (ServletConfig) and destroy ().

Configuring the Server:

The real beauty of the java server is that it is extensible. But, before you can use a
Servlet to add an extended functionality to the JavaServer. You have to use the Java
Server administration applet to install the Servlet and specify the default parameters
and arguments.

Display the Administration Applet by connecting to:


http://server_Host_Name:8000/index.html
Are secure-even when downloading across the network, the servlets security model and
the Servlet sandbox to protect your system from unfriendly behavior.

The advantage of the Sevlet API

One of the great advantages of the Servlet API is protocol independence. It assumes
nothing about:

● The protocol being used to transmit on the net.


● How it is loaded.
● The server environment it will be running in.

58
● These qualities are important, because it allows the Servlet API to be
embedded in many different kinds of Servers. There are other
advantages to the servlet API as well.

Servlet Features

The Java Server provides several important Servlet features. These include:

● Loading & Invoking Servlets.


● Servlets can be loaded both locally and remotely.
● Filters and Servlets change.
● The Java Server uses MIME types to call Servlets sequentially.
● Server size includes:
● Servlets can be invoked from dynamic HTML documents using Server
side include tags.
● Replacing the CGI Scripts.

5.Screen Shots (Forms & Reports)

59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
Software Testing

104
Software Testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding, Testing presents an interesting
anomaly for the software engineer.

Testing Objectives include:

1. Testing is a process of executing a program with the intent of


finding an error
2. A good test case is one that has a probability of finding an as yet
undiscovered error
3. A successful test is one that uncovers an undiscovered error

Testing Principles:

● All tests should be traceable to end user requirements


● Tests should be planned long before testing begins
● Testing should begin on a small scale and progress towards testing in
large
● Exhaustive testing is not possible
● To be most effective testing should be conducted by a independent third
party

Testing Strategies

A Strategy for software testing integrates software test cases into a series of well
planned steps that result in the successful construction of software. Software testing
is a broader topic for what is referred to as Verification and Validation. Verification
refers to the set of activities that ensure that the software correctly implements a
specific function Validation refers he set of activities that ensure that the software
that has been built is traceable to customer’s requirements

Unit Testing:

105
Unit testing focuses verification effort on the smallest unit of software design that is the
module. Using procedural design description as a guide, important control paths are
tested to uncover errors within the boundaries of the module. The unit test is
normally white box testing oriented and the step can be conducted in parallel for
multiple modules.

Integration Testing:

Integration testing is a systematic technique for constructing the program structure


while conducting test to uncover errors associated with the interfacing. The
objective is to take unit tested methods and build a program structure that has been
dictated by design.

Top-down Integration:

Top down integrations an incremental approach to construction of program


structure. Modules are integrated by moving downward through the control
hierarchy, beginning with the main control program. Modules subordinate to the
main program are incorporated in the structure either in the breath-first or depth-first
manner.

Bottom-up Integration:

This method as the name suggests, begins construction and testing with atomic
modules i.e., modules at the lowest leveling the program structure. Because the
modules are integrated in the bottom up manner the processing required for the
modules subordinate to a given level is always available and the need for stubs is
eliminated.

System Test Cases & System Test Report

The system test cases mentioned below are expected to work and give the expected
behavior if the explorer is configured to run jar files as mentioned in the project

106
folder. The necessary library files and standard jar files are in the appropriate
project directories and the path and class path environment variables
are appropriately set.

Test Observed Status


C.No behaviour P = Passed
. F = Failed
Input Expected Behaviour
Login as admin Admin Home page for
with correct login admin should be -do- P
1 details displayed

2 Login as admin Error message should


with wrong login be displayed
details -do- P

Add a New Entry It should add a new


3 for an employee record in the database
with new employee -do- P
details

4 Delete Entry It should delete an


existing employee
from the database -do- P

Add login details to Login details of this


5 an employee employee should be
stored inside the DB
-do-
P

6 Add an entry to New Project details -do- P


create project should be added.
details

7 Login as Appraisee Appraisee home page


should be displayed -do- P

8 Set the appraiser It should be added in -do- P


and reviewer for the DB
this appraisee

107
9 Submit an Appraisal should be -do- P
employee send to his appraiser
appraisal

View the list of Apprise appraisals


10 appraisals Should be displayed -do- P

11 Login as appraiser Appraiser home page


should be displayed -do- P

12 View appraisal list List of appraisals


should be displayed. -do- P

13 Evaluate the Appraisals should be P


appraisals evaluated -do-

14 Login as appraisee It should send a -do-


and send a review request P
reviewer request

15 Login as reviewer Reviewer home page -do- P


should displayed

16 View the review Appraisal review


requests requests should be -do- P
displayed

17 Generate CR Consolidated ranks


has to be calculated. -do- P

Validation Testing:

At the end of integration testing software ids completely assembled as a package. Validation
testing is the next stage which can be defined as successful when the software functions in
the manner reasonably expected by the customer. Reasonable expectations are those defined

108
in the software requirements specifications. Information contained in those sections form a
basis for validation testing approach.

System Testing:
System testing is actually a series of different tests whose primary purpose is to fully
exercise the computer-based system. Although each test has a different purpose, all work
to verify that all system elements have been properly integrated to perform allocated
functions.

Recovery Testing:

It is a system test that forces the system to fail in a variety of ways and
verities that the recovery is properly performed.

Security Testing:

Attempts to verify the protection mechanisms built into the system.

Performance Testing:

This method is designed to test runtime performance of software within the context
of an integrated system..

Limitations and Enhancements

1). Limitations:

❑ Once the user (employee) submits a document then he is not going to have the
immediate response from the expert. We call this is as offline response. Some
times it is better to provide online response in that situation user can get the
status of his request immediately and gets wide thinking.
❑ It is only the intranet application. Because of this if any employee is working
from client place then he can’t enter into this application from online since it’s
access is restricted with in the company..

109
2) Enhancements:

❑ Extendibility ----provides high level extendibility. It means it


provides all the basic features and allows us to extend their
features very easily with out disturbing the existing code.
❑ We can make this Internet application if we desire.
❑ We can make this application is suitable to work on any application
just by changing the deployment files.
❑ By providing some more features like providing accessibility to
internet users to involve in this process.

Conclusion

The new system, Employee Performance and Recognition Portal has


been implemented to cater the needs of company employees and administrative
people of the company in submitting appraisals, evaluating the appraisals,
calculating the average ratings of the employees and finally generating the
consolidated ranks effectively with role based access. The present system has
been integrated with the already existing. The database was put into the My
SQL server. This was connected by JDBC. The database is accessible through
Intranet on any location. This system has been found to meet the requirements
of the users and departments and also very satisfactory.

The database system must provide for the safety of the information
stored, despite system crashes or attempts at unauthorized access. If data are to

110
be shared among several users, the system must avoid possible anomalous
results.

Bibliography
Reference text books

o Core java volume-II Advanced features 7th edition by Cay S.Horstmann and
Gary Cornell (Pearson education).
o Java Servlet Programming by O’relly publishers
o Java Complete Reference 5th edition by Herbert Schildt (Tata McGraw Hill).
o Algorithm and applications in java 3rd edition by Satraj Sahni (Tata McGraw
Hill).
o Classical Data Structures by Samantha (Pearson education).
o Java Server Programming 2.0 with complete J2EE concepts included (apress).
o Software Engineering practice and principles 6th edition by Roger Pressmen
(Tata McGraw Hill).

111
o Java How to program 5th edition Deitel and Deitel (Prentice Hall of India).
o Internet & World Wide Web How to program 3rd edition by Deitel & Deitel and
Goldberg (Pearson education).
o Web enabled commercial application development using Java 2.0 by Ivan
Bayross (Prentice Hall of India).
o Data base System Concepts 4th edition by Silbershatz, Korth, and Sudharshan
(Tata McGraw Hill).
o Fundamentals of Data base systems 4th edition by Ramez Elmasri and
Shamkant B.Navathe (Pearson education).

112

Potrebbero piacerti anche