7/31/2019 Ete Capston
1/62
CAPSTONE PROJECT REPORT
(ONLINE TEST)
Submitted by
(ANUHARSH SAXENA)
Registration No:10810233
Programme: B.tech(C.S.E)
Section:RK28E3
Under the Guidance of
Miss.Manpreet Kaur
Discipline of CSE/IT
Lovely School of Sciences and Technology.
Lovely Professional University, Phagwara
7/31/2019 Ete Capston
2/62
CERTIFICATE
This is to certify that Anuharsh Saxena bearing Registration no10810233 has
completed capstone project titled, ONLINE TEST under my guidance and
supervision. To the best of my knowledge, the present work is the result of her
original investigation and study. No part of the work has ever been submitted
for any other degree at any University.
The project is fit for submission and the partial fulfillment of the
conditions for the award of B.tech(CSE).
Signature and Name of the Research Supervisor
Designation
School
Lovely Professional University
Phagwara, Punjab.
Date :
7/31/2019 Ete Capston
3/62
DECLARATION
I,Anuharsh Saxena student of B.tech(C.S.E) under Department of
Sciences and Technology of Lovely Professional University, Punjab, herebydeclare that all the information furnished in this dissertation / capstone project
report is based on my own intensive research and is genuine.
This dissertation / report does, to the best of my knowledge, contain part of my
work which has been submitted for the award of my degree either of this
university or any other university without proper citation.
Date :
ANUHARSH SAXENA
RegistrationNo 108102333.
7/31/2019 Ete Capston
4/62
ACKNOWLEDGEMENT
At the very outset, I am highly indebted to LOVELY PROFESSIONAL UNIVERSITY forgiving me an opportunity to carry out my project on ONLINE TEST . I would specially
thankMiss. Manpreet Kaur, Project Mentor, Lovely Professional University for giving time
and guidance throughout my Partial project without whom it would have been impossible to
attain success.
I own my regards to the entire faculty of the department of computer science and information
technology at LOVELY PROFFESSIONAL UNIVERSITY from where I have learnt the
basics of Computer Science and whose informal discussions and able guidance was a become
light for me in the entire duration of this work.
Anuharsh Saxena
10810233
7/31/2019 Ete Capston
5/62
INDEX
1.Organization Overview. 7
2. Profile of the Problem.. 8
3. Existing System 9
Introduction... 9
Existing Software9
Software requirements10
DFD for present system.... 11
4. Problem Analysis.. 12
Product definition. 13
Feasibility Analysis.. 13
Project Plan... 14
5. Software Requirement Analysis 15
Introduction... 14
Scope...16
General Description. 16-20
Specific Requirements20-22
Software interface23
6. Design..27
System Design..27
Design Notation....28
Detailed Design....29-30
Pseudo code...31
Technology used..31-32
Testing ..33
Functional Testing........34
Structural Testing........35-36
Level of testing....36
Testing the Project......37
Test cases..37-38.
Implementation.39
7/31/2019 Ete Capston
6/62
Post implementation and software maintenance..40
Project legacy...40
Complete coding structure...41-59
Snapshots...46-47-52-60
Appropriate Validation Checks.....61
Bibliography..62
7/31/2019 Ete Capston
7/62
ORGANIZATION
PROFILE
The name of my organization is Lovely Professional University (Lpu). It has a 600 + Acres
Campus: A technology driven campus, spreed over 600 + acres of lush green area on NH-1 at
the entry of Jalandhar city.
LPU provides a Professional learning Environment that acts as a catalyst for the exponential
growth of students academics as well as extracurricular abilities.
LPU is Indias Largest University with 25,000+ students (on one campus) from across 26
States of India and 16 Countries around the world.
LPU is duly recognized by UGC and other Apex Bodies and has accreditations of various
national and International bodies and associations.
LPU has a strong internationalization strategy where LPU wants to be regarded as a university
with a global perspective. LPU has 25+ international tie-ups.
7/31/2019 Ete Capston
8/62
PROFILE OF THE PROBLEM
Scope of this project is very broad in terms of other manually taking exams.
Few of them are:-
This can be used in educational institutions as well as in corporate
world.
No restriction that examiner has to be present when the candidate takes the test.
Slow retrieval time results
The system is labor and space intensive
The manual system produces a risk of missing files
There is a lack of confidently.
No back up exists to support disaster recover.
7/31/2019 Ete Capston
9/62
EXISTING SYSTEM
INTRODUCTION
The project is based on ONLINE TEST. . This software firm deals in developing software
for its clients. This a Notepad, using Java, Swing and AWT.
In modern civilization has become so complicated and sophisticated that to survive one has to
be competitive. This compiles the people to be acquainted with all type of happening in the
society; mankind is surrounded with a vast amount of data available. Modern business
management system has also rendered in a fashion so that it can be utilized with minimum
possible time. Paper files require a high amount of storage space and storage creates several
other problems like fire risk, spoilage and deterioration by way of aging humidity etc.
Computerization of documents and the files has solved this problem to create extent. Not only
this, but it has to be high amount of relaxation to human mind, as everything can be automated.
Now the documents can in a number of ways, styles and number of documents can be created
as and when required without making any mistakes.
EXISTING SOFTWARE
Project Name : ONLINE TEST
Institute: LOVELY PROFESSIONAL
UNIVERSITY
Project Type : Development Project
Front End : Java swings, AWT.
Tool: Notepad Editor
7/31/2019 Ete Capston
10/62
Software Requirements:
Operating System - Windows 2000 Server,
Windows NT 4.0/2000, XPIntegrated Development
Environment (IDE)
- Eclipse
Front end Tool - Applet
Developing Technology - Java/J2EE
Database Connectivity - JDBC
Back End Tool - Ms- Access
Web Server - Apache Tomcat
Browser - Internet Explorer 6.0
Application Software - MS-Office 2003
DFD:
7/31/2019 Ete Capston
11/62
PROBLEM ANALYSIS
User table
Login
User
Result
REG Table
Registration
Exam
Englis
hMath Java
Calculate
Result
7/31/2019 Ete Capston
12/62
The institute currently operates under a manual system of conducting exams of students. The
primary function of the staff is to file and retrieve the information regarding the students, tests
and tests type, performance reports of every student in different subjects, and to maintain batch
records.
There are the five major areas in which the manual system affects costs:
Slow retrieval time results
The system is labor and space intensive
The manual system produces a risk of missing files
There is a lack of confidently.
No back up exists to support disaster recover.
The volume of paper is one of the things that stand in the way of increasing productivity in
institute.
Document retrieval Costs
Because batches are rarely cross referenced, the staff might have to look under several headings
to locate pertinent data. Even if the staff is conscientious about filling methods, locating
documents is still a labor and cost intensive operation.
Value of missing information
Combined with the typical lost document statics reviewed above, one could estimate the
industry average cost of not having the documents information when needed. But to obtain
first hand actual data for as software organization. This company decided to measure that actual
dollar value of lost information. Over a two week period, the file staff filled out a form for each
request to retrieve a document from the storage rooms. The data collected documented the total
number of filed requested and the results of each request.
Maintaining Registers is Costly
7/31/2019 Ete Capston
13/62
Traditionally, documents have been stored in batches and then filed in the cabinets and boxes.
A numerical system is then assigned. Specially a batch number assigned to organize the files.
Operative notes are classified alphabetically.
Listed below are the cost elements in our paper based filling system:
Labor: Creating new files, labeling, applying batch header sheets to file into the system,
collating and entering information into a batch log book.
Supplies: File folders, dividers, folder labels, batch header sheets, requisitions slips, file logs
and filling boxes.
Equipment: File cabinets and shelving units
FEASIBILITY STUDY1.ECONOMIC FEASIBILITY
Economic analysis is most frequently used for evaluation of the effectiveness of the system.
More commonly knows as cost/benefit analysis the procedure is to determine the benefit and
saving that are expected from a system and compare them with costs, decisions is made to
design and implement the system.This part of feasibility study gives the top management the
economic justification for the new system. This is an important input to the management the
management, because very often the top management does not like to get confounded by thevarious technicalities that bound to be associated with a project of this kind. A simple
economic analysis that gives the actual comparison of costs and benefits is much more
meaningful in such cases.In the system, the organization is most satisfied by economic
feasibility. Because, if the organization implements this system, it need not require any
additional hardware resources as well as it will be saving lot of time.
2. TECHNICAL FEASIBILITY
Technical feasibility centers on the existing manual system of the test management process andto what extent it can support the system. According to feasibility analysis procedure the
technical feasibility of the system is analyzed and the technical requirements such as software
facilities, procedure, inputs are identified. It is also one of the important phases of the system
development activities.The system offers greater levels of user friendliness combined with
greater processing speed. Therefore, the cost of maintenance can be reduced. Since,
processing speed is very high and the work is reduced in the maintenance.
7/31/2019 Ete Capston
14/62
3. BEHAVIOURAL FEASIBILITY
People are inherently resistant to change and computer has been known to
facilitate changes. An estimate should be made of how strong the user is
likely to move towards the development of computerized system. These arevarious levels of users in order to ensure proper authentication and authorization and security
of sensitive data of the organization.
PROJECT PLANS
Team Structure
Team Will be comprising of one members Anuharsh Saxena
Our very able and helpful project guide Miss.Manpreet Kaur
Development Schedule
The work in developing the new system commented immediately with our first meeting with
the management and users thereafter we were in continuous touch with the management and
users of the company.
Phases Involved in the development of the system
Identify needs and benefits
Held meetings with the management and user
Studied and identified the existing system.
Identify needs and project constraints
Established project statements
Prepared a detailed report of the existing system at work.
Prepare the software requirement specifications .
Actual coding started
7/31/2019 Ete Capston
15/62
1.System/Infor
mation Engineering and Modeling
2. Software Requirements Analysis
3. Systems Analysis and Design
4. Code Generation
5. Testing
6. Maintenance
Software Requirement Analysis
This is also known as feasibility study. In this phase, the development team visits the customer
and studies their system. They investigate the need for possible software automation in the
given system. By the end of the feasibility study, the team furnishes a document that holds the
different specific recommendations for the candidate system. It also includes the personnel
assignments, costs, project schedule, and target dates. The requirements gathering process is
intensified and focused specially on software. To understand the nature of the program(s) to be
built, the system engineer ("analyst") must understand the information domain for the software,
as well as required function, behavior, performance and interfacing. The essential purpose of
this phase is to find the need and to define the problem that needs to be solved.
It saves time as it allows number of students to give the exam at a
time and displays the results as the test gets over, so no need to
wait for the result. It is automatically generated by the server.
Administrator has a privilege to create, modify and delete the test
papers and its particular questions.
User can register, login and give the test with his specific id, and
can see the results as well.
7/31/2019 Ete Capston
16/62
Document Conventions
The following are the list of conventions and acronyms used in this
document and the project as well:
Administrator: A login id representing a user with user administration
privileges to the software
User: A general login id assigned to users
Client: Intended users for the software
Examiner: Checks the test n gives result
Scope
Scope of this project is very broad in terms of other manually taking exams.
Few of them are:-
This can be used in educational institutions as well as in corporate
world. Can be used anywhere any time as it is a web based application(user
Location doesnt matter). No restriction that examiner has to be present when the candidate
takes the test.
The proposed LanguageSkill Exam System is an on-line Exam System.
The online test created for taking online test has following stages
Login
Test
Result
Login:-
There is a quality login window because this is more secure than other
login forms as in a normal login window there are multiple logins available
so that more than one person can access to test with there individual login.
But in this project there is only one login id i.e. administrator id and
password by which a person enter the site. Hence it is more secure and
reliable than previously used on-line test simulators.
7/31/2019 Ete Capston
17/62
TEST:
Test page is the most creative and important page in this project. It
consists of 2 modules namely:
Subject selection
Utilities
Subject selection:-
From the given choices the candidate can select his
field (like C, C++ and JAVA, Eng etc) for taking on with the test.
Utilities:-
It includes:-
Skip and come back to the question afterwards if needed.
Gives the list of attempted and unattempted questions and can go to any question
directly and can either attempt or change the answer of the already attempted question.
Product Features
There are three different users who will be using this product:
University chancellor who will be acting as the administrator.
Students who will be accessing the OES online.
The features that are available to the Administrator are:
The administrator has the full fledged rights over the OES.
Can create/delete an account.
Can view the accounts.
Can change the password.
Can hide any kind of features from the both of users.
Insert/delete/edit the information of available on OES.
Can access all the accounts of the faculty members/students.
The features available to the Students are:
Can view The different categories of Test available in their account.
Can view their marks.
7/31/2019 Ete Capston
18/62
Can view the various reading material.
Can view and modify its profile but can modify it to some limited range.
Can pay their fee online.
The features available to the Examiner are:
Can view The different categories of Test conducted by users.
Can view their marks.
Can view and modify Results.
User Classes and Characteristics
There are various kinds of users for the product. Usually web products are visited by various
users for different reasons.
The users include :
Chancellor who will be acting as the controller and he will have all the privileges of
administrator.
Students who will be using the above features by accessing the OES online.
Examiner who willprepare& load database into the software.
Operating Environment
The product will be operating in windows environment. Also it will be compatible with the IE
6.0. Most of the features will be compatible with the Mozilla Firefox & Opera 7.0 or higher
version. The only requirement to use this online product would be the internet connection.
Design and Implementation Constraints
7/31/2019 Ete Capston
19/62
The whole implementation is done in two modules. The first one is
Administrator and the second is Examinee.
Module I:-
This first module tracks the path of Administrator. In this module it shows how the admin canlog into the system with a valid password and can add new valid user to the database. His name
and examid is saved in the database .Also he can manipulate the database and add new question
in the database from the webpage itself. It also shows how many questions
are in database.
Module II:-
This second module track the path for the examinee .The examinee can log into the system with
a valid ID issued by the admin. After successfully login into the system the examinee moves tothe instruction web page where he will get instruction about the examination process. Then
after clicking the start button the exam starts and timer also starts .In this manner examinee can
take up the test and clicking the submit button , he will get the result of
that section immediately. At the end system displays the initial web page.
Assumptions and Dependencies
Full working of OES is dependent on the availability of Internet connection and the software.
Assumptions:
In general it has been assumed that the user has complete knowledge of the
system that means user is not a nave user. Any data entered by him/her will
be valid. To make the software as user friendly as possible but at the same
time keeping in minds user requirements.
Server OS should be Windows NT/2000/XP.
Client PC should be Windows 9X/NT/WorkStation or Windows 2000
with latest service pack.
Dependencies:
It depends that the one should follow the international standards for the
generating the User ID & should fill the related information in the proper
format.
7/31/2019 Ete Capston
20/62
Database Storage
Description and Priority
Proposed Database is intended to store, retrieve, update, and manipulate information related to
university which include
Profile of both users
Student details
My account
Test results
Stimulus / Response Sequences
Responses for Administrator:The administrator can Login and Logout. When the
Administrator Logs into the Online Exam system. The system will check for validity of login
.If the Login and password are valid, the response to this action is the administrator will
be able to modify, view, add, deleting and all other functions that can be performed on the
database.
Examination:
First of all the user/examinee gets a valid identification number (same as the roll no for a
normal examination).The user can log on with this identification no. and can take up the
examination. After logging in the user can see various options and can choose the option from
the menu.
Functional Requirements
This section gives the list of Functional and non functional requirements which are applicable
to the Online Exam System. Functional requirements are nothing but the services provided by
the system to its end users. There are three sub modules in this phase.
Candidate module.
Examiner module.
Administrator module.
The functionality of each module is as follows.
7/31/2019 Ete Capston
21/62
Candidate module: The candidate will logon to the software and take his examination. He
can also check his previous examinations marks and his details. The candidate will get result
immediately after the completion of the examination.
Examiner module: The database is prepared & loaded into the software. Selection for
examination can be done language wise by the examiner. The results will be displayed
immediately after completion of the examination.
Administrator module: The administrator collects all the results after successful
completion of the examination and sends to the head quarters as and when required.
Interface Requirements
This section describes how the software interfaces with other software
products or users for input or output. Application will be accessed through a Browser Interface.
The interface would be viewed best using 1024 x 768 and 800 x 600 pixels resolution setting.
The software would be fully compatible with Microsoft Internet
Explorer for version 6 and above. No user would be able to access any part of
the application without logging on to the system.
User Interfaces
Application will be accessed through a Browser Interface. The interface would be viewed best
using 1024 x 768 and 800 x 600 pixels resolution setting. The software would be fully
compatible with Microsoft Internet Explorer for version 6 and above. No user would be able to
access any part of the application without logging on to the system.
Hardware Interfaces
Server Side:
Operating System: Windows 9x/xp ,Windows ME
Processor: Pentium 3.0 GHz or higher
RAM: 256 Mb or more
Hard Drive: 10 GB or more
7/31/2019 Ete Capston
22/62
Client side:
Operating System: Windows 9x or above, MAC or UNIX.
Processor: Pentium III or 2.0 GHz or higher.
RAM: 256 Mb or more
Software Interfaces
Client Side : .HTML, Web Browser, Windows XP/2000/Vista
Web Server: .HTML, Windows XP/2000/Vista
Communications Interfaces
The Customer must connect to the Internet to access the
Website:
Dialup Modem of 52 kbps
Broadband Internet
Dialup or Broadband Connection with a Internet Provider
.
Other Nonfunctional Requirements:
Performance Requirements
Some Performance requirements identified is listed below:
The database shall be able to accommodate a minimum of 10,000 records of students.
The software shall support use of multiple users at a time.
There are no other specific performance requirements that will affect development
Safety Requirements
The database may get crashed at any certain time due to virus or
operating system failure. Therefore, it is required to take the
database backup.
7/31/2019 Ete Capston
23/62
Security Requirements
Some of the factors that are identified to protect the software from accidental or malicious
access, use, modification, destruction, or disclosure are described below.1 Keep specific log or history data sets
2 Assign certain functions to different modules
3 Restrict communications between some areas of the program
4 Check data integrity for critical variables
5 Later version of the software will incorporate encryption techniques in the user/license
authentication process.
6 Communication needs to be restricted when the application is validating the user or
license. (i.e., using https).
Software Quality Attributes
The Quality of the System is maintained in such a way so that it
can be very user friendly to all the users.
The software quality attributes are assumed as under:
1)Accurate and hence reliable.
2) Secured.
3) Fast speed.
4) Compatibility.
7/31/2019 Ete Capston
24/62
SYSTEM DEVELOPMENT LIFE CYCLE MODEL (SDLC
MODEL)
This is also known as Classic Life Cycle Model (or) Linear Sequential Model (or) Waterfall
Method. This has the following activities.
1. System/Information Engineering and Modeling
2. Software Requirements Analysis
3. Systems Analysis and Design
4. Code Generation
5. Testing
6. Maintenance
System/Information Engineering and Modeling
As software is always of a large system (or business), work begins by establishing requirements
for all system elements and then allocating some subset of these requirements to software. This
system view is essential when software must interface with other elements such as hardware,
people and other resources. System is the basic and very critical requirement for the existence
of software in any entity. So if the system is not in place, the system should be engineered andput in place. In some cases, to extract the maximum output, the system should be re-engineered
and spruced up. Once the ideal system is engineered or tuned, the development team studies the
software requirement for the system.
7/31/2019 Ete Capston
25/62
Software Requirement Analysis
This is also known as feasibility study. In this phase, the development team visits the customer
and studies their system. They investigate the need for possible software automation in the
given system. By the end of the feasibility study, the team furnishes a document that holds the
different specific recommendations for the candidate system. It also includes the personnel
assignments, costs, project schedule, and target dates. The requirements gathering process is
intensified and focused specially on software. To understand the nature of the program(s) to be
built, the system engineer ("analyst") must understand the information domain for the software,
as well as required function, behavior, performance and interfacing. The essential purpose ofthis phase is to find the need and to define the problem that needs to be solved.
System Analysis and Design
In this phase, the software development process, the software's overall structure and its nuances
are defined. In terms of the client/server technology, the number of tiers needed for the package
architecture, the database design, the data structure design etc are all defined in this phase. A
software development model is created. Analysis and Design are very crucial in the whole
development cycle. Any glitch in the design phase could be very expensive to solve in the later
stage of the software development. Much care is taken during this phase. The logical system of
the product is developed in this phase.
Code generation
The design must be translated into a machine-readable form. The code generation step performsthis task. If the design is performed in a detailed manner, code generation can be accomplished
without much complication. Programming tools like Compilers, Interpreters, and Debuggers
are used to generate the code. Different high level programming languages like C, C++, Pascal,
and Java are used for coding. With respect to the type of application, the right programming
language is chosen.
7/31/2019 Ete Capston
26/62
Testing
Once the code is generated, the software program testing begins. Different testing
methodologies are available to unravel the bugs that were committed during the previous
phases. Different testing tools and methodologies are already available. Some companies build
their own testing tools that are tailor made for their own development operations.
Maintenance
Software will definitely undergo change once it is delivered to the customer. There are many
reasons for the change. Change could happen because of some unexpected input values into the
system. In addition, the changes in the system could directly affect the software operations. The
software should be developed to accommodate changes that could happen during the post
implementation period.
7/31/2019 Ete Capston
27/62
System Design:
user
username password
Receiv
e
Exam Result
RESUL
T
EXAMINATIONperform
REGISTRATIO
ENGMATH
S JAVA
USERNA
ME
Password
User id
Exam
id
Register
Marks
Exam
Result
USER nameand password
7/31/2019 Ete Capston
28/62
Design notation:
oval Start and End
Processing Steps
Input/Output
Flow Of Control
Decision box
7/31/2019 Ete Capston
29/62
System Design
Introduction: -
The objective of the system design is to deliver the requirements as specified in the
feasibility report. System design involves first logical design (logical design) and then
physical construction (detailed design) of the system. The logical design describes the
structure and characteristics of features, such as the outputs, inputs, files, databases, and
procedures. The physical construction produces actual program software, files, and a
working system.
System design goes through two phases of development: -
Logical Design
Physical Design
Logical Design:-
We know that a data flow diagram shows the logical flow of a system and defines the
boundaries of the system. Logical design specifies the user need at a level of details that
virtually determine the information flow into and out of the system and the required data
resources. Logical design describes the inputs, outputs, database and procedures .All in a
format that meets the users requirements.
Physical Design:-
It provides the working system by defining the design specification that tells programmers
exactly what that candidate system must do. In short it can state that physical design is the
implementation of the logical design.
Physical system design consists of the following-
Design the physical system
Specify input, output media
Design the database and specify backup procedures.
Design physical information flow through the system and a physical design walkthrough.
Plan system implementation
7/31/2019 Ete Capston
30/62
7/31/2019 Ete Capston
31/62
Pseudo code
For login page
1. If student is not add then registered.
2. Already registered then view status
3. Search the marks.
4. Give rating.
5. Display on software
TECHNOLOGY USED:
JAVAJava Technology is both a programming language and a platform.
Java: The Programming Language
The Java programming language is a high level language that can be characterized by all of the
following buzzwords:
Simple
Object oriented
Distributed
Interpreted
Robust
Secure
Architecture neutral
Portable
High performance
Multithreaded
With most programming languages, you either compile or interpret a program so that you can
run it on your computer. The Java programming language is unusual in that a program is both
compiled and interpreted. With the compiler, first you translate a program into an intermediate
language called Java byte codes the platform-independent codes interpreted by the
interpreter on the Java platform. The interpreter parses and runs each Java byte code instruction
7/31/2019 Ete Capston
32/62
on the computer. Compilation happens just once; interpretation occurs each time the program is
executed. The following figure illustrates how this works.
The Java platform has two components:
The Java Virtual Machine (Java VM)
The Java Application Programming Interface (Java API)
Java Virtual Machine is standardized hypothetical computer, which is emulated inside our
computer by a program. It is base of Java platform and is ported onto various hardware-
based platforms.
The Java API is a large collection of ready-made software components that provide many
useful capabilities, such as graphical user interface (GUI) widgets. The Java API is grouped
into libraries of related classes and interfaces; these libraries are known as packages .
The following figure depicts a program that's running on the Java platform. As the figure
shows, the Java API and the virtual machine insulate the program from the hardware.
TESTING
7/31/2019 Ete Capston
33/62
FUNCTIONAL TESTING : - Functional testing is a type of black box testing that
bases its test cases on the specifications of the software component under test. Functions are
tested by feeding them input and examining the output, and internal structure program is rarely
structured.
Test case design focuses on a set technique for the cases that meet overall testing objectives. In
test case design phase, the engineer creates a series of test cases that are, intended to
demolish the software that has been built.
Any software product can be tested in one of two ways:
Knowing the specific function that a product has been designed to perform, test can
be conducted that demonstrate each function is fully operational, at the same timesearching for errors in each function. This approach is known as black box testing.
Knowing the internal working of a product, test can be conducted to ensure that
internal operation performs according to specification and all internal components
have been adequately exercised. This approach is know as white-box testing.
Black box testing is designed to uncover errors. They are used to demonstrate that software
function are operations; that input is properly accepted and output is correctly produced; andthat integrity of external information is maintained (e.g. data files.). A black box examines
some fundamental aspects of a system with little regard for the internal logical structure of the
software.
White box testing of software is predicated on close examination of procedural details.
Providing test cases that exercise specific set of conditions and loops test logical paths through
the software. The state of the program may be examined at various points to determine if the
expected or asserted status corresponds to the actual status.
STRUCTURAL TESTING: - Structural system testing is designed to verify that the
developed system and programs work. The objective is to ensure that the product designed is
7/31/2019 Ete Capston
34/62
structurally sound and will function correctly. It attempts to determine that the technology has
been used properly and that when all the component parts are assembled they function as a
cohesive unit.
The quality of a product or item can be achieved by ensuring that the product meets the
requirements by planning and conducting the following tests at various stages
Unit Tests at unit level, conducted by development team, to verify individual
standalone units.
Integration Tests after two or more product units are integrated conducted by
development team to test the interface between the integrated units.
Functional Test prior to the release to validation manager, designed and conducted
by the team independent of designers and coders, to ensure the functionality provided
against the customer requirement specifications.
Acceptance Tests prior to the release to validation manger, conducted by the
development team, if any supplied by the customer.
Validation Tests prior to customer, conducted by the validation team to validate the
product against the customer requirement specifications and the user documentation.
Regression Testing is the re-execution of some subsets of tests already been
conducted to ensure that changes are not propagated unintended side effects.
LEVEL OF TESTING: -
7/31/2019 Ete Capston
35/62
In order to uncover the errors present in different phases, we have the concept of levels of
testing. The basic levels of testing are:
Client Needs Acceptance Testing
Requirements System Testing
Design Integration Testing
Code Unit Testing
Fig. Level of Testing
Integration Testing
In this process of testing it is incremented approach to construction of program structure.
Modules are integrated moving downward beginning with main control module. Modules
subordinate structure to main control module is incorporated into structure. This form of testing
is performed of software in five steps: -
1. Main control module is used as test driver and stubs (modules) are
substituted for all components subordinate to main control.
2. Depending on integration selected subordinate stubs are replaced one at
a time.
3. Tests are conducted as each component is integrated.4. On completing each set of tests another stub is replaced.
5. It is also tested to ensure that new errors have not been introduced.
In well-factored program structure decision-making occurs at upper levels in hierarchy and
therefore encountered first. If major control problem do exist, early recognition is essential.
This is termed as top-down integration testing.
Bottom-up integration testing begins construction and testing with atomic modules as the
components are integrated from the bottom-up, processing required for componentssubordinate to a given level is always available and the need for stubs is eliminated.
7/31/2019 Ete Capston
36/62
Low-level components are combined into clusters that perform a specific software function.
A driver (a control program for testing) is written to coordinate test case input and output.
The cluster is tested.
Drivers are removed and clusters are combined moving upward in the program structure.
Each time a new module is added as part of integration testing, the software changes. New data
flow paths are established, new I/O can occur, and new control logic is invoked. These changes
cause problems with functions that previously worked flawlessly. In context of integration test
strategy
Successful tests result in discovery of errors and errors must be corrected. When software is
corrected some aspect of software configuration is changed.
Smoke testing
It is an integration testing that is commonly used when shrink wrapped software products are
being developed. It is designed as pacing mechanism for time critical projects, allowing us to
assess the project on frequent basis. This consists of steps: -
Software components are translated into code are integrated into a build. A build
includes all data files, libraries, reusable modules and engineered components.
A series of tests is designed to expose errors that will keep the build from properly
performing its function.
The build is integrated with other builds and the entire product is smoke tested daily.
Validation Testing prior to customer, conducted by the validation team to validate the product
against the customer requirement specifications and the user documentation.
TESTING THE PROJECT: -The best testing is to test each subsystem separately as we have done in our project. It is best to
test a system during the implementation stage in form of small sub steps rather then large
7/31/2019 Ete Capston
37/62
chunks. We have tested each module separately i.e. have completed unit testing first and
system testing was done after combining /linking all different Modules with different menus
and thorough testing was done. Once each lowest level unit has been tested, units are combined
with related units and retested in combination. These proceeds hierarchically bottom-up until
the entire system is tested as a whole. Hence we have used the Top Up approach for testing our
system.
TEST CASES
Test case For Log In:
Project : - Online Examination System.Objective : - To check whether user name & Passwordvalid or invalid.Page : - Login Screen.Test Data : - User=admin and Password =1234.
Sr No Steps Data Expected Data Actual result status
1 Enter user name ,passwordand press submit button.
Should navigate toadmins page
Pass
2 Enter username and press
submit button
Should Display
message box please
fill all the fields
Pass
3 Enter password and press
submit button.
Should display
message box please
fill all the fields.
Pass
4 Enter blank user name and
blank password and presssubmit button.
Should display a
message box pleasefill all the fields
Pass
5 Enter wrong user and
password.
Should display a
message box Invalid
ID or Password
Pass
Test case For Navigation:Project : - Online Examination System.
7/31/2019 Ete Capston
38/62
Objective : - To check whether different hyperlinks areworking properly or not.Page : - home page (default page).
Sr No Steps Data Expected Data Actual result status
1 Click on homepage
hyperlink menu
Should display home
page
Pass
2 Click on new
questionnaries hyperlink
menu
Should Display
questionnaries details
page
Pass
3 Click on quiz hyperlink menu
Should display quizdetails page
Pass
4 Click on show result
hyperlink menu
Should display result
details page
Pass
5 Click on login hyperlink
menu
Should display
respective login page
Pass
6 Click on queries
hyperlink menu
Should display
queries details page
pass
7 Click on feedback
hyperlink menu
Should display
feedback form page
pass
IMPLEMENTATION
7/31/2019 Ete Capston
39/62
IMPLEMENTATION OF THE PROJECT: - The result indicated a considerable time
saving with the candidate system and comes out with fast and efficient development.
Implementation is the process of having system personnel check out and put new software into
use, trained user, installs the new application and constructs any strategies. Sometimes system
developers may choose to pilot the operation in only area of the firm, say in one department or
with only one or two persons. Sometimes they run old and new systems together to compare
the result.
The implementation phase is less creative than system design. Implementation means the
process of converting a new or a revised system design into an operational one. It is primarily
concerned with user training, site preparation, and file conversion. When the candidate system
is linked to terminals or remote sites, the telecommunication network and tests of the network
along with the system are also included under implementation.
Implementation is the realization of an application, or execution of a plan, idea, model,design,
specification, standard, algorithm, orpolicy.
In computer science, an implementation is a realization of a technical specification or algorithm
as aprogram, software component, or othercomputer system. Many implementations may exist
for a given specification or standard. For example, web browsers contain implementations of
World Wide Web Consortium-recommended specifications, and software development tools
contain implementations ofprogramming languages.
In the IT Industry, implementation refers to post-sales process of guiding a client from
purchase to use of the software or hardware that was purchased. This includes Requirements
Analysis, Scope Analysis, Customizations, Systems Integrations, User Policies, User Training
and Delivery. These steps are often overseen by a Project Manager using Project Management
Methodologies set forth in the Project Management Body of Knowledge. Software
Implementations involve several professionals that are relatively new to the knowledge based
economy such as Business Analysts,Technical Analysts, Solutions Architect, and Project
Managers..
POST IMPLEMENTATION AND SOFTWARE
MAINTENANCE: - After the installation phase is completed and the user staff is
http://en.wikipedia.org/wiki/Planhttp://en.wikipedia.org/wiki/Scientific_modellinghttp://en.wikipedia.org/wiki/Designhttp://en.wikipedia.org/wiki/Specificationhttp://en.wikipedia.org/wiki/Standardizationhttp://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Policyhttp://en.wikipedia.org/wiki/Computer_sciencehttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Software_componenthttp://en.wikipedia.org/wiki/Computer_systemhttp://en.wikipedia.org/wiki/Web_browserhttp://en.wikipedia.org/wiki/World_Wide_Web_Consortiumhttp://en.wikipedia.org/wiki/Programming_languageshttp://en.wikipedia.org/wiki/Business_analysishttp://en.wikipedia.org/wiki/Technical_analysishttp://en.wikipedia.org/wiki/Solutions_Architecthttp://en.wikipedia.org/wiki/Planhttp://en.wikipedia.org/wiki/Scientific_modellinghttp://en.wikipedia.org/wiki/Designhttp://en.wikipedia.org/wiki/Specificationhttp://en.wikipedia.org/wiki/Standardizationhttp://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Policyhttp://en.wikipedia.org/wiki/Computer_sciencehttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Software_componenthttp://en.wikipedia.org/wiki/Computer_systemhttp://en.wikipedia.org/wiki/Web_browserhttp://en.wikipedia.org/wiki/World_Wide_Web_Consortiumhttp://en.wikipedia.org/wiki/Programming_languageshttp://en.wikipedia.org/wiki/Business_analysishttp://en.wikipedia.org/wiki/Technical_analysishttp://en.wikipedia.org/wiki/Solutions_Architect7/31/2019 Ete Capston
40/62
adjusted to the changes created by the candidate system, evaluation and maintenance begin.
Like any system, there is an aging process that requires periodic maintenance of hardware and
software. If the new information is inconsistent with the design specifications, then changes
have to be made. Hardware also requires periodic maintenance to keep in tune with design
specifications. The importance of maintenance is to continue to bring the new system to
standards.
For the maintenance it has to be regularly checked whether all the devices are working
properly. If any of the devices on network is not working then that has to be checked and
amended in time.
PROJECT LEGACY
CURRENT STATUS OF THE PROJECT: - Till now, each modules, from index
page to thanks page are working so fine, and the result of each pages are meeting to the
requirements very well. The current status of the project is that the basics of discovering and
starting the projects are functional.
REMAINING AREAS OF CONCERN: -No remaining areas were left anymore.
All the modules have been accomplished with required controls.
TECHNICAL AND MANEGERIAL LESSONS LEARNT: - During the
development of system, I have learnt so many assets about tools, system language and many
more like:
1) I got to know how the classes(eg dataReader, dataset) fetches data and create table.
2)Moreover, files like Class file helps me to create numerous method.
Complete coding structure :
Login page:
7/31/2019 Ete Capston
41/62
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import java.sql.*;
import java.io.*;
public class login4 extends JFrame implements ActionListener
{
// for login
ResultSet rs,rs1;
Statement st,st1;
Connection con,con1;
Font f=new Font("TimesNewRoman",Font.BOLD,15);
Font f1=new Font("TimesNewRoman",Font.BOLD,25);
int x=230,y=170,h=20;
int chk=1;
int qn=2;
JLabel user,pwd,sys;
JTextField utf;
JPasswordField ptf;
JButton ok,cancel;
String str1= "";
String str2= "";
String k = "";
JLabel l1=new JLabel();
JDesktopPane jdp =new JDesktopPane();
Container cp=getContentPane();
public login4()
7/31/2019 Ete Capston
42/62
{
setBounds(100,50,800,570);
sys =new JLabel("ONLINE TESTING SYSTEM");
sys.setBounds(220,70,580,80);
sys.setFont(f1);
jdp.add(sys);
user=new JLabel("USER NAME");
pwd=new JLabel("PASSWORD");
utf=new JTextField(20);
ptf=new JPasswordField(15);
ok=new JButton("OK");
cancel=new JButton("CANCEL");
user.setBounds(x,y,80,25);
utf.setBounds(x+90,y,150,25);
utf.setToolTipText("ENTER USER NAME ");
pwd.setBounds(x,y+50,80,25);
ptf.setBounds(x+90,y+50,150,25);
ptf.setToolTipText("ENTER YOUR PASSWORD");
ok.setBounds(x+90,y+110,60,25);
cancel.setBounds(x+160,y+110,80,25);
l1.setBounds(x+90,y+200,300,25);
//setDefaultCloseOperation(EXIT_OFF_CLOSE);
ok.addActionListener(this);
cancel.addActionListener(this);
ptf.addActionListener(this);
jdp.add(user);
jdp.add(pwd);
jdp.add(utf);
jdp.add(ptf);
jdp.add(ok);
7/31/2019 Ete Capston
43/62
jdp.add(cancel);
jdp.add(l1);
l1.setFont(f);
utf.requestFocus();
cp.add(jdp);
setVisible(true);
}
public void actionPerformed(ActionEvent ae)
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("Jdbc:Odbc:exam");
}
catch(Exception e)
{
System.out.println(e);
}
Object s =ae.getSource();
if(s==ok)
{
str1=utf.getText();
String temp="";
str2="";
char input[] =ptf.getPassword();
for(int i=0;i
7/31/2019 Ete Capston
44/62
}
try
{
st=con.createStatement();
rs=st.executeQuery("SELECT * from user");
while(rs.next())
{
if(chk==1)
{
if(str1.equals(rs.getString(1))&&str2.equals(rs.getString(3)))
{
l1.setText("correct");
menus m008=new menus();
m008.setVisible(true);
this.dispose();
chk=0;
}
else
{
l1.setText("incorrect user name or passward ");
chk=1;
}
}
}
}
catch(Exception e)
{
System.out.println(e);
}
}
7/31/2019 Ete Capston
45/62
else if(s==cancel)
{
utf.setText("");
ptf.setText("");
l1.setText("");
System.exit(1);
}
}
public static void main(String str[])
{
login4 log=new login4();
}
}
7/31/2019 Ete Capston
46/62
7/31/2019 Ete Capston
47/62
7/31/2019 Ete Capston
48/62
Menu coding:
import java.awt.*;
import java.awt.event.*;
import java.awt.MenuItem;
public class menus extends Frame implements ActionListener
{
MenuBar mb=new MenuBar();
Menu m1=new Menu("Area of interest ");
Menu m2 =new Menu("Help ");
Menu m3=new Menu("Quit");MenuItem m11=new MenuItem("Computers");
MenuItem m12=new MenuItem("General Knowledge");
MenuItem m13=new MenuItem("English");
MenuItem m21=new MenuItem("About Help");
MenuItem m22=new MenuItem("About Project");
MenuItem m31=new MenuItem("Exit");
/*MenuItem m131=new MenuItem("C ");
MenuItem m132=new MenuItem("C++ ");
MenuItem m133=new MenuItem("JAVA ");
MenuItem m134=new MenuItem("Visual Basic");
MenuItem m135=new MenuItem("ORACLE ");*/
Font f=new Font("TimesRoman",Font.BOLD,16);
Frame f1;
public static void main(String args[])
{
new menus().setVisible(true);
}
public menus()
{
7/31/2019 Ete Capston
49/62
super("ONLINE EXAM");
setSize(800,600);
setBackground(Color.lightGray);
setLayout(null);
setMenuBar(mb);
m1.setFont(new Font("TimesRoman", Font.BOLD,16));
m2.setFont(new Font("TimesRoman", Font.BOLD,16));
m3.setFont(new Font("TimesRoman", Font.BOLD,16));
mb.add(m1);
mb.add(m2);
mb.add(m3);
m1.add(m11);
m1.add(m12);
m1.add(m13);
m2.add(m21);
m2.add(m22);
m3.add(m31);
/*m13.setEnabled(false);
m13.add(m131);
m13.add(m132);
m13.add(m133);
m13.add(m134);
m13.add(m135);*/
setVisible(true);
m11.addActionListener(this);
7/31/2019 Ete Capston
50/62
m12.addActionListener(this);
m13.addActionListener(this);
m2.addActionListener(this);
m3.addActionListener(this);
m21.addActionListener(this);
m22.addActionListener(this);
m31.addActionListener(this);
/*m131.addActionListener(this);
m132.addActionListener(this);
m133.addActionListener(this);
m134.addActionListener(this);
m135.addActionListener(this);*/
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==m11)
{
comp m009=new comp(1);
m009.setVisible(true);
this.dispose();
}
if(e.getSource()==m12)
{
gen m009=new gen(1);
m009.setVisible(true);
this.dispose();
}
/* if( (e.getSource()==m131) || (e.getSource()==m132) || (e.getSource()==m133) ||
(e.getSource()==m134) || (e.getSource()==m135) )
{
comp cm=new comp(1);
cm.setVisible(true);
7/31/2019 Ete Capston
51/62
this.dispose();
}*/
if(e.getSource()==m21)
{
mhelp m009=new mhelp();
m009.setVisible(true);
}
if(e.getSource()==m13)
{
eng en=new eng(1);
en.setVisible(true);
this.dispose();
}
if(e.getSource()==m31)
{
this.dispose();
System.exit(0);
}
}
}
7/31/2019 Ete Capston
52/62
7/31/2019 Ete Capston
53/62
import java.awt.*;
import java.awt.event.*;
public class exam extends Frame implements ActionListener
{
Label l1,l2;
Button b1,b2;
Panel p1,p2,p3;
public static void main(String args[])
{
new exam().setVisible(true);
}
public exam()
{
super("ONLINE EXAM");
setSize(800,600);
setBackground(Color.lightGray);
setLayout(new BorderLayout());
p1=new Panel();
p2=new Panel();
p2.setLayout(null);
l1=new Label("OnLine Exam");
l1.setFont(new Font("TimesRoman",Font.BOLD,25));
l1.setBackground(Color.lightGray);
l1.setAlignment(Label.CENTER);
l2 =new Label("Do you want to appear in exam?",Label.LEFT);
l2.setFont(new Font("TimesRoman",Font.BOLD,20));
l2.setBounds(270,120,300,50);
7/31/2019 Ete Capston
54/62
p1.add(l1);
add("North",p1);
add("Center",p2);
b1=new Button("Yes");
b1.setBounds(330,220,50,20);
b1.addActionListener(this);
b2=new Button("No");
b2.setBounds(410,220,50,20);
b2.addActionListener(this);
p2.add(l2);
p2.add(b1);
p2.add(b2);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==b1)
{
frm f1=new frm();
f1.setVisible(true);
this.dispose();
}
if(e.getSource()==b2)
{
this.dispose();
System.exit(0);
}
}
7/31/2019 Ete Capston
55/62
Result coding:
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.*;
public class cresult extends Frame implements ActionListener
{
Label head=new Label("EXAMINATION SYSYTEM ");
Label name=new Label("Name");Label total=new Label("Total Marks");
Label min=new Label("Minimum Marks");
Label per=new Label("Percentage");
String uans[]=new String[40];
String cans[]=new String[40];
static int earn=0,i=1;
TextField n1=new TextField();
TextField t1=new TextField();
TextField m1=new TextField();
TextField per1=new TextField();
Button review=new Button("Review Answer");
Button exit=new Button("Exit");
Font f=new Font("TimesRoman",Font.BOLD,16);
public static void main(String args[])
{
new cresult().setVisible(true);
}
7/31/2019 Ete Capston
56/62
public cresult()
{
super("ONLINE EXAM");
setSize(800,600);
setBackground(Color.lightGray);
setLayout(new BorderLayout());
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("jdbc:odbc:exam");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("SELECT [answer] FROM answer");
System.out.print("user ans ");
while(rs.next())
{
uans[i]=rs.getString(1);
System.out.print(" "+uans[i]);
i++;
}
i=1;
System.out.println();
//con.close();
Statement stmt1=con.createStatement();
ResultSet rs1=stmt1.executeQuery("SELECT [correct] FROM
computer");
System.out.print("correct ans");
while(rs1.next())
{
cans[i]=rs1.getString(1);
System.out.print(" "+cans[i]);
i++;
7/31/2019 Ete Capston
57/62
}
i=1;
Statement stmt2=con.createStatement();
ResultSet rs2=stmt2.executeQuery("SELECT [name] FROM user");
while(rs2.next())
n1.setText(rs2.getString(1));
while(i
7/31/2019 Ete Capston
58/62
add("South",p3);
p2.setLayout(null);
p1.add(head);
head.setFont(new Font("TimesRoman",Font.BOLD,20));
p2.add(name);
name.setFont(f);
name.setBounds(150,50,150,20);
p2.add(total);
total.setFont(f);
total.setBounds(150,80,150,20);
p2.add(min);
min.setFont(f);
min.setBounds(150,110,150,20);
p2.add(per);
per.setFont(f);
per.setBounds(150,140,150,20);
p2.add(n1);
n1.setFont(f);
n1.setBounds(300,50,150,20);
p2.add(t1);
t1.setFont(f);
t1.setBounds(300,80,150,20);
t1.setText("30");
p2.add(m1);
m1.setFont(f);
m1.setBounds(300,110,150,20);
m1.setText("12");
7/31/2019 Ete Capston
59/62
p2.add(per1);
per1.setFont(f);
per1.setBounds(300,140,150,20);
per1.setText(p+"%");
p3.add(review);
review.setFont(f);
review.addActionListener(this);
p3.add(exit);
exit.setFont(f);
exit.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==review)
{
compans cn=new compans();
cn.setVisible(true);
this.dispose();
}
if(e.getSource()==exit)
{
this.dispose();
System.exit(0);
}
}
}
7/31/2019 Ete Capston
60/62
7/31/2019 Ete Capston
61/62
Appropriate Validation Checks
S.No Test cases Expected
value
Actual value
1 If incorrect username or
password.
Error message
must be
displayed
Displayed
2 If user log in Logout must
be displayed
Displayed
5 changes in marks description The new
description
must be saved
into database
Updated
6 If user log out The home
page must be
displayed
Displayed
7/31/2019 Ete Capston
62/62
REFRENCES:
Complete refernce For java.
Black book of java.
Online help from Java2s.com forum website
www.java.sun.com
http://www.java.sun.com/http://www.java.sun.com/