0% found this document useful (0 votes)
252 views116 pages

"Online Examination System": Project Report ON

The document describes a project report for an online examination system. It includes sections on introduction, system analysis, feasibility study, project planning, software requirements specification, system design, screenshots, testing techniques and conclusion. The proposed online examination system would allow multiple users to take online tests on various topics and view results instantly, replacing the existing manual paper-based examination system. It aims to be easy to use, platform independent and reduce paperwork.

Uploaded by

himanshu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
252 views116 pages

"Online Examination System": Project Report ON

The document describes a project report for an online examination system. It includes sections on introduction, system analysis, feasibility study, project planning, software requirements specification, system design, screenshots, testing techniques and conclusion. The proposed online examination system would allow multiple users to take online tests on various topics and view results instantly, replacing the existing manual paper-based examination system. It aims to be easy to use, platform independent and reduce paperwork.

Uploaded by

himanshu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 116

1|Page

PROJECT REPORT
ON

“ONLINE EXAMINATION
SYSTEM”

Submitted by:

In partial fulfilment for the award of the degree of

MASTER OF COMPUTER APPLICATIONS

HIMANSHU GOEL

Enrolment Number : 1101411

Under the guidance of Mrs .NEELAM SINGH


2|Page

CERTIFICATE

This is to certify that this project report entitled ‘ONLINE EXAMINATION


SYSTEM’ by Himanshu Goel submitted in partial fulfilment of the requirement for the
degree of MASTER OF COMPUTER APPLICATIONS Graphic Era Deemed
University, Dehradun during the academic year 2016-18,is a bonafide record of work
carried under our guidance and supervision.

Mrs .Neelam Singh

Faculty in I.T Department,

Graphic Era University


3|Page

ACKNOWLEDGEMENT

A mini project is a golden opportunity for learning and self-development. I consider


myself very lucky and honoured to have so many wonderful people who lead me through
the completion of this project.

My grateful thanks to Mrs Neelam Singh who in spite of being busy with her duties took
time out to hear, guide and keep me on the correct path. A humble ‘Thank you’ mam.

Last but not the least there were so many people who shared valuable information that
helped in the successful completion of the project.
4|Page

TABLE OF CONTENTS

1. Introduction of topic………………………………………………..5
2. System Analysis…………………………………………………....8
3. Feasibility Study…………………………………………………...11
4. Project Planning……………………………………………………14
5. Software Requirement Specification…………………………….....19
6. Software Engineering Paradigm……………………………………21
7. System Design……………………………………………………...23
8. Screenshots………………………………………………………….28
9. Testing Techniques…………………………………………………44
10. Conclusion…………………………………………………………..52
11. Bibliography…………………………………………………………54
5|Page

INTRODUCTION
6|Page

INTRODUCTION

Online Exams is being launched because a need for a destination that is beneficial for
both
institutes and students. With this site, institutes can register and host online exams.
Students can give exams and view their results. This site is an attempt to remove the
existing flaws in the manual system of conducting exams.
In the paper we present techniques that are pertinent to the elements of assessment
process: answers submission, computerized grading, and feedback after submission.

As the modern organizations are automated and computers are working as per the
instructions, it becomes essential for the coordination of human beings, commodity and
computers in a modern organization.


There are numerous web based Examination applications available that allows users t
over Internet.

The purpose of this project is to implement a php web based application that will
allow users to give online examination using an Internet connection.

This project plays an important role in giving examination



GUI: Easy to use GUI (Graphical User Interface), hence any user with minimal
knowledge of operating a system can use the software.

Platform independence: This application can be used on any operating system.

Clients: Number of users can be connected without any performance degradation of


the server.
7|Page

FEATURES

 Support of multiple users.


 Easy access.
 Take tests on various topics.
 User friendly system.
 Easy to maintain.
 Simple and easy interface for both end user and admin.

Problem Identification:

 The main purpose of this project is to provide various topics for test by allowing users
to take test on various topics and identify their potential.
8|Page

PROPOSED SYSTEM:

To overcome the drawbacks of the existing system, the proposed system has
been evolved. This project aims to reduce the paper work and save time to test the
abilities of users in different fields.

The system to be developed here is a easy and efficient platform to give tests on
various topics.

BENEFITS:
 Allow to give test on various topics.
 Instantly display the result, so no need to wait for the result.
 There is a centralized control. Servers help in administering the whole setup.
 Changes can be made easily by just upgrading the server or client programming.


9|Page

SYSTEM
ANALYSIS
10 | P a g e

Phase 1: Study and Analysis Phase

In this phase, the data, facts and figures will be generated by checking various documents
related to system. It also covers interviews of the persons who belong to the system. The
problems in the current system will be identified and necessary improvements will be
recommended. Thus a new system, as a solution will be proposed. The emphasis is on the
type of the information, the new system should provide, the required frequency and
accuracy of results and other considerations. The activities of analysis phase will be least
structured and more people oriented.

Phase 2: Design Phase

The design of a system produces the details that state how a system will meet the
requirements identified during system analysis. In this phase, the detailed specifications
for the new system will be formulated. They will describe its features: the outputs, inputs,
files and databases, procedures-all in a manner that meets project requirements.

Following the analysis of the existing system, the next step is to develop the Information
System Architecture and Enterprise Data Model (EDM) that will describe effectively the
existing system. The conceptual model will lead to the development of an Enhanced
Entity Relationship Diagram. This will be followed by the development of relational
model that describes the tables (or relations) that can be suitably implemented in any
modern relational DBMS software like Oracle.

Phase 3: Coding and Implementation Phase

The activity following logical design, which produces program software, files and a
working system, will be carried out. This process will be initiated by first identifying the
keys factors responsible for the layout of the software. The many suggestions received at
a previous stage are analyzed and categorized according to their nature. Then the
solutions of these problems will be designed and developed. The physical model will
cover all the physical model will cover all the physical file organization issues leading to
11 | P a g e

the actual relations that will be implemented on to the system. The query implementation
will demonstrate the various queries that will be executed on the relations created during
design phase. This will be followed by the development of user interfaces and their
connectivity with database.

Phase 4: Testing

Nothing in this world is perfect. Testing is the process of executing with explicit intention
of finding errors that is, making the program fail. In this process, the close examination of
procedural details will be done. During this phase, the input, output and external data will
be tested. It checks whether the input data is correct and that the desired output is
obtained or not. All the steps above will lead to an application that will suitably
demonstrate the objectives already described.
12 | P a g e

FEASIBILITY
STUDY
13 | P a g e

FEASIBILITY ANALYSIS

Technical Feasibility - This project doesn’t required advance and higher technology. It
requires only knowledge of PHP. Minimum Hardware requirement in this project are-

 Windows 7 SP1
 RAM 2 GB
 Disk space:500 MB
 Processor: Minimum Pentium 2 266 MHz processor.
 Browsers: Internet Explorer 9 and Firefox.

