Online Examination System
Online Examination System
Online Examination System
INTRODUCTION
Page 1 of 84
1.1 Synopsis of the project:
The Company is committed to high quality user friendly designed Websites, Web Designing,
This company was founded by Mr. Mohammed Khawaza Shaikh and his team in year 2010. He
has done MCA from Annamalai University from Chennai and Diploma Holder in Computer
Science and Engineering from Sanjay Gandhi Rural Polytechnic from Bellary ( Karnataka State)
He spent One year at Sanjay Gandhi Rural Polytechnic as a instructor in Computer Lab, Two
year as a Hardware Engineer in PC Solutions Pvt. Ltd. at Bellary, one year Hardware and
Page 2 of 84
1.1.2 About the Project:
This project will help the University/Institution to evaluate the question have multiple option
with one correct answer. This project contains two types of test Written and objective.
Objective Test
Written
Page 3 of 84
1.2 Objective & Scope of Project:
Objective:
To not provide facility of copy and paste while attempting the Subjective
When the student starts the exam the timer will start automatically and show
Objective answers will be checked automatically by the system from the database
For subjective answer manually checking by exam department will take place.
.To facilitate Exam Dept Admin to make schedule and declare Result.
Scope:
Methodology of the system is clear that result in the complete and proper
working of the system from the requirements achieved. it contains the working
No need to take leave, visit a different town, city or even states in some cases.
People can appear right from right from their laptop or home desktop
System is capable of maintaining details of train schedule, arrival time, halt time and each
Page 4 of 84
1.3 Problem Definition
Existing Websites
The whole process of assigning test and evaluating their scores after the test was done
manually till date The search results were not accurate at some point.
Processing the test paper i.e. checking and distributing respective scores used to take time
when the software was not installed Maintaining the content is really a tedious task.
Risk of Mismanagement.
Less Security.
Proposed Website
The online test created for taking online test has following features:
In comparison to the present system the proposed system will be less time consuming and
is more efficient.
Result will be very precise and accurate and will be declared in very short span of time
The logs of appeared candidates and their marks are stored and can be backup for future
use.
Page 5 of 84
1.4 Theoretical Background:
The software development platform is selected as SERVLET, JSP and MySQL is an open
source server-side web application designed for web development to produce web pages.
SERVLET
Servlet is a java program that runs inside JVM on the web server. It is used for developing
dynamic application.
Before we proceed further lets understand what is dynamic web application? A web application
can be described as collection of web pages (e.g. a website) and when we call it dynamic, it
simply means that the web pages are not same for all the users, web pages would be generated on
Features
Robust: Servlet are managed by JVM so no need to worry about memory leak, garbage
collection etc.
Secure: Because it uses java language and java is a secure language. Java have automatic
garbage collection mechanism and a lack of pointers protect the servlets from memory
management problems.
Page 6 of 84
JAVA SERVER PAGES (JSP)
JSP technology is used to create web application just like Servlet technology. It can be thought
A JSP page consists of HTML tags and JSP tags. The JSP pages are easier to maintain than
Servlet because we can separate designing and development. It provides some additional features
Features
Extension to Servlet: JSP is Extension to Servlet, it have all the features of servlet and it
have also implicit objects, predefined tags, expression language and Custom tags in JSP,
Powerful: These are internally Servlet, means consists byte code, so that all java
features are applicable in case of jsp like robust, dynamic, secure, platform independent.
Portable: JSP tags will process and execute by the server side web container, So that
Flexible: Allows to defined custom tags, the developer can fill conferrable to use any
Less code than Servlet: In JSP, we can use a lot of tags such as action tags, jstl, custom
Page 7 of 84
1.4.2 Overview of Back End:
The database used for indianrail.in is MySQL version 5.0 or greater. MySQL is a relational
which gives information about the trains so we have to use the database which is light and fast to
provide instant search results. Also admin can add website pages by backend software which
MySQL
MySQL is the world's most popular open source database software with superior speed,
reliability, and ease of use. It eliminates the major problems associated with downtime,
more fields (Access calls a column a field). The data stored in each column must be of a
Table: Tables are the main units of data storage in a database. A table is a collection of
Field: A field is a column in a table and defines a data type for a set of values in a table.
Record: A record in a row in a table and is a set of values defined by fieldsData type:
Data types are the properties of each field. A field only has one data type, such as
Primary Key: A primary key is a value that can be used to identify a unique record in a
table.
Page 8 of 84
CHAPTER 2:
SYSTEM ANALYSIS
Page 9 of 84
2.1 Feasibility Study
2.1.1Technical Feasibility
It deals with Hardware and Software requirements.
Hardware requirement.
We analyze the technical and capabilities of the software development team members.
We ascertain that the technology chosen for software development has large number of
user so that they can be consulted when problems arise, or when improvements are
required.
On the behalf of the cost-benefit analysis, the proposed system is feasible and iseconomical
regarding its pre-assumed cost for making a system.
We classified the costs of IndianRail.in according to the phase in which they occur.
As weknow that the system development costs are usually one-time costs that will not recur after
the projecthas been completed.
Personal costs
Computer usage
Supply and equipment’s costs
Cost of any new computer equipment’s and software.
Page 10 of 84
2.1.3 Operational Feasibility
Operational feasibility is to gain an understanding of whether the proposed system will
likely to solve the business problems, or take advantage of the opportunities or not.
The result of our operational feasibility Study clearly outline that the proposed system is
operationally workable and conveniently solves our problems
Page 11 of 84
2.2 System Planning and Schedule:
Sr.
No. Activity Sub-activity Cash My Brain Project Plan
Jan Feb Mar Apr May
Week 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
1 Analysis
Feasibility Study
Requirement Gathering
Project Finanacial Planning
2 Design
Database Design
Project Modules UML Design
Form Design
3 Coding
Programming Logic
Creating Database views
Stored procedures
Programming based on UML
design
4 Testing
Unit Testing
Integration Testing
Page 12 of 84
CHAPTER 3:
SYSTEM DESIGN
Page 13 of 84
3.1 Software Requirement Specification:
3.1.1. Introduction:
Software to be used:
Tools to be used:
Page 14 of 84
3.2 Methodologies Adapted:
various builds.
Multiple development cycles take place here, making the life cycle a “multi-waterfall life
cycle model”. Cycles are divided up into smaller, more easily managed modules.
A working version of software is produced during the first module, so you have working
Each subsequent release of the module adds function to the previous release. The process
Page 15 of 84
3.3 Detailed life Cycle of the Project:
The following approach is used to design this system , which is called “classic life cycle” or
“waterfall model” .This linear sequential model suggests a systematic , sequential approach to
software development that begins at the system level and progresses through analysis , design,
coding, testing deployment and maintenance . We prepare waterfall model approach because it
allows for departmentalization and managerial control. A schedule can be set with deadlines for
stages of development and software can proceed through the development. Development moves
maintains
Page 16 of 84
Fig.4.1 Water Fall Model
System Design
Here the actual work begins. Every type of resources which will be required for the smooth
designing of the software is maintained here within this phase. A physical design of a proposed
system is developed. The Organization installs and begins to use the new system. After system
requirement and analyzed data we design actual flow of system. Design the Use Cases to
understand different actor’s interaction, seduce of flow of system and activates of system. After
this we designed the database for the system using MysQL. After understanding database we
Page 17 of 84
designed web form in JSP and HTML. In this phase, what of database will be required, what type
of data should be supported, etc. are some important aspects that are decided.
System Implementation
The Organization installs and begins to use a new system. In this phase we created web site
deployed on the web server. In this process we configure Apache Tomcat web server v6.0 and
deployed our developed web site.
Testing
The system is continually monitored and adjusted as needed until it is time for a total
revaluation. In this phase we did following types testing
1. Unit testing:
2. Integration testing.
3. White box testing.
4. Black box testing.
5. Acceptance testing.
In testing phase we took the test cases of system.
Maintaince
We provide the user manual for the maintains of the web-site. This is last phase of our system
life cycle. The cycle of software development does not end with handling to the client. During
the maintains phase, support and debugging is provided for all such problems.
Page 18 of 84
3.3.1 Modules:
Admin Module
Content Module
This module provides the admin to publish the content or make the website pages from this module.
Subject Module
This module was built for the student to select the subject.
Provide question to student.
Page 19 of 84
3.3.2 Object Oriented Analysis & Design Diagrams:
Each object represents some entity of interest in the system being modeled, and is
characterized by its class, its state (data elements), and its behavior.
Various models can be created to show the static structure, dynamic behavior, and run-
time deployment of these collaborating objects. There are a number of different notations
for representing these models, such as the Unified Modeling Language (UML).
A typical OOA model would describe computer software that could be used to satisfy a
set of customer-defined requirements.
During the analysis phase of problem-solving, the analyst might consider a written
requirements statement, a formal vision document, or interviews with stakeholders or
other interested parties.
The task to be addressed might be divided into several subtasks (or domains), each
representing a different business, technological, or other areas of interest. Each
subtaskwould be analyzed separately.
Page 20 of 84
3.3.2.1 UML Diagrams:
Page 21 of 84
B) Use Case Diagram for Student Profile:
Page 22 of 84
Page 23 of 84
Interaction Diagram's
1) Sequence Diagram
Page 24 of 84
B) Sequence Diagram for Subject Maintenance:
Page 25 of 84
Page 26 of 84
D) Sequence Diagram for UserLog:
Activity Diagram's
Page 27 of 84
Activity Diagram for Student Registration:
Page 28 of 84
Activity Diagram for Give Exam Activity:
Page 29 of 84
Activity Diagram for Result:
Page 30 of 84
Class Diagram for Examination System:
Page 31 of 84
Data Flow Diagrams:
Data Flow Diagram (level 0)
Page 32 of 84
Data Flow Diagram (level 1)
Page 33 of 84
3.3.4 Database Table:
Table: Admin :
Page 34 of 84
Table: Answer :
Page 35 of 84
Table: Questons :
Page 36 of 84
Table: Question_option :
Page 37 of 84
Table For Subject:
Page 38 of 84
Table for Subject :
Page 39 of 84
Table for StudentExamInfo :
Page 40 of 84
3.3.5. ER Diagram:
Page 41 of 84
3.3.7I/O Screen Layouts
Screen Shots
Home Page :
Page 42 of 84
Student Registration Page :
Page 43 of 84
Admin Register Page :
Page 44 of 84
Student Login Page :
Page 45 of 84
Add Subject Page :
Page 46 of 84
Add Questions Page :
Page 47 of 84
Student Control Form :
Page 48 of 84
Examination Process Page:
Page 49 of 84
Add Written Question Page:
Page 50 of 84
Payement Page:
Page 51 of 84
Page 52 of 84
Admin Login Page:
Page 1 of 84
Exam Process phase2 Page:
Page 2 of 84
Result Page:
Page 3 of 84
CHAPTER 4
TESTING
Page 4 of 84
4.1Methodologies used for Testing
Software testing, depending on the testing method employed, can be implemented at any time in
the development process.
Traditionally most of the test effort occurs after the requirements have been defined and the
coding process has been completed, but in the Agile approaches most of the test effort is on-
going.
As such, the methodology of the test is governed by the chosen software development
methodology.
Different software development models will focus the test effort at different points in the
development process.
Newer development models, such as Agile, often employ test-driven development and place an
increased portion of the testing in the hands of the developer, before it reaches a formal team of
testers.
In a more traditional model, most of the test execution occurs after the requirements have been
defined and the coding process has been completed. Software faults occur through the following
processes.
A programmer makes an error (mistake), which results in a defect (fault, bug) in the software
source code.
If this defect is executed, in certain situations the system will produce wrong results, causing a
failure.
Not all defects will necessarily result in failures. For example, defects in dead code will never
result in failures.
Software testing is an integral part of the software development life cycle (SDLC).
Testing a piece of code effectively and efficiently is equally important, if not more, to writing it.
Software testing is nothing but subjecting a piece of code, to both, controlled and uncontrolled
operating conditions, in an attempt to simply observe the output, and then examine whether it is
in accordance with certain pre-specified conditions.
Page 5 of 84
4.2 Types of Testing used to test Portal:
Stress Testing:
By Stress testing we determine the stability of a given system or entity.
We check testing beyond normal operational capacity, often to a breaking point,
in order to observe the results.
Reasons include: -
We determine breaking points or safe usage limits; to confirm intended
specifications are being met; to determine modes of failure, and to test stable
operation of a part or system outside standard usage.
We test items under expected stress or even under accelerated stress in order to
determine the operating life of the item or to determine modes of failure.
System Testing:
System testing tests a completely integrated system to verify that it meets its
requirements.
In addition, the software testing should ensure that the program, as well as
working as expected, does not also destroy or partially corrupt its operating
environment or cause other processes within that environment to become
inoperative (this includes not corrupting shared memory, not consuming or
locking up excessive resources and leaving any parallel processes unharmed by its
presence)
Page 6 of 84
Regression Testing:
Regression testing focuses on finding defects after a major code change has
occurred.
Specifically, it seeks to uncover software regressions, or old bugs that have come
back.
Common methods of regression testing include re-running previously run tests and
checking whether previously fixed faults have re-emerged.
The depth of testing depends on the phase in the release process and the risk of the
added features.
They can either be complete, for changes added late in the release or deemed to be
risky, to very shallow, consisting of positive tests on each feature, if the changes
are early in the release or deemed to be of low risk.
Security Testing:
Security testing is essential for software that processes confidential data to prevent
system intrusion by hackers.
Page 7 of 84
4.2.1White Box Testing
White box testing is a test cases design method that uses the control structure of the
procedural design to derive test cases. Test cases can be derived that
Guarantee that all independent paths within a module have been exercised at least
once ,
Execute all loops at their boundaries and within their operational bounds,
White box tests require knowledge of the internal program structure and are derived
from the internal design specification of the code.
They will not detect missing function ( i.e. those described in the functional design
specification but not supported by the internal specification or code)
Following are the white box techniques which are used for ‘Expenses’ testing,
Branch coverage
Path coverage
Path coverage requires the execution of all different paths through the test
object. This is important with respect to mobile application. Application should
execute all the paths and should not crash in between.
Page 8 of 84
4.2.2Black Box Testing
Black box testing attempts to drive set of inputs that will fully exercise all the
functional requirements of a system. It is not an alternative to white box testing.
Errors ,
Performance errors,
What data rates and data volume can the system tolerate?
White box testing should be performed early in the testing process, while black box
testing tends to be applied during later stages. Test cases should be derived which reduces
the number of additional test cases that must be designed to achieve reasonable testing ,
and tell us something about the presence or absence of classes of error rather than an
error associated only with the specific test at hand.
Page 9 of 84
Following are the black box techniques which were used for ‘Mobile Social Network’
testing
Test case for input fields such as start date, end date, amount etc. are
prepared and tested. Equivalence class partitioning helps to reduce total time in
testing by dividing valid and invalid test cases.
In many cases, not only current input, but also the history of execution or
events or inputs, influences the outputs. Application has many fields such as date,
project, category which has different effects on overall application. Minor change
in each of them triggers changes in lot of input methods. These fields are tested
under state transition testing.
Page 10 of 84
4.3 Test Cases:
Page 11 of 84
button to Admin
Dashboard
Admin has Login Page Try to Error Show Pass
already user-id & login with message Error
Registered password out should be Message
entering displayed
details
Admin has Login Page Entered Error Show Pass
already user-id & invalid message error
Registered password user-id & should be message
valid displayed for invalid
password for invalid user-id
user-id
Admin has Login Page Entered Error Show Pass
already user-id & ivalid message error
Registered password user-id & should be message
invalid displayed for invalid
password for invalid password
Password
Test Case 1
Test Case 1
Page 12 of 84
4.4 Test Report:
Entire website is tested at all testing levels and it is working correctly. This software has been
tested by IT experts.
Page 13 of 84
CHAPTER 5:
SYSTEM IMPLEMENTATION
Page 14 of 84
5.1 Hardware required at Client side
Software to be used:
Tools to be used:
Page 15 of 84
5.3 Testing done as End User
Acceptance Testing
Acceptance testing, a testing technique performed to determine whether or not the software
system has met the requirement specifications. The main purpose of this test is to evaluate the
system's compliance with the business requirements and verify if it is has met the required
criteria for delivery to end users.
There are various forms of acceptance testing:
User acceptance Testing
Business acceptance Testing
Alpha Testing
Beta Testing
Beta Testing
Beta testing also known as user testing takes place at the end users site by the end users to
validate the usability, functionality, compatibility, and reliability testing.
Beta testing adds value to the software development life cycle as it allows the "real" customer an
opportunity to provide inputs into the design, functionality, and usability of a product. These
inputs are not only critical to the success of the product but also an investment into future
products when the gathered data is managed effectively.
Page 16 of 84
CHAPTER 6:
Page 17 of 84
6.1 Maintenance
one study indicated that the majority, over 80%, of the maintenance effort is used for
non-corrective actions.
This perception is perpetuated by users submitting problem reports that in reality are
Maintenance is really evolutionary development and that maintenance decisions are aided
Lehman demonstrated that systems continue to evolve over time. As they evolve, they
grow more complex unless some action such as code refactoring is taken to reduce the
complexity.
The key software maintenance issues are both managerial and technical. Key
management issues are: alignment with customer priorities, staffing, which organization
Limited Understanding
Impact Analysis
Testing and
Maintainability measurement.
Page 18 of 84
Software maintenance is a very broad activity that includes error corrections,
Adaptive – modifying the system to cope with changes in the software environment
the future
Page 19 of 84
6.2 Evaluation
the RFP
Ensure that necessary, adequate data are acquired and analyzed to determine and assess the
advisability, adequacy and effectiveness of the management system in the areas of quality,
environment and occupational health and safety, including the Policy and Objectives, as well
Integration:
There is a high degree of coincidence between what is required in the ISO 9001: and
what is required in the ISO 14001: and the OHSAS 18001: with regard to system
In all cases, the requirements point out the need to analyze the data to obtain relevant
information and the use of this information by Management for review of the
management system.
Page 20 of 84
Therefore, it may be said that, regardless of the area, this process always has the same
structure
Another aspect that promotes integration in this process is precisely the fact that the
Management, as shown by its commitment, must assume the responsibility for system
review.
It is a common practice to hold periodic meetings for this activity. Seeking integration of
the quality, environmental and occupational health and safety management systems
implies that these scheduled meetings must permit joint, simultaneous analysis and
review.
This simultaneous analysis and review of the three areas further promotes the
Indicators:
The indicators that are proposed are the same regardless of the area in which they are to be
applied, and can be calculated for the three systems together or independently.
Page 21 of 84
CHAPTER 7:
USER/OPERATIONAL MANUAL
Page 22 of 84
7.1 Security Aspects, Access Rights:
As we are using third party servers for hosting the site following are the details provided by our
In order to reduce security risks to minimum, a holistic approach to security is required. Our
security processes are born out of a clear definition of the threats to our system.
Security threats are a result of the various interaction points that an application provides to the
external world, and the various users that can interact with these interfaces. For instance
company Staff, and Third Party Servers are interacting with our Systems at any given point of
time. Each of these actors needs to have different access levels and different rights and
permissions.
Privacy - Information within our infrastructure and systems will only be accessible by
authorized users
Integrity - Data and information within our infrastructure cannot be tampered with by
Data Protection - Data within the systems cannot be harmed, deleted or destroyed
Identification and Authentication - Ensures that any user of the system is who he
Page 23 of 84
7.2 Back Up’s:
Add-on to the seven level security system we have defined process of periodic backups of
database , code and interfaces at the frequency of 24 hours this process is dependent on volume
of transactions happening on the site as the volume of data transaction is achieved automated
A manual backups are taken on weekly basis and stored at various storage locations and
Page 24 of 84
CHAPTER 8
FUTURE ENHANCEMENTS
Page 25 of 84
Future Enhancement:
Divide admin panel into teacher and administrator who will manage it.
Make more protected and secure from spam , unwanted data hazard, secure user
profile.
Page 26 of 84
CHAPTER 9:
LIMITATIONS
Page 27 of 84
Limitation of the System:
.
Incase question of answer need to begin graphics, current system has no provision.
Unregister can only access home page not anything else like semester course type of
exam.
Page 28 of 84
CHAPTER 10:
CONCLUSION
Page 29 of 84
In the existing system the insurances are done only manually, it
consumes lots of time, takes lots of man power, consumes lots of papers, and
Conclusion:
System security, data security and reliability are the striking features.
Page 30 of 84
CHAPTER 11:
BIBLIOGRAPHY
Page 31 of 84
Online Reference:
http://stackoverflow.com
https://www.tutorialspoint.com/
http://www.w3schools.com/
https://www.youtube.com
Page 32 of 84