Upload
mohammedaamer
View
1.109
Download
0
Tags:
Embed Size (px)
Citation preview
CHAPTER 1
INTRODUCTION
1
1. INTRODUCTION
Performance management includes activities to ensure that goals are consistently being
met in an effective and efficient manner. Performance management can focus on the
performance of an organization, a department, employee, or even the processes to build a
product or service, as well as many other areas.
Performance Management as referenced on this page is a broad term. See Aubrey
Daniels for a detailed explanation of the origin of the term Performance Management (PM)
which was coined by Dr. Aubrey C. Daniels in the late 1970s to describe a technology (i.e.,
science imbedded in applications methods) for managing both behavior and results, the two
critical elements of what is known as performance.
The Application proposed is used to track the potential level of the lecturer by considering
the grade levels given by the students by answering to the given set of questions. Each students is
assigned with a username and password by which they can login and participate in the
questionnaire setting the responses from multiple choice answers based on which the grade of the
lecturer is calculated. The individual performance on the given criteria and the overall grade is
decided finally by the administrator.
This helps the management of find the efficiency of the lecturers in the college and decides
their performance level which leads to their growth in the college.
1.1 Present System
In the current scenario, the information of the performance provided by the colleges, are
maintained offline. It becomes complex for the managing authority, to maintain the performance
of the faculty with grade specifications. It also is difficult to track the information of the
renewals to trace the completed & pending renewals data. The information of the performance
staff is maintained in person and the performance information is offline making it difficult to
trace their efficiencies.
2
1.2 Proposed System
The application that is proposed online works under the control of the central server were the
students and college administrators can access them from remote sources. Managing employee
or system performance facilitates the effective delivery of strategic and operational goals. There
is a clear and immediate correlation between using performance management programs or
software and improved business and organizational results.
For employee performance management, using integrated software, rather than a spreadsheet
based recording system, may deliver a significant return on investment through a range of direct
and indirect sales benefits, operational efficiency benefits and by unlocking the latent potential in
every employees work day i.e. the time they spend not actually doing their job.
3
CHAPTER 2
REQUIREMENTS
4
2. REQUIREMENTS
2.1 SOFTWARE REQUIREMENTS
Language : JAVA
Scripting : JSP & Java Script
Web Server : Tomcat
Database : Access/ SQL Server
2.2 HARDWARE REQUIREMENTS
Operating System : Any Graphical OS
RAM : 512 MB
Hard Disk : 40 GB
Processor : P - IV
5
CHAPTER 3
ANALYSIS
6
3. ANALYSIS
3.1 SYSTEM ANALYSIS
The analysis of the existing system has to be carried to learn the details of the existing system.
System analysis is the process of gathering and interpreting facts, diagnosing problems and using
the information to recommend improvements to the system. Only after the system’s analysis we
can begin to determine how and where a computer information system can benefit all the users of
the system. This accumulation of the system called a system’s study.
For employee performance management, using integrated software, rather than a
spreadsheet based recording system, may deliver a significant return on investment through a
range of direct and indirect sales benefits, operational efficiency benefits and by unlocking the
latent potential in every employees work day i.e. the time they spend not actually doing their job.
3.2 FEASIBILITY ANALYSIS
3.2.1 TECHNICAL FEASIBILITY
Keeping in mind the existing system network, s/w & H/w, already available the PMS
application generated in Java provides an executable file that requires JVM that provides
compatibility from windows98 without having to load JAVA software.
No additional hardware or software is required which makes smart audit technically feasible
3.2.2 OPERATIONAL FEASIBILITY
The application PMS does not require additional manual involvement or labor towards
maintenance of the system. Cost for training is minimized due to the user friendliness of the
developed application.
Recurring expenditures on consumables and materials are minimized.
7
3.2.3 ECONOMIC FEASIBILITY
The system is economically feasible keeping in mind:
Lesser investment towards training.
One time investment towards development.
Minimizing recurring expenditure towards training, facilities offered and consumables.
The system as a whole is economically feasible over a period of time.
Many feasibility studies are disillusioning for both users and analysts. First, the study often
presupposes that when the feasibility document is being prepared, the analyst is in a position to evaluate
solutions. Second, most studies tend to overlook the confusion inherent in system development-the
constraints and the assumed attitudes. If the feasibility study is to serve as a decision document, it must
answer three key questions.
3.3 JAVA
3.3.1 OVERVIEW OF JAVA
An Object Oriented Programming Language(OOPL) developed at Sun Microsystems. A
Virtual Machine Run Time Environment that can be embedded in web browser (IE, NN). 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 is limited only by one’s imagination. For example, an applet can
be an animation with sound, an interactive game or a ticker tape with constantly updated stock
prices. Applets can be serious application 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. It is becoming so popular that many people
believe it will become standard language for both general purpose and Internet programming.
8
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 is actually a platform consisting of three components:
Java Programming Language.
Java Library of Classes and Interfaces.
Java Virtual Machine.
It also has a Standardized set of Packages (Class, Interfaces):
Creating Graphical User Interfaces
Controlling Multimedia Data
Communicating over Network
The following sections will say more about these components:
3.3.2 FEATURES OF JAVA
i. 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.
9
ii. JAVA IS OBJECT ORIENTED
The Java programming language is object oriented, which makes program design focus onThe Java programming language is object oriented, which makes program design focus on
what you are dealing with rather than on how you are going to do something. This makes itwhat you are dealing with rather than on how you are going to do something. This makes it
more useful for programming in sophisticated projects because one can break the thingsmore useful for programming in sophisticated projects because one can break the things
down into understandable components. A big benefit is that these components can then bedown into understandable components. A big benefit is that these components can then be
reused.reused.
iii. JAVA MAKES IT EASY TO WRITE CORRECT CODE
In addition to being portable and object oriented, Java facilitates writing correct code.
Programmers spend less time writing Java code and a lot less time debugging it. In fact,
developers have reported slashing development time by as much as two thirds.
3.4 HTML3.4 HTML
3.4.1 INTRODUCTION
The Hyper Text Markup Language (HTML) is a simple markup language used to create
hypertext documents that are portable from one platform to another. HTML documents are
SGML documents with generic semantic 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 to be used as a replacement for HTML
2.0(RF1866).
A set of instructions embedded in a document is called Markup Language. These
instructions describe what the document text means and how it should look like in a
display.Hyper Text Markup Language (HTML) is the language used to encode World Wide Web
documents. It is a document layout and hyperlink specification language that defines the syntax
and placement of special embedded directions that are not displayed by a web browser, but tells
it how to display the contents of the documents including text, images and other supported
media.
10
3.4.2 USE OF HTML
Web site is a collection of pages, publications, and documents that reside on web sever.
While these page publications, and a document as a formatted in any single format. You should
use HTML for home page and all primary pages and the site. This will enable the millions of
web users it easily access and to take advantage of your website.
3.5 JAVA SERVER PAGES (JSP)
3.5.1 INTRODUCTION
Java Server Pages (JSP's) permit server side Java logic to reside within the requested
document. Upon request of a JSP document the server activates the specified JSP. The JSP then
becomes responsible for providing an HTML response.
The server side logic within a JSP is written in Java. The Java code segments, referred to
as scriptlets, are generally responsible for providing dynamic HTML content to the JSP's
response HTML. The JSP itself is compiled by the server, and is executed as an object that
extends the Java Servlet API. As such, the HTTP Servlet request and response objects are
available by the scriptlets defined within the JSP.
If we consider a 3-tier architectural WEB application, the browser becomes the client side
application. The user communicates requests to the WEB/app server via the browser. The
presentation layer receives the client requests and prepares the response and server side business
functionality is executed. In the context of this example, the JSP engine represents the
presentation layer. It is responsible for processing requests and responses. Additional messages
may be passed between this layer and that which handles business processes represented below
as EJB’s.
11
3.5.2 THE TECHNOLOGY
JSP technology uses XML - like tags and scriptlets. They are used to encapsulate
presentation logic within the JSP. They can also initiate messages to distributed or server-side
applications. The logical separation of presentation and business logic lies in the implementation
of the JSP.
Enterprise Java Beans provide a distinct relationship between the implementation of
business logic and the remote interfaces provided to the EJB client. The use of an EJB typically
follows the pattern:
The client application identifies itself to the server.
The client application uses the Java Naming Directory service to locate the
desired EJB.
The client application retrieves a handle to the EJB Home and
subsequently Remote interfaces.
The remote interface contains methods that the client is permitted to use. They
represent a summary of the business logic that is implemented by the bean. The implementation
logic is defined within the primary bean class. All IPC, database and resource details are
restricted to the bean class.
12
In constructing a JSP document, the creation of the HTML base is a prudent step. It
becomes the visual template that JSP scriptlets are merged into. The post execution HTML
produced from the completed JSP should be that of the original HTML document. With the
exception of comment, dynamically generated HTML sections and JSP content substitutions.
The scripting logic, except for where desired, is completely non visual in regard to the response
HTML text.
The construction of the HTML layout conceivably begins with a Web developer. The
creation of the JSP pages would be similar if not identical to the methods used to construct
industry HTML pages.
3.5.3 CONCLUSION
As with other tools of the trade, innovations and nuances to existing tools do not
invalidate existing design methodologies. They do however provide new versatility and the
expansion of possibilities with regard to application design.
Custom tag extensions, in contrast to standard tags, provide the application builder the
ability to define custom tags to satisfy some functionality not provided by the standard API. To
benefit by using tag extensions to reduce the amount of Java functionality that the JSP API
provides, might seem oxymorinic, and it is.
3.6
MICROSOFT ACCESS
3.6.1 INTRODUCTION
Access is a database management system. Databases are an important part of everyday
use. We use them anywhere we use computers, at home, and in the fields of medicine,
education, law, business, engineering and government.
13
A database is a collection of data and facts that are related to a particular object or
purpose, such as tracking customer orders or maintaining a music collection. If your database
isnot stored on a computer, or only parts of it are on the computer, you may be tracking
information from a variety of sources that you have to coordinate and organize yourself.
In Access, the heart of the database is the Table. One or more tables comprise a database.
In addition to tables, a database can contain other objects such as queries, reports, forms and
other components.These objects allow you to view and manipulate the data contained in the
database in variety of ways.
3.6.2 DESIGNING A DATABASE
Good design is a key factor of successful database building. A well designed database
can lead to more efficient use of queries, forms, and reports, and can increase the reliability of
the extracted information. In addition, an effectively designed database will be easier to expand
as you organization’s information requirements grow and change.
Although there are guidelines to assist you in designing your database, there is no such
thing as a perfect database design. Designing information systems always involves a degree of
compromise. The purpose of this appendix is to provide a general overview of good database
design principles. These guidelines should not be viewed as hard and fast rules, but rather
suggestions for making your database design decision.
Database Objects Description
Table The primary units of a database that stores field names, field
description, field controls and field data. Tables display multiple
records in a row/column format similar to a spreadsheet layout.
14
Query A structured guideline used to search database tables and retrieve
records that meet specific conditions.
Form An aesthetically pleasing layout of table data designed to display one
record on-screen at a time.
Report An organized format of database data designed to generate printouts
that provide meaningful information.
Pages A data access page is a special type of Web page designed for
viewing and working with data from an Internet or Intranet data that
is stored in a Microsoft Access database or a Microsoft SQL Server
database. The data access page may also include data from other
sources, such as Microsoft Excel.
Macros A mini program that stores a set of instructions designed to perform a
particular task.
Module A collection of Visual Basic programming procedures stored together
to customize the Access environment.
15
3.6.3 TABLE DESIGN VIEW:
In table design View, you must specify the fields, specify the data type for each field,
assign the size for text and number fields, assign the primary key (see glossary for definition)
and save the table yourself.
3.6.4 DATASHEET VIEW:
In data sheet view data types are very important to creating a database. There are 10
different types to choose from. The data type determines what kind of information may be
entered in a field.You can always change the data type of a field after you have entered data into
it. However, it may be a difficult process if the data field conflicts with the current data type (for
example, changing a text field to a number field). The table below shows the specifics on each
data type.
Setting Type of Data
Text(default
setting for all field)
Text or combination of text and numbers, as well as numbers that
don’t require calculations, such as phone numbers. Up to 255
characters or the length set by the Field Size property, whichever is
less.
Memo
Lengthy text or combinations of text and numbers. Up to 65,536
characters.
Number Numeric data used in mathematical calculations.
Date / Time Date and time values for years 100 through 9999.
Currency
Currency values and numeric data used in mathematical
calculations involving data with one to four decimal places.
Accurate to 15 digits on the left side of the decimal separator and to
4 digits on the right side.
AutoNumber A unique sequential (incremented by 1) number or random number
16
assigned by Microsoft Access whenever a new record is added to a
table. AutoNumber fields cannot be updated.
Yes / No
Yes and No values and fields that contain only one of two values
(Yes/No, True/False, or On/Off).
OLE Object
An object (such as a Microsoft Excel spreadsheet, a Microsoft
Word document, graphics, sound, or other binary data) linked to
embedded in a Microsoft Access table.
Hyperlink Text or combination of text stored as text and used as hyperlink
3.7 TABLE SPECIFICATIONS FOR PMS
Table Name: Departments
Field Name Data type ConstraintDept_Id Number Primary KeyDept_Code Text Not NullDept_Name Text Not NullYear1 Memo Not NullYear2Sem1 Memo Not NullYear2Sem2 Memo Not NullYear3Sem1 Memo Not NullYear3Sem2 Memo Not NullYear4Sem1 Memo Not NullYear4Sem2 Memo Not Null
17
Table Name: Grades
Field Name Data Type ConstraintFor_Month Text Primary KeySID Text Primary KeyStaff_Id Number Primary KeyGrade Text Text
Table Name: Questions
Field Name Data Type ConstraintFor_Month Text Primary KeyQID Number Primary KeyQuestion Memo Not NullResponse1 Text Not NullResponse2 Text Not NullResponse3 Text Not NullResponse4 Text Not Null
Table Name: Staff
Field Name Data Type ConstraintStaff_Id Number Primary KeyStaff_Name Text Not NullSubject Text Not NullSem Text Not NullDept_Code Text Not NullContacts Text Not NullEmail Text Not NullUName Text Not NullPWord Text Not NullStatus Text Not Null
Table Name: Students
Field Name Data Type ConstraintStudent Id Text Primary KeyStudent_Name Text Not NullSem Text Not NullDept_Code Text Not NullUName Text Not NullPWord Text Not NullStatus Text Not Null
18
CHAPTER 4
DESIGN
19
4. DESIGN
4.1 DATA FLOW DIAGRAMS.
The development of DFD’S is done in several levels. Each process in lower level
diagrams can be broken down into a more detailed DFD in the next level. The lop-level diagram
is often called context diagram. It consists of A data flow diagram is graphical tool used to
describe and analyze movement of data through a system. These are the central tool and the
basis from which the other components are developed. The transformation of data from input to
output, through processed, may be described logically and independently of physical components
associated with the system. These are known as the logical data flow diagrams. The physical
data flow diagrams show the actual implements and movement of data between people,
departments and workstations. A full description of a system actually consists of a set of data
flow diagrams. Using two familiar notations Yourdon, Gane and Sarson notation develops the
data flow diagrams. Each component in a DFD is labeled with a descriptive name. Process is
further identified with a number that will be used for identification purpose single process bit,
which plays vital role in studying the current system. The process in the context level diagram is
exploded into other process at the first level DFD.
The idea behind the explosion of a process into more process is that understanding at one
level of detail is exploded into greater detail at the next level. This is done until further
explosion is necessary and an adequate amount of detail is described for analyst to understand
the process. Larry Constantine first developed the DFD as a way of expressing system
requirements in a graphical from, this lead to the modular design.
20
4.1.2 DFD SYMBOLS:
In the DFD, there are four symbols
1. A square defines a source(originator) or destination of system data
2. An arrow identifies data flow. It is the pipeline through which the information flows
3. A circle or a bubble represents a process that transforms incoming data flow into
outgoing data flows.
4. An open rectangle is a data store, data at rest or a temporary repository of data.
Process that transforms data flow.
Source or Destination of data
Data flow
Data Store
21
4.1.3 CONSTRUCTING A DFD
Several rules of thumb are used in drawing DFD’S:
1. Process should be named and numbered for an easy reference. Each name should
be representative of the process.
2. The direction of flow is from top to bottom and from left to right. Data
traditionally flow from source to the destination although they may flow back to the
source. One way to indicate this is to draw long flow line back to a source.
3. When a process is exploded into lower level details, they are numbered.
4. The names of data stores and destinations are written in capital letters.
Process and dataflow names have the first letter of each work capitalized
A DFD typically shows the minimum contents of data store. Each data store should
contain all the data elements that flow in and out. Questionnaires should contain all the data
elements that flow in and out. Missing interfaces redundancies and like is then accounted for
often through interviews.
4.1.4 SAILENT FEATURES OF DFD’S
1. The DFD shows flow of data, not of control loops and decision are
controlled considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process
whether the dataflow take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD
22
4.2 UNIFIED MODELING LANGUAGE
4.2.1 Unified Modeling Language
The unified modeling language allows the software engineer to express an analysis model
using the modeling notation that is governed by a set of syntactic semantic and pragmatic rules.
A UML system is represented using five different views that describe the system from
distinctly different perspective.
Each view is defined by a set of diagram, which is as follows.
User Model View
The analysis representation describes a usage scenario from the end-users
perspective.
Structural model view
In this model the data and functionality are arrived from inside the system.
This model view models the static structures.
Behavioral Model View
It represents the dynamic of behavioral as parts of the system,depicting the
interactions of collection between various structural elements described in the user model and
structural model view.
Implementation Model View
In this the structural and behavioral as parts of the system are represented as
they are to be built.
23
4.2.2 INTRODUCTION TO THE UNIFIED MODIFIED LANGUAGE
Building a model for a software system prior to its construction is as essential
as having a blueprint for building a large building. Good models are essential for
communication among project teams. As the complexity of the systems increases, so
does the importance of good modeling techniques.
A modeling language must include:
Model elements- fundamentally modeling concepts and semantics.
Notation-visual rendering of model elements
Guidelines-expression of usage within trade
The use of visual notation to represent or model a problem can provide us several
benefits relating to clarity, familiarity, maintenance, and simplification. The main reason for
modeling is the reduction of complexity. The Unified Modeling Language (UML) is a set of
notations and conventions used to describe and model an application. The UML is intended to
be a universal language for modeling systems, meaning that it can express models of
many different kinds and purposes, just as a programming language or a natural language
can be used in different ways.
A model” is an abstract representation of a system , constructed to understand the
system prior to building or modifying it. The term “system” is used here in a broad
sense to include any process or structure.
The UML is not intended to be a visual programming language in the sense
of having all the necessary visual and semantic support to replace programming
languages. However, the UML does have a tight mapping to a family of object-oriented
languages, so that you can get the best of both worlds.
24
The primary goals in the design of the UML were as follows:
1. Provide users ready-to-use, expensive visual modeling languages so they can develop and
exchange meaningful models.
2. Provide extendibility and specialization mechanisms to extend the core concepts.
3. Be independent of particular programming languages and development process.
4. Provide a formal basis for understanding the modeling language.
5. Encourage the growth of the OO tools market.
6. Support higher level development concepts.
7. Integrate best practices and methodologies.
4.2.3 Architectural views and diagrams of the UML
The UML Meta model elements are organized into diagrams. Different diagrams are used
for different purposes depending on the angle from which you are viewing the
system. The different views are called “architectural views”. Architectural views
facilitate the organization of knowledge, and diagrams enable the communication of
knowledge. Then knowledge itself is within the model or set of models that focuses
on the problem and solution. The architectural views and their diagrams are
summarized below:
25
o The “user model view” encompasses a problem and solution from the
preservative of those individuals whose problem the solution addresses. The
view presents the goals and objectives of the problem owners and their
requirements of the solution. This view is composed of “use case diagrams”.
These diagrams describe the functionality provided by a system to external
interactors. These diagrams contain actors, use cases, and their relationships.
o The “Structural model view” encompasses the static, or structural, aspects of
a problem and solution. This view is also known as the static or logical
view. This view is composed of the following diagrams.
o “Class diagrams” describe the static structure of a system, or how it is
declared rather than how it behaves. These diagrams contain classes and
associations.
o “Object diagrams” describe the static structure of a system at a particular
time during its life. These diagrams contain objects and links.
“Sequence diagrams” render the specification of behavior. These diagrams describes
the behavior provided by a system to interactions. These diagrams contain classes
that exchange messages with in an interaction arranged in time sequence. In generic
form, These diagrams describe a set of message exchange sequences among a
set of classes. In instance form(scenarios), these diagrams describe one actual
message exchange sequence among objects of those classes.
26
“Collaboration diagrams” render how behavior is realized by components with
in a system. These diagrams contain classes, associations, and their message
exchanges with in a collaboration to accomplish a purpose. In generic form, these
diagrams describe a set of classes and associations involved in message
exchange sequences. In instance form(scenarios), these diagrams describe a set of
objects of those classes links confirming to the associations, and one actual
message exchange sequence that inconsistent with the generic form and uses
those objects and links.
o “State chart diagrams” render the states and responses of a class participating in
behavior, and the life cycle of an object. These diagrams describe the behavior of
a class in response to external stimuli.
o “Activity diagrams” render the activities of a class participating in behavior. These
diagrams describe the behavior of a class in response to internal processing
rather than external events. Activity diagrams describe the processing activities with
in a class.
o The “Implementation model view ”encompasses” the structural and behavioral
aspects of the solution’s realization. This view is also known as the component
or development view and is composed of “component diagrams”. These diagrams
describe the organization of and dependencies among software implementation
components. These diagrams contain components and their relationships.
4.2.4 UML DIAGRAMS
Every complex system is best approached through a small set of nearly
independent views of a model; no single viewer is sufficient. Every model may
be expressed at different levels of fidelity. The best models are connected to reality.
The UML defines nine graphical diagrams.
27
1. Class diagram
2. Object diagram
3. Use-case diagram
4. Behavior diagrams
5. Interaction diagrams
6. Sequence diagram
7. Collaboration diagram
4.3 UML DIAGRAMS FOR PMS
4.3.1 CLASS DIAGRAM FOR PMS
Staff
Grade
SIDFOR-MONTH
set()view()
Students
SNODNO
add()view()
Questions
QIdFor-Month
Set()View()
Depts
Dno
add()view()
AdminStudent
Login
UNamePword
Verify()
Staffs
SIDDNo
add()view()
Fig 4.1:CLASS DIAGRAM FOR PMS
28
4.4 SEQUENCE DIAGRAMS FOR PMS
4.4.1 Sequence Diagram for Login & Questions
29
USERUSER PMSPMS DATABASEDATABASE
user login account
prompt for uname & pword
enter uname & pword
load models options(on success)
load error page(on failure)
verify
return status(success/failure)
Fig 4.2 SEQUENCE DIAGRAM FOR LOGIN
30
4.4.2 Sequence Diagram for Grading
StaffStaffSTUDENTSTUDENT PMSPMS QuestionsQuestions GradesGrades
Grading reg.
verify & fetch SName
load staff Names
verify & fetch Questions
Select SName
load Questions
set Response
verify,calculate & set Grade
return status(success/failure)
Fig 4.3 SEQUENCE DIAGRAM FOR QUESTIONS
31
4.4.3 Sequence Diagram for Dept.Info
load dept records
Admin :Admin : PMS:PMS: DeptInfoDeptInfo
New Dept Reg.
Verify & fetch max(DNo)
load max(DNo)+1
enter dept details
verify & save
return status(success/failure)
view depts list
verify & fetch records
Fig 4.4 Sequence diagram for DEPT.Info
32
4.4.4 Sequence Diagram for Staff & Students
Admin:Admin: PMS:PMS: Department:Department: StaffStaff
View Staff reg.
verify & fetch max(SID)
load max(SID)+1
verify & fetch the codes
load the codes
enter staff details & select DCode
verify & save
return status(success/failure)
view staff reg.
verify & fetch records
load staff details
Fig 4.5 SEQUENCE DIAGRAM FOR STAFF
33
AdminAdmin PMSPMS DepartmentDepartment StudentStudent
new student reg
verify & fetch max(SNO)
load max(SNO)+1
verify & fetch the codes
load the codes
enter student details & select the codes
verify & save
return status(succes/failure)
view student reg.
verify & fetch records
load student details
FIG 4.6 SEQUENCE DIAGRAM FOR STUDENT
34
4.5 E-R DIAGRAM
Fig 4.7 E-R Diagram
4.6 USE CASE DIAGRAMS FOR PMS
Set DeptInfo
Set Staff Info
Set Student InfoSet Questions
View Grading
ReportADMIN
Fig 4.7 USE CASE FOR ADMIN
35
Maintains
Departments Admin
DNO Others
DEPT ...
QUEST...
STAFF
Reports
Dept.Info
Student Info
Questions
Grading
DATABASE
STUDENT
Staff Info
ADMIN
Fig 4.7 USE CASE FOR PMS
36
Set Grade
STUDENT
LOGIN
View Grade
reports
STAFF
LOGIN
Fig 4.8 USE CASE FOR STUDENT AND STAFF
4.7 DATA FLOW DIAGRAM FOR PMS
4.7.1 CONTEXT LEVEL
Admin Maintain dept, staff, student
Set questions ,view grades
Student View staff, set grades
Staff View grades
37
PMS
4.7.2 LOGIN DFD
LOGIN
38
I.O ADMIN
2.0 STUDENT
3.0 STAFF
Maintain depts, Staff, Student
Grades, view image
View staff, set availibility
View grading
CHAPTER 5
SAMPLE CODE
39
5. IMPLEMENTATION/CODNG
5.1 INDEX/LOGIN PAGE CODE
<body bgcolor='' text='blue'>
<form name='f1' method='post' action='Verification.jsp'>
<h1 style='position:absolute;top:20pt;left:130pt'>PERFORMANCE
MANAGEMENT SYSTEM</h1>
<table style='position:absolute;top:80pt;left:450pt'>
<tr>
<th align='right'>UserName : <th>
<td><input type='text' name='t1' size=22></td>
</tr>
<tr>
<th align='right'>PassWord : <th>
<td><input type='password' name='t2' size=22></td>
</tr>
<tr>
<th align='right'>UserType : <th>
<td><select name='t3'>
40
<option>--Select--</option>
<option>Administrator</option>
<option>Staff</option>
<option>Student</option>
<input type='submit' value=' Go! ' style='font-
weight:bold;color:blue'></td>
</tr>
</table>
<img src='Images\s1.jpg' width='300' height='200'
style='position:absolute;top:50pt;left:150pt'></img>
</form>
</body>
5.2 ADMIN LIST
<frameset rows='20%,80%' border='0'>
<frame name='f1' noresize src='Heading.jsp'>
<frameset cols='20%,80%'>
<frame name='f2' noresize src='AdminList.jsp'>
<frame name='f3' noresize src='Welcome.jsp'> </frameset>
41
5.3 CODE TO VIEW PERFORMANCE
<body>
<%@ page language='java' import='java.sql.*' %>
<%
try
{
int sid=Integer.parseInt((String)session.getAttribute("sid"));
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection cn=DriverManager.getConnection("jdbc:odbc:PMS");
Statement stmt=cn.createStatement();
String str="Select distinct(for_Month) from Grades where Staff_Id="+sid;
//out.println(str);
ResultSet rs=stmt.executeQuery(str);
out.println("<center><h2>MONTHLY GRADE INFORMATION</h2>");
out.println("<table border='1' width='40%'>");
out.println("<tr><th>Month</th><th>Grade</th>");
while(rs.next())
{
String t1=rs.getString(1);42
out.println("<tr><th>"+t1+"</th>");
str="Select count(*) from Grades where Staff_Id="+sid+" and Grade='A' and
For_Month='"+t1+"'";
rs=stmt.executeQuery(str);
int A=0,B=0,C=0,D=0;
if(rs.next())
A=rs.getInt(1);
str="Select count(*) from Grades where Staff_Id="+sid+" and Grade='B' and
For_Month='"+t1+"'";
rs=stmt.executeQuery(str);
if(rs.next())
B=rs.getInt(1);
str="Select count(*) from Grades where Staff_Id="+sid+" and Grade='C' and
For_Month='"+t1+"'";
rs=stmt.executeQuery(str);
if(rs.next())
43
C=rs.getInt(1);
str="Select count(*) from Grades where Staff_Id="+sid+" and Grade='D' and
For_Month='"+t1+"'";
rs=stmt.executeQuery(str);
if(rs.next())
D=rs.getInt(1);
String gr="";
//out.println("<br>"+A+" == "+B+" == "+C+" == "+D);
if(A>B && A>C && A>D)
gr="A";
else if(B>A && B>C && B>D)
gr="B";
else if(C>A && C>B && C>D)
gr="C";
else if(D>A && D>B && D>C)
gr="D";
else if(A==B && A>C && A>D)
gr="B";
else if(A==C && A>B && A>D)
44
gr="C";
else if(A==D && A>B && A>C)
gr="D";
else if(B==C && B>A && B>D)
gr="C";
else if(B==D && B>A && B>C)
gr="D";
else if(C==D && C>B && C>A)
gr="D";
else if(A==B && A==C && A>D)
gr="B";
else if(A==B && A==D && A>C)
gr="B";
else if(A==C && A==D && A>B)
gr="C";
else if(B==C && B==D && B>A)
gr="C";
else
gr="B";
out.println("<th>"+gr+"</th></tr>");
}
45
stmt.close();
cn.close();
}
catch(Exception e)
{
}%>
</body>
46
CHAPTER 6
SCREENSHOTS
47
6.SCREENSHOTS
LOGIN PAGE
48
STAFF LIST PAGE
49
PAGE FOR NEW STUDENT INFORMATION
PAGE FOR QUESTIONS LIST
50
PAGE FOR QUESTIONS LIST FOR THE MONTH JULY
51
PAGE FOR STUDENTS’ LOGIN
52
STUDENTS LOGIN PAGE
53
54
PAGE FOR GRADING
55
GRADE SET SUCCESSFULLY
56
57
PAGE FOR STAFF CHECKING HIS GRADE FOR THE PARTICULAR MONTH(JULY)
58
CHAPTER 7
TESTING
59
7.TESTING
7.1 Introduction
Testing is the process of detecting errors for which the required open web application
secure employment portal specifications stated. Testing performs a very critical role for quality
assurance and for ensuring the reliability of software. The results of testing are used later on
during the software maintenance.
The aim of testing is often used to demonstrate that a program works by showing that it
has no errors. The basic purpose of testing phase is to detect the errors that may be present in the
program. Hence one should not start testing with the intent of showing that a program works, but
the intent should be to show that a program doesn’t work. The main objective of testing is to
uncover an error in systematic way with minimum effort and time.
7.2 Levels of testing
In order to uncover the errors present in different phases the different levels of testing
are:
System Testing
Function testing
The different types of testing are:
Unit testing
Link testing
60
7.2.1 Unit testing
This test focuses on verification effort on the smallest unit of software module. Using the
detailed design and the process specifications testing is done to uncover errors within the
boundary of the module. All the modules must be successful in the unit test before the start of the
integration testing begins.
In this project each service is a module like Login, Forms etc. Each module has to be tested by
giving different sets of inputs. The inputs are validated when accepting from user.
7.2.2 Integration testing
After the unit testing the integration of modules ahs to be done and then integration
testing can be done. The goal here is to see if modules can be integrated properly, the emphasis
being on testing interfaces between different modules.
7.2.3 System Testing
In the system testing the entire web portal is tested according the software requirement
specifications document.
7.2.4 Acceptance testing:
The acceptance testing is performed with realistic data of the client, which focus on the
external behavior of the system; the internal logic of the program is emphasized.
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. Testing is the exposure of the system to trial
input to see whether it produces correct output.
7.2.5 Testing Phases:
Software testing phases include the following:
Test activities are determined and test data selected.
The test is conducted and test results are compared with the expected results.
61
7.3 TESTING FOR PMS
Module Name : Login Module
FileName:Index.jsp
Test Inputs Actual Output Obtained Output Description
Valid Login Uid & pwd Success Success Test passed. Passes the control to the Other Module Menus.
InValid Login Uid & pwd Failed Failed Test Passed.
Passes the control to the Error Page with appropriate message
Module Name: Administrator
FileName: Add_Dept.jsp
Test Inputs Actual Output Obtained Output Description
Valid Entry Department Information
Success Success Test passed. Adds the department information into the table.
InValid Entry Department Information
Failed Failed Test Passed. Displays the error message of invalidness or incompleteness.
62
Name: Admin Module
FileName: Add_Staff.jsp
Test Inputs Actual Output Obtained Output Description
Valid Entry Staff Information Success Success Test passed. Adds the staff information to the Staff table.
Invalid Entry Staff information Failed Failed Test passed. Loads the error message of incompleteness.
Module Name: Administrator
FileName: Add_Student.jsp
Test Inputs Actual Output Obtained Output Description
Valid Entry Student Information
Success Success Test passed. Adds the Student information to the students table.
Invalid Entry Student Information
Failed Failed Test passed. Loads the error message of incomplete or invalidness.
Module Name: Administrator
63
File Name: Set_Questions.jsp
Test Inputs Actual Output Obtained Output Description
Valid Entry Question Data Success Success Test passed. Adds the question into the table.
Invalid Entry Question data Failed Failed Test passed. Displays the error message with appropriate message.
Module Name: Students
File Name: Set_Grade.jsp
Test Inputs Actual Output Obtained output Description
Valid Entry Grade Information
Success Success Test passed. Sets the grade to the lecturer.
Grade Information
Failed Failed Test passed. Display the message of incomplete grade information.
64
CHAPTER 8
FUTURE SCOPE
8. FUTURE SCOPE
1. In future, this system can become safer by giving privacy and security to the students and staff for their password and ids.
65
2. This system is already being used in the Multi-National companies for managing the performance of their employees. It can further be used by government for managing the performance of the officials working for them.
3. It can further be enhanced and used for voting system.
66
CHAPTER 9
BIBLOGRAPHY
9. BIBILOGRAPHY
8.1 Books:
1. Charles Petzold, 2002
67
Programming Windows,WP Publishers and Distributors Ltd, Bangalore.
2. Date. C. J., 1994
An Introduction to Database Systems, Addison-Wesley Publishing Company
3. Raghu Ramakrishnan, Johannes Gehrke, 2000
Database Management Systems, Mc Graw-Hill International Edition
4. Roger S. Pressman, 1997
Software Engineering, (Fourth Edition), McGraw-Hill International Edition.
9.2 Websites:
1. http://encyclopedia.laborlawtalk.com/IIS for information on IIS
2. http://aspnet.4guysfromrolla.com/articles/020404-1.aspx for relationship between IIS and
ASP.NET.
3. http://samples.gotdotnet.com/quickstart/aspplus/doc/mtstransactions.aspx for information on
Transactions in ASP.NET.
4. http://en.wikipedia.org/wiki/Performance_management
68