Economic Feasibility- The development of the project does not cost too much as it does
not require any extra hardware. As project is based on simple PHP . The tool which we
used was Brackets . It looks at the financial aspects of the project. It determines whether
the management has enough resources and budget to invest in the proposed system and
the estimated time for the recovery of cost incurred. It also determines whether it is
worthwhile to invest the money in the proposed project. Economic is determines by the
means of cost benefit analysis. The proposed system is economically feasible because the
cost involved in purchasing the hardware and the software are within approachable. The
operating environment costs are marginal. The less time involved also helped in its
economical feasibility.

Operational Feasibility-This is live project. Person using these applications does not
require extra technical or computer skill. It can be easily operated. The operational
feasibility assessment focuses on the degree to which the proposed development projects
fits in with the existing business environment and objectives with regard to development
schedule, delivery date, corporate culture, and existing business processes. To ensure
success, desired operational outcomes must be imparted during design and development.
14 | P a g e

These include such design-dependent parameters such as reliability, maintainability,


supportability, usability, predictability, disposability, sustainability, affordability and
others. These parameters are required to be considered at the early stages of design if
desired operational behaviours are to be realized. A system design and development
requires appropriate and timely application of engineering and management efforts to
meet the previously mentioned parameters. A system may serve its intended purpose
most effectively when its technical and operating characteristics are engineered into the
design. Therefore operational feasibility is a critical aspect of systems engineering that
needs to be an integral part of the early design phases.

The system working is quite easy to use and learn due to its simple but attractive
interface. User requires no special training for operating the system. Technical
performance include issues such as how many clients are connected to server.
Acceptance revolves around the current system and its personnel.
15 | P a g e

PROJECT
PLANNING
16 | P a g e

PROJECT PLANNING

The key to a successful project is in the planning. Creating a project plan is the first thing
you should do when undertaking any kind of project.

Often project planning is ignored in favors of getting on with the work. However, many
people fail to realize the value of a project plan in saving time, money and many
problems.

This article looks at a simple, practical approach to project planning. On completion of


this guide, you should have a sound project planning approach that you can use for future
projects.

Project goal:
A project is successful when the needs of the stakeholders have been met. A stakeholder
is anybody directly or indirectly impacted by the project.

As a first step, it is important to identify the stakeholders in your project. It is not always
easy to identify the stakeholders of a project, particularly those impacted indirectly.
Examples of stakeholders are:

 The project sponsor.

 The customer who receives the deliverables.

 The users of the project outputs.

 The project manager and project team.

Once you understand who the stakeholders are, the next step is to find out their needs.
The best way to do this is by conducting stakeholder interviews. Take time during the
interviews to draw out the true needs that create real benefits. Often stakeholders will talk
about needs that aren't relevant and don't deliver benefits. These can be recorded and set
as a low priority.
17 | P a g e

The next step, once you have conducted all the interviews, and have a comprehensive list
of needs is to priorities them. From the prioritized list, create a set of goals that can be
easily measured. A technique for doing this is to review them against the smart principle.
This way ,it will be easy to know when a goal has been achieved.

Once you have established a clear set of goals, they should be recorded in the project
plan. It can be useful to also include the needs and expectations of your stakeholders.

This is the most difficult part of the planning process completed. It's time to move on and
look at the project deliverables.

Project Deliverables:

Using the goals you have defined in step 1, create a list of things the project needs to
deliver in order to meet those goals. Specify when and how each item must be delivered.

Add the deliverables to the project plan with an estimated delivery date. More accurate
delivery dates will be established during the scheduling phase, which is next.

Project Schedule:
Create a list of tasks that need to be carried out for each deliverable identified in step 2.
For each task identify the following:

 The amount of effort (hours or days) required to complete the task.

 The resource that will carry out the task.

Once you have established the amount of effort for each task, you can work out the effort
required for each deliverable, and an accurate delivery date. Update your deliverables
section with the more accurate delivery dates.

At this point in the planning, you could choose to use a software package such as
Microsoft Project to create your project schedule. Alternatively, use one of the many free
templates available. Input all of the deliverables, tasks, durations and the resources who
will complete each task.
18 | P a g e

A common problem discovered at this point, is when a project has an imposed delivery
deadline from the sponsor that is not realistic based on your estimates. If you discover
this is the case, you must contact the sponsor immediately. The options you have in this
situation are:

 Renegotiate the deadline (project delay).

 Employ additional resources (increased cost).

 Reduce the scope of the project (less delivered).

Use the project schedule to justify pursuing one of these options.

Supporting Plan:
This section deals with plans you should create as part of the planning process. These can
be included directly in the plan.

Human Resource Plan:


Identify by name, the individuals and organizations with a leading role in the project. For
each, describe their roles and responsibilities on the project.

Next, describe the number and type of people needed to carry out the project. For each
resource detail start dates, estimated duration and the method you will use for obtaining
them.

Communications Plan:
Create a document showing that needs to be kept informed about the project and how
they will receive the information. The most common mechanism is a weekly or monthly
progress report, describing how the project is performing, milestones achieved and work
planned for the next period.
19 | P a g e

Risk Management Plan:


Risk management is an important part of project management. Although often
overlooked, it is important to identify as many risks to your project as possible, and be
prepared if something bad happens.

Here are some examples of common project risks:

 Time and cost estimates too optimistic.

 Customer review and feedback cycle too slow.

 Unexpected budget cuts.

 Unclear roles and responsibilities.

 Stakeholder input is not sought, or their needs are not properly understood.

 Stakeholders changing requirements after the project has started.

 Stakeholders adding new requirements after the project have started.

 Poor communication resulting in misunderstandings, quality problems and


rework.

 Lack of resource commitment.

Risks can be tracked using a simple risk log. Add each risk you have identified to your
risk log; write down what you will do in the event it occurs, and what you will do to
prevent it from occurring. Review your risk log on a regular basis, adding new risks as
they occur during the life of the project. Remember, when risks are ignored they don't go
away.
20 | P a g e

SRS
(SOFTWARE
REQUIREMENT
SPECIFICATION)
21 | P a g e

SOFTWARE REQUIREMENT SPECIFICATION

A software requirement specification (SRS) is a description of a software system to be


developed, laying out functional and non-functional requirements, and may include a set
of use cases that describe interactions the users will have with the software.

Software requirements specification establishes the basis for agreement between


customers and contractors or suppliers (in market-driven projects, these roles may be
played by the marketing and development divisions) on what the software product is to
do as well as what it is not expected to do. Software requirements specification permits a
rigorous assessment of requirements before design can begin and reduces later redesign.
It should also provide a realistic basis for estimating product costs, risks, and schedules.

The software requirements specification document enlists enough and necessary


requirements that are required for the project development. To derive the requirements
we need to have clear and thorough understanding of the products to be developed or
being developed. This is achieved and refined with detailed and continuous
communications with the project team and customer till the completion of the software.
22 | P a g e

SOFTWARE
ENGINEERING
PARADIGM
23 | P a g e

SOFTWARE ENGINEERING PARADIGM APPLIED

Software Engineering paradigm refers to the process model the process model used for
this project is Incremental model.

Incremental Approach:

Each increment includes three phases: design, implementation and analysis. During the
design phase of the first increment, the functionality with topmost priority from the
project activity list is selected and the design is prepared. In the implementation phase,
the design is implemented and tested. In the analysis phase, the functional capability of
the partially developed product is analyzed. The development process is repeated until all
the functions of the project are implemented.
Consider an example where a bank wants to develop software to automate the banking
process for insurance services, personal banking, and home and automobile loans. The
bank wants the automation of personal banking system immediately because it will
enhance the customer services. You can implement the incremental approach to develop
the banking software. In the first increment, you can implement the personal banking
feature and deliver it to the customer. In the later increments, you can implement the
insurance services, home loans, and automobile loans features of the bank.
The regulation of the incremental representation is that it is applicable only to large and
bulky applications. This is because it is hard to break it into small serviceable increments.
24 | P a g e

SYSTEM DESIGN
25 | P a g e

DATA FLOW DIAGRAM

A data-flow diagram (DFD) is a graphical representation of the "flow" of data


through an information system. DFDs can also be used for the visualization of data
processing (structured design).

On a DFD, data items flow from an external data source or an internal data store to an
internal data store or an external data sink, via an internal process.

A DFD provides no information about the timing or ordering of processes, or about


whether processes will operate in sequence or in parallel. It is therefore quite different
from a flowchart, which shows the flow of control through an algorithm, allowing a
reader to determine what operations will be performed, in what order, and under what
circumstances, but not what kinds of data will be input to and output from the system, nor
where the data will come from and go to, nor where the data will be stored (all of which
are shown on a DFD).

When it comes to conveying how information data flows through systems (and how that
data is transformed in the process), data flow diagrams (DFDs) are the method of choice
over technical descriptions for three principal reasons.

 DFDs are easier to understand by technical and nontechnical audiences.


 DFDs can provide a high level system overview, complete with boundaries and
connections to other systems.
26 | P a g e

DATA FLOW:

The data flow is used to describe the movement of information from one part of the
system to another part. Flows represent data in motion. It is a pipe line through which
information flows.
Data flow is represented by an arrow.

DATA FLOW

PROCESS
A rectangle represents a process that transforms incoming data to outgoing data. Process
shows a part of the system that transform inputs to outputs.

PRCOESS

EXTRENAL ENTITY
A square defines a source or destination of system data. External entities represent any
entity that supplies or receive information from the system but is not a part of the system.

EXTERNAL

ENTITY

DATA STORE
The data store represents a logical file. A logical file can represent either a data store
symbol which can represent either a data structure or a physical file on disk. The data
store is used to collect data at rest or a temporary repository of data. It is represented by
open rectangle

DATA STORE
27 | P a g e

OUTPUT
The output symbol is used when a hard copy is produced and the
user of the copies cannot be clearly specified or there are several users of
the output.

OUTPUT
28 | P a g e

LEVEL 0 DFD

ADMINISTRATION

MANAGES

MANAGES

STUD
ENT

RECORD

EXAMINATION

SYSTEM

GIVES TEST

STUDENT
TEST RECORD
29 | P a g e

LEVEV 1 DFD
30 | P a g e

LEVEL 2 DFD

INVALID

USER
31 | P a g e

Database online Examination System

TABLE STUCTUE FOR THE STUDENT_INFO


32 | P a g e

TABLE STRUCTURE FOR THE ANSWERES

TABLE STRUCTURE FOR THE QUESTION

TABLE STRUCTURE FOR THE RESULT


33 | P a g e

TABLE STRCUTURE FOR THE SUBJECT

TABLE STRUCTURE FOR THE TEST


34 | P a g e

SCREENSHOTS
35 | P a g e

LOGIN PAGE
36 | P a g e

SING UP PAGE
37 | P a g e

FORGET PASWORD
38 | P a g e

ADMIN

1. REGISTRATION
39 | P a g e

2. CUSTOMIZE TEST
40 | P a g e

3. ADD SUBJECT
41 | P a g e

4. ADD TEST
42 | P a g e

5. ADD QUESTIONS
43 | P a g e

TEST
44 | P a g e

RESULT
45 | P a g e

CODE
OF MODULS
46 | P a g e

Code for login and subject select

Index.php

<?php

session_start();

?>

<html>

<title>ONLINE TEST SYSTEM</title>

<head>

<link rel="stylesheet" type="text/css" href="index.css">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-


awesome/4.7.0/css/font-awesome.min.css">

</head>

<body>

<form action="login.php" method="post" autocomplete="on"


name="form1">

<div class="top">

<header>

<h1>ONLINE EXAMINATION SYSTEM</h1>

</header>

</div>

<div class="login">
47 | P a g e

<div class="container">

<?php

if(isset($_SESSION['user_id']))

{}

else

echo'<h1>STUDENT LOGIN</h1>

<div class="user">

<i class="fa fa-user" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<input type="text" placeholder=" USER_ID" name="userid"


id="user_name">

</div>

<div class="password">

<i class="fa fa-lock" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<input type="password" placeholder="PASSWORD"


name="user_password" id="user_password">

</div>

<div class="submit">

<button type="submit" name="submit">LOGIN</button>

</div>';

?>
48 | P a g e

<?php

include("connect.php");

extract($_POST);

if(isset($submit))

$cn=mysqli_query($conn,"select * from student_info where


user_id='$userid' and password='$user_password'");

if(mysqli_num_rows($cn)>0)

$_SESSION['user_id']=$userid;

else

$found='N';

include("header.php");

if(isset($_SESSION['user_id']))

$cn=mysqli_query($conn,"select * from subject");

$userid = $_SESSION['user_id'];
49 | P a g e

echo " <p> Welcome $userid </p>";

echo "";

echo "<h2>Please select a subject </h2> ";

echo "<br>";

echo "<ul>";

while($row=mysqli_fetch_row($cn))

echo'<li><a style="display:block;text-align:center"
href=showtest.php?subid='.$row[0].'><font size=2>'.$row[1].'</font></a></li>';

echo"";

//include("choosesubject.php");

exit;

?>

<div class="forget_password">

<h2> Forget passward?<a href="forgetpassword.php">Click


her</a></h2>

</div>

</div>

</div>

<div class="newaccount">
50 | P a g e

<h2><a href="signupstu.php">SIGN UP</a></h2>

</div>

<div class="down">

<p><a href="onlinetestsystem.com"><strong>ONLINE EXAMINATION


SYSTEM 2017</strong> Design & Developed <strong>Himanshu
Goel</strong></a></p>

</div>

</form>

</body>

</html>
51 | P a g e

Code for test choice

Showtest.php

<?php

session_start();

?>

<html>

<title>Online examination System</title>

<head>

<link rel="stylesheet" type="text/css" href="index.css">

<meta name="viewport" content="width=device-width, initial-


scale=1">

<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">

</head>

<body>

<div class="top">

<header>

<h1>ONLINE EXAMINATION SYSTEM</h1>

</header>
52 | P a g e

</div>

<?php

include("header.php");

?>

<div class="login">

<div class="container">

<?php

include("connect.php");

echo"";

echo"";

extract($_GET);

$cn=mysqli_query($conn,"select * from subject where


sub_id=$subid");

$row1=mysqli_fetch_array($cn);

echo"<h1>$row1[1]</h1>";

$cn1=mysqli_query($conn,"select * from test where


sub_id=$subid");

if(mysqli_num_rows($cn1)<1)

echo"no exam is avialable for selected subject";

echo"plz select another quiz";


53 | P a g e

echo"<a href='login.php'>click here to select another subject";

exit;

echo"<center>select the exam for subject</center>";

echo"<br>";

while($row=mysqli_fetch_row($cn1))

echo"";

echo"";

echo"";

echo"<a
href='exam.php?test_id=".$row[0]."&sub_id=".$subid."'>".$row[2]."</a>";

echo"";

echo"";

echo"";

?>

</div>

</div>

</body>

</html>
54 | P a g e

Code for the EXAM and Result

Exam.php

<?php

session_start();

error_reporting(1);

include("connect.php");

if(isset($_GET['sub_id']) && isset($_GET['test_id']))

$_SESSION['sid']=$_GET['sub_id'];

$_SESSION['tid']=$_GET['test_id'];

if(!isset($_SESSION['sid']) || !isset($_SESSION['tid']))

header("location:login.php");

?>

<html>

<title>EXAM</title>

<head>

<link rel="stylesheet" type="text/css" href="addques.css">


55 | P a g e

<meta name="viewport" content="width=device-width, initial-


scale=1">

<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">

<link rel="stylesheet"
href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothne
ss/jquery-ui.css">

<script
src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></sc
ript>

<script
src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-
ui.min.js"></script>

</head>

<body ng-app="">

<div id="navigation">

<h1>ONLINE EXAMINATION SYSTEM</h1>

</div>

<?php

include("header.php");

?>

<div class="clear"></div>
56 | P a g e

<form name="form25" method="post" action="exam.php"


autocomplete="on" onsubmit="">

<div id="container">

<?php

$tid = $_SESSION['tid'];

$cn=mysqli_query($conn,"select * from question where


test_id='$tid'") or die(mysqli_error());

if(!isset($_SESSION['qn']))

$_SESSION['qn']=0;

mysqli_query($conn,"delete from answere where


session_id='" . session_id() ."'") or die(mysqli_error());

$_SESSION['trueans']=0;

else

if(isset($_POST['submit'])){

$submit = $_POST['submit'];

if(isset($_POST['ans'])){
57 | P a g e

$ans = $_POST['ans'];

if($submit=='Next Question')

mysqli_data_seek($conn,$_SESSION['qn']);

$row=mysqli_fetch_row($cn);

mysqli_query($conn,"insert into
answere(session_id, test_id, ques_desc,
ans1,ans2,ans3,ans4,true_ans,your_ans) values ('".session_id()."',
$tid,'$row[2]','$row[3]','$row[4]','$row[5]', '$row[6]','$row[7]','$ans')") or
die(mysqli_error());

if($ans==$row[7])

$_SESSION['trueans']=$_SESSION['trueans']+1;

$_SESSION['qn']=$_SESSION['qn']+1;

else if($submit=='Get Result')

mysqli_data_seek($cn,$_SESSION['qn']);
58 | P a g e

$row= mysqli_fetch_row($cn);

mysqli_query($conn,"insert into
answere(session_id, test_id, ques_desc,
ans1,ans2,ans3,ans4,true_ans,your_ans) values ('".session_id()."',
$tid,'$row[2]','$row[3]','$row[4]','$row[5]', '$row[6]','$row[7]','$ans')") or
die(mysqli_error());

if($ans==$row[7])

$_SESSION['trueans']=$_SESSION['trueans']+1;

echo "<div> <h1>Your Results <h1></div> ";

$_SESSION['qn']=$_SESSION['qn']+1;

echo "<div> ";

echo "<div class='menu_options'> ";

echo "<Table align='center'><td>Total


Question<td> ".$_SESSION['qn'];

echo "<tr><td>True
Answer<td>".$_SESSION['trueans'];

$w=$_SESSION['qn']-$_SESSION['trueans'];

echo "<tr><td>Wrong Answer<td> ". $w;

echo "</table>";

echo "</div>";
59 | P a g e

echo "</div>";

$ta=$_SESSION['trueans'];

mysqli_query($conn,"insert into
result(user_id,test_id,test_date,score) values('$userid','$tid',now(),'$ta')") or
die(mysqli_error());

unset($_SESSION['qn']);

unset($_SESSION['sid']);

unset($_SESSION['tid']);

unset($_SESSION['trueans']);

exit;

$cn=mysqli_query($conn,"select * from question where


test_id='$tid'") or die(mysqli_error());

if($_SESSION['qn']>mysqli_num_rows($cn)-1)

unset($_SESSION['qn']);

echo "<div>Some Error Occured ";

session_destroy();

echo "Please <a href=login.php> Start Again</a>";

echo "</div>";

exit;
60 | P a g e

mysqli_data_seek($cn,$_SESSION['qn']);

$row= mysqli_fetch_row($cn);

$result_n=mysqli_query($conn,"select * from test where test_id


='$tid'");

$row_n=mysqli_fetch_assoc($result_n);

echo "<div>";

echo "<h1>" ;

echo "TEST NAME : ";

echo $row_n['test_name'];

echo "<br>" ;

echo " <div><h6>Total number of questions : " ;

echo $row_n['total_ques'];

echo "</h6>" ;

echo "</div>";

echo "</h1>" ;

echo "</div>";

echo "<div> ";

echo "<table width=100%> <tr> <td width=30>&nbsp;<td>


<table border=0>";

$n=$_SESSION['qn']+1;
61 | P a g e

echo "<tR><td><span class=style2>Question ". $n .":


$row[2]</style>";

echo "<tr><td class=style8><input type='radio' name='ans'


value='1'>$row[3]";

echo "<tr><td class=style8> <input type='radio' name='ans'


value='2'>$row[4]";

echo "<tr><td class=style8><input type='radio' name='ans'


value='3'>$row[5]";

echo "<tr><td class=style8><input type='radio' name='ans'


value='4'>$row[6]";

if($_SESSION['qn']<mysqli_num_rows($cn)-1)

echo "<tr><td><div><input type='submit' name='submit'


value='Next Question'> </div></form>";

else

echo "<tr><td><div><input type=submit name=submit


value='Get Result'></div></form>";

echo "</table></table>";

echo '</div>';

?>
62 | P a g e

</div>

</form>

</body>

</html>
63 | P a g e

CODE FOR THE ADMIN

Administration.php

<html>

<title>Adminstration area</title>

<head>

<link rel="stylesheet" type="text/css"


href="adminstrationarea.css">

<meta name="viewport" content="width=device-width, initial-


scale=1">

<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">

<style type="text/css">

a{

text-decoration: none;

</style>

</head>

<body vlink="red" alink="green">

<div class="navigation">

<h1>ONLINE EXAMINATION SYSTEM</h1>


64 | P a g e

</div>

<div class="subnav">

<ul>

<li><a href="admin.php">Logout</a></li>

<li><a href="adminstration2.php">Home</a></li>

</ul>

</div>

<div class="clear"></div>

<div class="aside">

<div class="nav">

<h2>ADMIN</h2>

</div>

<div class="side_bar">

<div class="student">

<i class="fa fa-user" style="font-


size:30px;color:lightgrey;text-shadow:2px 2px 4px #000000"></i>

<span>STUDENTS</span>

</div>

<Ul class="list" style="list-style:none;">

<li>
65 | P a g e

<a href="signup.php">

<i class="fa fa-circle-o"></i>

Register New Student

</a>

</li>

<li>

<a href="sinfocustom.php">

<i class="fa fa-circle-o"></i>

Student Information

</a>

</li>

</Ul>

<div class="examination">

<i class="fa fa-file-text" style="font-


size:30px;color:lightgrey;text-shadow:2px 2px 4px #000000"></i>

<span>EXAMINATION</span>

</div>

<Ul class="list" style="list-style:none;">

<li>

<a href="#">
66 | P a g e

<i class="fa fa-circle-o"></i>

Result

</a>

</li>

<li>

<a href="adminstration2.php">

<i class="fa fa-circle-o"></i>

Customize Test

</a>

</li>

</Ul>

</div >

</div>

<div class="container">

<div class="side">

<h1>Welcome to Adminstrative Area</h1>

</div>

<div class="subcontainer" style=" max-width : 200px;">


67 | P a g e

<table width="250" border="0" cellpadding="5"


cellspacing="0" align="center">

<tr>

<td style="font-family:Arial, Helvetica, sans-serif; font-


size:20px line-height:1.5em ;"><img src="subject.png" alt="" width="42"
height="42" /></td>

<td style="font-family:Arial, Helvetica, sans-serif; font-


size:20px ;line-height:1.5em ; text-decoration:none"><a
href="subadd.php"><strong>Add Subject</strong></a></td>

</tr>

<tr>

<td style="font-family:Arial, Helvetica, sans-serif; font-


size:20px line-height:1.5em ;"><img src="test.png" alt="" width="42"
height="42" /></td>

<td style="font-family:Arial, Helvetica, sans-serif; font-


size:20px ;line-height:1.5em ; text-decoration:none"><a
href="addtest.php"><strong>Add Test</strong></a></td>

</tr>

<tr>

<td width="40"><img src="question.png" width="42"


height="42" /></td>

<td style="font-family:Arial, Helvetica, sans-serif; font-


size:20px ;line-height:1.5em ; text-decoration:none"><a
href="addques.php"><strong>Add Question</strong></a></td>

</tr>
68 | P a g e

</table>

</div>

</div>

</body>

</html>
69 | P a g e

CODE FOR THE ADD TO SUBJECT

Subadd.php

<?php

session_start();

if(isset($_POST['submit'])){

$success=0;

$already=0;

include("connect.php");

error_reporting(1);

extract($_POST);

if(!isset($_SESSION['admin_id']))

header('Location:adminnot.php');

if(strlen($subname)>0)

$cn=mysqli_query($conn,"select* from subject where


sub_name='$subname'");

if(mysqli_num_rows($cn)>0)

$already=1;
70 | P a g e

else{

if(mysqli_query($conn,"insert into subject(sub_name)


values('$subname')"))

$success=1;

else

die(mysqli_error());

?>

<html>

<title>Adminstration area</title>

<head>

<link rel="stylesheet" type="text/css" href="adminstrationarea.css">

<link rel="stylesheet" type="text/css" href="subadd.css">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-


awesome/4.7.0/css/font-awesome.min.css">

<style type="text/css">

a{
71 | P a g e

text-decoration: none;

</style>

</head>

<script>

fuction check()

info=document.form6.subname.value;

if(info.length<1)

alert("please enter the subject name");

document.form6.subname.focus;

return false;

else

return true;

}
72 | P a g e

</script>

<body vlink="red" alink="green">

<div class="navigation">

<h1>ONLINE EXAMINATION SYSTEM</h1>

</div>

<div class="subnav">

<ul>

<li><a href="#">Logout</a></li>

<li><a href="#">Home</a></li>

</ul>

</div>

<div class="clear"></div>

<div class="aside">

<div class="nav">

<h2>ADMIN</h2>

</div>

<div class="side_bar">

<div class="student">

<i class="fa fa-user" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<span>STUDENTS</span>
73 | P a g e

</div>

<Ul class="list" style="list-style:none;">

<li>

<a href="signup.php">

<i class="fa fa-circle-o"></i>

Register New Student

</a>

</li>

<li>

<a href="sinfocustom.php">

<i class="fa fa-circle-o"></i>

Student Information

</a>

</li>

</Ul>

<div class="examination">

<i class="fa fa-file-text" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<span>EXAMINATION</span>

</div>
74 | P a g e

<Ul class="list" style="list-style:none;">

<li>

<a href="#">

<i class="fa fa-circle-o"></i>

Result

</a>

</li>

<li>

<a href="adminstration2.php">

<i class="fa fa-circle-o"></i>

Customize Test

</a>

</li>

</Ul>

</div >

</div>

<form name="form6" method="post" action="subadd.php"


autocomplete="on" onsubmit="return check()">
75 | P a g e

<div class="container">

<div class="side">

<?php

if(isset($success))

if($success)

echo $subname.' Added Successfully';

if(isset($already))

if($already)

echo'Subject already exists';

?>

<h1>ADD SUBJECT</h1>

</div>

<table width="250" border="0" cellpadding="5" cellspacing="0"


align="center">

<tr>

<td style="font-family:Arial, Helvetica, sans-serif; font-size:20px line-


height:1.5em;"><img src="subject.png" alt="" width="42" height="42"/></td>

<td><input type="text" placeholder="Subject name"


name="subname" id="sub_n"></td>

</tr>
76 | P a g e

</table>

<div class="submit4">

<button type="submit" name="submit">ADD</button>

</div>

</div>

</form>

</body>

</html>
77 | P a g e

CODE FOR TEST ADDING

Addtest.php

<?php

session_start();

if(isset($_POST['submit'])){

$success=0;

$already=0;

include("connect.php");

error_reporting(1);

extract($_POST);

if(!isset($_SESSION['admin_id']))

header('Location:adminnot.php');

if(strlen($testname)>0)

$cn=mysqli_query($conn,"select * from test where test_name='$testname'");

if(mysqli_num_rows($cn)>0)

{
78 | P a g e

$already=1;

else{

if(mysqli_query($conn,"insert into test(sub_id,test_name,total_ques)


values('$subid','$testname','$totaln')"))

$success=1;

else

die(mysqli_error());

?>

<html>

<title>admin signup form</title>

<head>

<link rel="stylesheet" type="text/css" href="addtest.css">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-


awesome/4.7.0/css/font-awesome.min.css">

<link rel="stylesheet"
href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jque
ry-ui.css">
79 | P a g e

<script
src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-
ui.min.js"></script>

<script>

function check()

mt=document.form1.testname.value;

if (mt.length<1)

alert("Please Enter Test Name");

document.form1.testname.focus();

return false;

tt=document.form1.totque.value;

if(tt.length<1)

alert("Please Enter Total Question");

document.form1.totque.value;

return false;

return true;
80 | P a g e

</script>

</head>

<body ng-app="">

<div id="navigation">

<h1>ONLINE EXAMINATION SYSTEM</h1>

</div>

<div class="subnav">

<ul>

<li><a href="admin.php">Logout</a></li>

<li><a href="adminstration2.php">Home</a></li>

</ul>

</div>

<div class="clear"></div>

<div class="aside">

<div class="nav">

<h2>ADMIN</h2>

</div>

<div class="side_bar">

<div class="student">
81 | P a g e

<i class="fa fa-user" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<span>STUDENTS</span>

</div>

<Ul class="list" style="list-style:none;">

<li>

<a href="signup.php">

<i class="fa fa-circle-o"></i>

Register New Student

</a>

</li>

<li>

<a href="#">

<i class="fa fa-circle-o"></i>

Student Information

</a>

</li>

</Ul>

<div class="examination">

<i class="fa fa-file-text" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>
82 | P a g e

<span>EXAMINATION</span>

</div>

<Ul class="list" style="list-style:none;">

<li>

<a href="#">

<i class="fa fa-circle-o"></i>

Result

</a>

</li>

<li>

<a href="adminstration2.php">

<i class="fa fa-circle-o"></i>

Customize Test

</a>

</li>

</Ul>

</div >

</div>
83 | P a g e

<form name="form8" method="post" action="addtest.php"


autocomplete="on" onsubmit="return check()">

<div id="container">

<div class="top">

<?php

if(isset($success))

if($success)

echo $testname.' Added Successfully';

if(isset($already))

if($already)

echo'test already exists';

?>

<h1>ADD TEST</h1>

</div>

<table><center>

<tr>

<td width="24%" height="32"><div align="left"><strong>SELECT


SUBJECTS ID</strong></div></td>

<td width="75%" height="32"><select name="subid" id="subid">


84 | P a g e

<?php

include("connect.php");

$cn=mysqli_query($conn,"Select * from subject order by


sub_name");

while($row=mysqli_fetch_array($cn))

if(isset($subid))

if($row[0]==$subid)

echo '<option value='.$row[0].'


selected>'.$row[1].'</option>';

else

echo '<option value='.$row[0].'>'.$row[1].'</option>';

else

echo '<option value='.$row[0].'>'.$row[1].'</option>';

?></select></td>

</tr>

<tr>
85 | P a g e

<td><strong>ENTER TEST NAME</strong></td>

<td><input type="text" value="" name="testname" id="t1"


placeholder="TEST NAME "></td>

</tr>

<tr>

<td><strong>ENTER TOTAL NO OF QUESTIONS</strong></td>

<td><input type="text" value="" name="totaln"


placeholder="NUMBER OF QUESTIONS"></td>

</tr>

</center></table>

<div>

<button type="submit" name="submit">ADD</button>

</div>

</div>

</form>

</body>

</html>
86 | P a g e

CODE FOR THE QUESTION INSRESTION

Addques.php

<?php

session_start();

if(isset($_POST['submit'])){

$success=0;

$already=0;

include("connect.php");

error_reporting(1);

extract($_POST);

if(!isset($_SESSION['admin_id']))

header('Location:adminnot.php');

if(strlen($ques)>0)

$cn=mysqli_query($conn,"select * from question where


ques_desc='$ques'");

if(mysqli_num_rows($cn)>0)

{
87 | P a g e

$already=1;

else{

if(mysqli_query($conn,"insert into
question(test_id,ques_desc,ans1,ans2,ans3,ans4,true_ans)
values('$testid','$ques','$ansone','$anstwo','$ansthree','$ansfour','$anstrue')"))

$success=1;

else

die(mysqli_error());

?>

<html>

<title>ADD QUES</title>

<head>

<link rel="stylesheet" type="text/css" href="addques.css">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-


awesome/4.7.0/css/font-awesome.min.css">
88 | P a g e

<link rel="stylesheet"
href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jque
ry-ui.css">

<script
src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-
ui.min.js"></script>

<script>

function check()

mt=document.form8.ques.value;

if (mt.length<1)

alert("Please Enter Question");

document.form1.ques.focus();

return false;

a1=document.form8.ansone.value;

if(a1.length<1)

alert("Please Enter Answer1");

document.form8.ansone.focus();
89 | P a g e

return false;

a2=document.form8.anstwo.value;

if(a1.length<1)

alert("Please Enter Answer2");

document.form8.anstwo.focus();

return false;

a3=document.form8.ansthree.value;

if(a3.length<1)

alert("Please Enter Answer3");

document.form8.ansthree.focus();

return false;

a4=document.form8.ansfour.value;

if(a4.length<1)

alert("Please Enter Answer4");

document.form8.ansfour.focus();
90 | P a g e

return false;

at=document.form8.anstrue.value;

if(at.length<1)

alert("Please Enter True Answer");

document.form8.anstrue.focus();

return false;

return true;

</script>

</head>

<body ng-app="">

<div id="navigation">

<h1>ONLINE EXAMINATION SYSTEM</h1>

</div>

<div class="subnav">

<ul>

<li><a href="admin.php">Logout</a></li>

<li><a href="adminstration2.php">Home</a></li>
91 | P a g e

</ul>

</div>

<div class="clear"></div>

<div class="aside">

<div class="nav">

<h2>ADMIN</h2>

</div>

<div class="side_bar">

<div class="student">

<i class="fa fa-user" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<span>STUDENTS</span>

</div>

<Ul class="list" style="list-style:none;">

<li>

<a href="signup.php">

<i class="fa fa-circle-o"></i>

Register New Student

</a>

</li>

<li>
92 | P a g e

<a href="">

<i class="fa fa-circle-o"></i>

Student Information

</a>

</li>

</Ul>

<div class="examination">

<i class="fa fa-file-text" style="font-size:30px;color:lightgrey;text-


shadow:2px 2px 4px #000000"></i>

<span>EXAMINATION</span>

</div>

<Ul class="list" style="list-style:none;">

<li>

<a href="#">

<i class="fa fa-circle-o"></i>

Result

</a>

</li>

<li>

<a href="adminstration2.php">

<i class="fa fa-circle-o"></i>


93 | P a g e

Customize Test

</a>

</li>

</Ul>

</div >

</div>

<div id="clear"></div>

<form name="form8" method="post" action="addques.php"


autocomplete="on" onsubmit="return chech()">

<div id="container">

<div class="top">

<?php

if(isset($success))

if($success)

echo $ques.' Added Successfully';

if(isset($already))

if($already)
94 | P a g e

echo'Question already exists';

?>

<h1>ADD QUESTIONS TO TEST</h1>

</div>

<table><center>

<tr>

<td width="24%" height="32"><div align="left"><strong>Select Test


Name </strong></div></td>

<td width="75%" height="32"><select name="testid" id="testid">

<?php

include("connect.php");

$cn=mysqli_query($conn,"Select * from test order by test_name");

while($row=mysqli_fetch_array($cn))

if(isset($testid))

if($row[0]==$testid)

echo '<option value='.$row[0].'


selected>'.$row[2].'</option>';

else
95 | P a g e

echo '<option value='.$row[0].'>'.$row[2].'</option>';

else

echo '<option value='.$row[0].'>'.$row[2].'</option>';

?></select></td>

</tr>

<tr>

<td><strong>QUESTION</strong></td>

<td><textarea name="ques"></textarea></td>

</tr>

<tr>

<td><strong>ENTER ANSWERE.1</strong></td>

<td><input type="text" value="" name="ansone" id="a1"


placeholder="Enter Answere"></td>

</tr>

<tr>

<td><strong>ENTER ANSWERE.2</strong></td>

<td><input type="text" value="" name="anstwo" placeholder="Enter


Answere"></td>
96 | P a g e

</tr>

<tr>

<td><strong>ENTER ANSWERE.3</strong></td>

<td><input type="text" value="" name="ansthree" placeholder="Enter


Answere"></td>

</tr>

<tr>

<td><strong>ENTER ANSWERE.4</strong></td>

<td><input type="text" value="" name="ansfour" placeholder="Enter


Answere" ></td>

</tr>

<tr>

<td><strong>ENTER TRUE ANSWERE</strong></td>

<td><input type="text" value="" name="anstrue" placeholder="Enter


True Answere"></td>

</tr>

</center>

</table>

<div>

<button type="submit" name="submit">ADD</button>

</div>

</div>
97 | P a g e

</form>

</body>

</html>
98 | P a g e

CSS FILE

body{

background-image: url(assets/images/image_for_background.jpg);

padding: 0;

.top{

background-color:rgba(222,184,135,.3);

width: 100%;

.top h1{

text-align: center;

padding: 32px 0px;

font-size: 40px;

font-family:Copperplate Gothic Light, sans-serif;

color: gainsboro;

margin:0;

.login{

border-radius: 25px;

background: rgba(222,184,135,.5);
99 | P a g e

padding: 20px;

width: 300px;

height: 260px;

margin-left:auto;

margin-right:auto;

margin-top: 50px;

color: #333333;

font-family:Copperplate Gothic Light, sans-serif;

.container h1{

margin-top: 5px;

text-align: center;

font-family:Copperplate Gothic Light, sans-serif;

.user{

margin-left: 10px;

margin-top: 30px;

.password{

margin-top: 20px;

margin-left: 10px;
100 | P a g e

.container input{

width: 250px;

height:35;

background-color:rgba(222,184,135,1);

border: rgba(222,184,135,.5);

border-radius: 4px;

text-align: center;

.submit{

margin-top: 20px;

margin-left: 60px;

.container button{

width:200;

height:30;

background-color:#B6AFA5;

.forget_password{

margin-top: 20px;
101 | P a g e

font-family:Copperplate Gothic Light, sans-serif;

font-size: 10px;

margin-left: 65px;

.forget_password a{

text-decoration: none;

color: #333333;

.newaccount{

position: relative;

background-color: #AFB2B7;

width: 300px;

height;180px;

margin : 0 auto ;

border-radius: 0px 0px 15px 15px;

text-align: center;

font-family:Copperplate Gothic Light, sans-serif;

.newaccount a{

text-decoration: none;

color: #333333;
102 | P a g e

.down{

background-color:rgba(222,184,135,.4);

border-radius: 10px;

text-align: center;

.down a{

text-decoration: none;

color: #333333;

.subnav ul {

list-style-type: none;

margin: 0;

padding: 0;

overflow: hidden;

background-color: #333;

.subnav li {

float: right;

}
103 | P a g e

.subnav li a {

display: block;

color: white;

text-align: center;

padding: 14px 16px;

text-decoration: none;

.subnav li a:hover {

background-color: #111;

}
104 | P a g e

TESTING
TECHNIQUES
105 | P a g e

TESTING

Testing is a process, which reveals errors in the program. It is the major quality
measure employed during software development. During testing, the program is executed
with a set of test cases and the output of the program for the test cases is evaluated to
determine if the program is performing as it is expected to perform.

Testing Methodologies

A strategy for software testing must accommodate low-level tests that are necessary to
verify that a small source code segment has been correctly implemented as well as high-
level tests that validate major system functions against customer requirements. A strategy
must provide guidance for the practitioner and a set of milestones for the manager.
Because the steps of the test strategy occur at a time when deadline pressure begins to
rise, progress must be measurable and problems must surface as early as possible.
Following testing techniques are well known and the same strategy is adopted during this
project testing.

TYPES OF TESTING

In order to make sure that the system does not have errors, the different levels of testing
strategies that are applied at differing phases of software development are:
106 | P a g e

UNIT TESTING

Unit Testing is done on individual modules as they are completed and become
executable. It is confined only to the designer's requirements. Each module can be tested
using the following two Strategies:

BLACK BOX TESTING

In this strategy some test cases are generated as input conditions that fully execute all
functional requirements for the program. This testing has been uses to find errors in the
following categories:

 Incorrect or missing functions


 Interface errors
 Errors in data structure or external database access
 Performance errors
 Initialization and termination errors.
In this testing only the output is checked for correctness. The logical flow of the data
is not checked.

WHITE BOX TESTING

In this the test cases are generated on the logic of each module by drawing flow graphs of
that module and logical decisions are tested on all the cases. It has been uses to generate
the test cases in the following cases:
 Guarantee that all independent paths have been executed.
 Execute all logical decisions on their true and false Sides.
 Execute all loops at their boundaries and within their operational bounds
 Execute internal data structures to ensure their validity.
107 | P a g e

INTEGRATING TESTING

Integration testing ensures that software and subsystems work together a whole. It tests
the interface of all the modules to make sure that the modules behave properly when
integrated together.

SYSTEM TESTING

Involves in-house testing of the entire system before delivery to the user. Its aim is to
satisfy the user the system meets all requirements of the client's specifications.

ACCEPTANCE TESTING

It is a pre-delivery testing in which entire system is tested at client's site on real world
data to find errors.
108 | P a g e

TESTING:
Testing is the process of detecting errors. 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 maintenance also.

The aim of testing is often 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. Testing is the
process of executing a program with the intent of finding errors.

Objective of Testing:

The main objective of testing is to uncover a host of errors, systematically and with
minimum effort and time. Stating formally, we can say,

 Testing is a process, the aim of testing is often 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. Testing is the process of executing a program with the intent
of finding an error.
 A successful test is one that uncovers an as yet undiscovered error.
 A good test case is one that has a high probability of finding error, if it exists.
 The tests are inadequate to detect possibly present errors.
 The software more or less confirms to the quality and reliable standards.

Testing Methodologies
A strategy for software testing must accommodate low-level tests that are
necessary to verify that a small source code segment has been correctly implemented as
109 | P a g e

well as high-level tests that validate major system functions against customer
requirements. A strategy must provide guidance for the practitioner and a set of
milestones for the manager. Because the steps of the test strategy occur at a time when
deadline pressure begins to rise, progress must be measurable and problems must surface
as early as possible. Following testing techniques are well known and the same strategy is
adopted during this project testing.

Types of Testing:

 Unit testing:Unit testing focuses verification effort on the smallest unit of software
i.e. the module. Using the detailed design and the process specifications testing is
done to uncover errors within the boundary of the module. All modules must be
successful in the unit test before the start of the integration testing begins.
The unit test is white-box oriented. The unit testing implemented in every module of
student attendance management System. by giving correct manual input to the system
,the datas are stored in database and retrieved. If you want required module to access
input or get the output from the End user. any error will accrued the time will provide
handler to show what type of error will accrued .

 Integration testing: After the unit testing we have to perform integration testing.
The goal here is to see if modules can be integrated properly, the emphasis being on
testing interfaces between modules. This testing activity can be considered as testing
the design and hence the emphasis on testing module interactions.

 System testing: Here the entire software system is tested. The reference document
for this process is the requirements document, and the goal as to see if software meets
its requirements. System testing is actually a series of different tests whose primary
purpose is to fully exercise the computer-based system. Below we have described the
two types of testing which have been taken for this project. it is to check all modules
110 | P a g e

worked on input basis .if you want change any values or inputs will change all
information. so specified input is must.

 Acceptance testing: Acceptance Test is performed with realistic data of the client
to demonstrate that the software is working satisfactorily. Testing here is focused on
external behaviour of the system; the internal logic of program is not emphasized.

 White box testing: This is a unit testing method where a unit will be taken at a
time and tested thoroughly at a statement level to find the maximum possible errors. I
tested step wise every piece of code, taking care that every statement in the code is
executed at least once. The white box testing is also called Glass Box Testing.

 Black box testing: This testing method considers a module as a single unit and
checks the unit at interface and communication with other modules rather getting into
details at statement level. Here the module will be treated as a black box that will take
some input and generate output. Output for a given set of input combinations are
forwarded to other modules.

Test cases

Test case is an object for execution for other modules in the architecture does not
represent any interaction by itself. A test case is a set of sequential steps to execute a test
operating on a set of predefined inputs to produce certain expected outputs. There are two
types of test cases:-manual and automated. A manual test case is executed manually
while an automated test case is executed using automation.

In system testing, test data should cover the possible values of each parameter
based on the requirements. Since testing every value is impractical, a few values should
be chosen from each equivalence class. An equivalence class is a set of values that should
111 | P a g e

all be treated the same.


Ideally, test cases that check error conditions are written separately from the
functional test cases and should have steps to verify the error messages and logs.
Realistically, if functional test cases are not yet written, it is ok for testers to check for
error conditions when performing normal functional test cases. It should be clear which
test data, if any is expected to trigger errors.
112 | P a g e

SYSTEM IMPLEMENTATION

Purpose: System implementation is the important stage of project when the theoretical
design is tuned into practical system. The main stages in the implementation are as
follows:


Planning 


Training 


System testing and 

Changeover Planning 
Planning is the first task in the system implementation. At the time of
implementation of any system people from different departments and system analysis
involve. They are confirmed to practical problem of controlling various activities of
people outside their own data processing departments.
The line managers controlled through an implementation coordinating committee.
The committee considers ideas, problems and complaints of user department, it must also
consider:


The implication of system environment 


Self selection and allocation for implementation tasks 


Consultation with unions and resources available 

Standby facilities and channels of communication
113 | P a g e

SYSTEM MAINTENANCE
Software maintenance is far more than finding mistakes. Provision must be made
for environment changes, which may affect either the computer, or other parts of the
computer based systems. Such activity is normally called maintenance. It includes both
the improvement of the system functions and the corrections of faults, which arise during
the operation of a new system.

It may involve the continuing involvement of a large proportion of computer


department recourses. The main task may be to adapt existing systems in a changing
environment.

Back up for the entire database files are taken and stored in storage devices like
flash drives, pen drives and disks so that it is possible to restore the system at the earliest.
If there is a breakdown or collapse, then the system gives provision to restore database
files. Storing data in a separate secondary device leads to an effective and efficient
maintains of the system. The nominated person has sufficient knowledge of the
organization’s computer passed based system to be able to judge the relevance of each
proposed change.
114 | P a g e

CONCLUSION AND FUTURE ENHANCEMENT

Conclusion

Online Examination System is web based application. The key concept is to minimize the
amount of paper and convert all forms of documentation to digital form. It can observe
that the information required can be obtained ease and accuracy in the computerized
system. The user with minimum knowledge about computer can be able operate the
system easily. The system also produces brief result required by the management

As the software is totally integrated, there is no question of data entry problems. As the
software comes with very flexible user interface, users will feel very comfortable with
new environment.

Thus ONLINE EXAMINATION SYSTEM can be used in places like:-

 Colleges
 School

Scope for future development 


The project has a very vast scope in future. The project can be implemented on
internet in future. Project can be updated in near future as and when requirement for the
same arises, as it is very flexible in terms of expansion. With the knowledge I have
gained by developing this application, I am confident that in future I can make the
application more effectively by adding the services. The following are the future scope
for the project.
 Back tracking of the question


Extending this application by providing Android application.


Extending it to Web Support.


115 | P a g e

BILIOGRAPHY.

 The complete Reference PHP.


 Software Engineering – Roger Pressman
 Head First PHP & MySQL.

Websites
 www.w3school.com
 www.stackoverflow.com

115
116 | P a g e

116

You might also like