Professional Documents
Culture Documents
1
1.1 Introduction
Examination is a test not just for the person who gives the exams but also a big test for the
management and teacher who arranges the exams. The traditional method of exams involves
the paperwork, then checking the papers, arranging the marks and then finally feeding the
results in computer for printing the reports. Online Examination System removes most the
drawback that was in the traditional method. The exams are online so user can give the exams
from anywhere around the world. Also the exams results can be calculated automatically just
at the end of exams. It also minimizes the error in calculating results which humans do most of
the time. Also the most important benefit of making exams online is the data is saved in a
structured format which can be used for detail report to make reports, charts and presentation
over a period of time. A person can check question paper that was published 10 years ago in
an instant.
The purpose of this document is to analyse and elaborate on the high-level needs of the Online
Examination System.
1.3 Objective
The underlying objectives of our project are:
Creating a System Administrator who will be the sole user managing the system on the
backend.
The System Administrator will have to login facility by entering the correct username and
password.
The System Administrator can add/edit/delete/view the topic or subjects.
The System Administrator can add/edit/delete/view the questions and answers of subject.
The System Administrator can either close the application or can logoff so he temporarily
disconnects from the application and can re – enter by entering the password
New User can sign up with the system to give examination.
2
Existing Users can login to give examination.
User can attempt for the examination directly from the student dashboard.
User can give any examination multiple times and their result will be displayed at the end
of the examination.
Table 1
Database MySql
Table 2
3
Chapter 2: Review of Related Works
4
2.1 Motivation
Conventional mode of exams are now outdated as we have seen in past couple of decades. Very
few entrance exams are conducting paper-based exams because everyone has understood that
it is time taking, expensive and less secured as compare computer-based exams. A new
methodology is come in the existence that has brought a revolutionary change in the exams
pattern and arrangements. Now the online examination software evolution has changed the
traditional approach of exams.
Earlier students need to buy study material, collect important notes and all that. But with the
help of online test software, the work and load of students become feasible and easy. The
software has made it easy to give them magnificent platform for learning, latest updates and
many more benefits. While choosing the software for online exam, you should be particular
about the latest version having the advanced feature and security concern. Institutes and many
universities are using the software to make their exam process and evaluation features
convenient. It can be used in coaching institute, school, college, and moreover other than
educational institutes, many organizations are using these softwares for recruitment process
more analytical and aptitude based.
Numerous of online examination software are present in the market but to match with the
standard of “Tutoreal” is quite difficult. This has become the first choice of students and
educational institutes. The reasons behind choosing the “Tutoreal” are as follows:
5
Another such online assessment platform is “Disamina” allows delivery of learning content
and resources to the students:
The traditional method is a costly and time-consuming which even leads to excessive paper
and hard work! “Disamina” is one-time investment software which eradicates excessive usage
of papers saving time, money and trees.
Online Assessment software eases by assisting in each and every step required for assessment
work digitally from registration of candidates till the evaluation and output of results quickly
and accurately.
Our college has also developed an online examination system to conduct different tests. This
platform helps to conduct different tests like lab-quizzes, internal assessment quizzes, mock
tests for placements and other competitive examinations. Not only this some of the recruiters
also use this platform to conduct placement drives in the campus. This system has resulted in
a huge reduce of paper work and man power. This system is so secure and efficient that only
one or two invigilators are required to conduct a test for about 30-40 students. This system is
deployed in the intranet of our institute.
6
Chapter 3: Technologies Used and Implementation
7
3.1 Technologies used
We used different technologies to develop our project. The technologies implemented are:
3.1.1 Laravel
3.1.1.1 Introduction
Laravel is a powerful MVC PHP framework, designed for developers who need a simple and
elegant toolkit to create full-featured web applications. Laravel was created by Taylor Otwell.
This is a brief tutorial that explains the basics of Laravel framework.
Laravel is an Open Source framework. It has a very rich set of features which will boost the
speed of Web Development. Laravel will save a lot time if you are planning to develop a
website from scratch. Not only that, the website built in Laravel is also secure. It prevents the
various attacks that can take place on websites.
There are several key features in laravel. They are:
● Modularity
● Testability
● Routing
● Configuration management
● Query builder and ORM (Object Relational Mapper)
● Schema builder, migrations, and seeding
● Template engine
● E-mailing
● Authentication
● Redis
● Queues
● Event and command bus
8
3.1.1.2 Application structure
The root directory of Laravel contains various folders and files as shown in the following
figure.
● app: This directory contains the core code of the application.
● bootstrap: This directory contains the application bootstrapping script.
● config: This directory contains configuration files of application.
● database: This folder contains your database migration and seeds.
● public: This is the application’s document root. It starts the Laravel application. It also
contains the assets of the application like JavaScript, CSS, Images, etc. 3.
● Laravel – Application Structure Laravel 10
● resources: This directory contains raw assets such as the LESS & Sass files,
localization and language files, and Templates that are rendered as HTML.
● storage: This directory contains App storage, like file uploads etc.
● Framework storage (cache), and application-generated logs.
● test: This directory contains various test cases.
● vendor: This directory contains composer dependencies.
9
3.1.1.2.1 Application Directory
This is the application directory.
Figure 1
10
perform logic in response to the event being fired. For example, a UserRegistered
event might be handled by a SendWelcomeEmail listener.
● Policies: This directory contains various policies of the application.
● Providers: This directory contains various service providers.
3.1.1.3. CONFIGURATION
The config directory, as the name implies, contains all of your application's configuration
files. In this directory, you will find various files needed to configure database, session, mail,
application, services etc.
Figure 2
11
3.1.1.3.2 ENVIRONMENTAL CONFIGURATION
Laravel provides facility to run your application in different environment like testing,
production etc. You can configure the environment of your application in the .env file of the
root directory of your application. If you have installed Laravel using composer, this file will
automatically be created.
In case you haven’t installed Laravel, you can simply rename the .env.example file to .env
file. A sample of Laravel.env file is shown below.
Figure 3
Notice the text underlined gray in the above image. Local environment variable has been set.
It can further be changed to production or testing as per your requirement.
12
Figure 4
MAINTENANCE MODE
We need to modify our website on a regular basis. The website needs to be put on
maintenance mode for this. Laravel has made this job easier. There are two artisan commands
which are used to start and stop the maintenance mode which are described below.
13
Start Maintenance Mode
To start the maintenance mode, simply execute the following command.
php artisan up
3.1.1.4. ROUTING
Route::get('/', function () {
return 'Hello World';
});
Route::post('foo/bar', function () {
return 'Hello World';
});
Route::put('foo/bar', function () {
//
});
Route::delete('foo/bar', function () {
//
});
14
3.1.1.4.2 ROUTING PARAMETERS
Often in the application, we intend to capture the parameters passed with the
URL. To do this, we need to modify the code in routes.php file accordingly.
There are two ways by which we can capture the parameters passed with the
URL.
Required Parameters
Optional Parameters
Required Parameters
These parameters must be present in the URL. For example, you may intend to capture the ID
from the URL to do something with that ID. Here is the sample coding for routes.php file for
that purpose.
Route::get('ID/{id}',function($id){
echo 'ID: '.$id;
});
Whatever argument that we pass after the root URL (http://localhost:8000/ID/5), it will be
stored in $id and we can use that parameter for further processing but here we are simply
displaying it. We can pass it onto view or controller for further processing.
Optional Parameters
There are some parameters which may or may not be present in the URL and in such cases
we can use the optional parameters. The presence of these parameters is not necessary in the
URL. These parameters are indicated by “?” sign after the name of the parameters. Here is
the sample coding for routes.php file for that purpose.
Route::get('/user/{name?}',function($name = 'Virat'){
echo "Name: ".$name;
});
15
3.1.2 CSS3
3.1.2.1 INTRODUCTION
Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended to
simplify the process of making web pages presentable.
CSS handles the look and feel part of a web page. Using CSS, you can control the color of
the text, the style of fonts, the spacing between paragraphs, how columns are sized and laid
out, what background images or colors are used, as well as a variety of other effects.
CSS is easy to learn and understand but it provides a powerful control over the presentation
of an HTML document. Most commonly, CSS is combined with the markup languages
HTML or XHTML.
3.1.2.2 Advantages
● CSS saves time - You can write CSS once and then reuse the same sheet in multiple
HTML pages. You can define a style for each HTML element and apply it to as many
web pages as you want.
● Pages load faster - If you are using CSS, you do not need to write HTML tag
attributes every time. Just write one CSS rule of a tag and apply it to all the
occurrences of that tag. So, less code means faster download times. Easy
maintenance - To make a global change, simply change the style, and all the elements
in all the web pages will be updated automatically. Superior styles to HTML - CSS
has a much wider array of attributes than HTML, so you can give a far better look to
your HTML page in comparison to HTML attributes.
● Multiple Device Compatibility - Style sheets allow content to be optimized for more
than one type of device. By using the same HTML document, different versions of a
website can be presented for handheld devices such as PDAs and cellphones or for
printing.
● Global web standards – Now HTML attributes are being deprecated and it is being
recommended to use CSS. So it’s a good idea to start using CSS in all the HTML
pages to make them compatible with future browsers.
16
These ratified specifications are called recommendations because the W3C has no control
over the actual implementation of the language. Independent companies and organizations
create that software.
3.1.3. HTML5
3.1.3.1 Introduction
Since the early days of the web, there have been many versions of HTML:
HTML 1991
HTML 2.0 1995
HTML 3.2 1997
HTML 4.01 1999
XHTML 2000
HTML 5 2014
Table 3
17
<!DOCTYPE html>
There are many new elements introduced in this version of HTML. The most interesting new
HTML5 elements are:
New semantic elements like <header>, <footer>, <article>, and <section>.
New attributes of form elements like number, date, time, calendar, and range.
New graphic elements: <svg> and <canvas>.
New multimedia elements: <audio> and <video>.
SQL is the standard language for Relational Database System. All the Relational Database
Management Systems (RDMS) like MySQL, MS Access, Oracle, Sybase, Informix, Postgres
and SQL Server use SQL as their standard database language. Also, they are using different
dialects, such as:
To make sql connection using Laravel is very easy. One just have to edit the .env file and
update the parameters there. Laravel will make connection with the database and the model of
the framework will interact with the database and execute all the database related query.
18
Chapter 4: Conclusion and Result
19
4.1 Snapshots
Figure 5
This is the first page or the index page of our project “online examination system”. When any
user wants to access the online examination system, they will be directed to this page.
4.1.2 Login
Figure 6
20
This is the login page.If there is an existing user then he/she can login to his/her account by
giving his/her email id and password.The user can also save his/her email id and password by
clicking on Remember me.
4.1.3 Register
Figure 7
If the user is a new user then he/she can register himself/herself by giving the following datas
which is name and email address.The he /she need to set up a password.
Figure 8
21
If the user forgot the password, then he/she can click on the reset password to change the
password. This will be done by sending a link to change the password to the registered email
address.
Figure 9
This is the admin dashboard. This Dashboard has many different features for admin. In our
project we implemented four features.
● Topics
● Questions
● Question options
● User management
22
4.1.6 View/Update Topics
Figure 10
In this feature admin can add different topics. Like java, c, c++ etc. If admin want to view
any of the topic, he/she just have to click on the view. If the admin wants to delete the topic,
then he/she just have to click on delete.
At the end, it is shown how many topics are added or entire are done.
23
4.1.7 Add questions
Figure 11
Figure 12
In this feature the admin can add different questions to a particular topic. Admin can also add
4 different options for the question. At the end correct answer is given for the question.
Below that a little explanation to the answer is given.
24
4.1.8. View/Update options
Figure 13
In this feature the options given in the question feature can be managed. The admin can
change the options here or can delete option or can add option.
25
4.1.9. View/Update Users
Figure 14
In this feature admin can view or delete his/her own account. Admin can also view any
student’s account or can delete it.
Figure 15
26
In this feature admin can see the actions done by student or admin. If admin creates a
question or add an option or delete an option, then it is updated in these table and displayed.
Similarly if any student appears a test ,then the answer given him/her is displayed in the
table.
Figure 16
This is the homepage of the student user. When the student will login, then he will be
directed to this page. This page will show how many questions and questions are available. It
has two features:
New quiz
My Results
27
4.1.12. New Quiz
Figure 17
Here the student can take up a quiz of his/her favourite topic. Student can give the test and
submit the answers.
Figure 18
After submitting the answers, the student can view his result with a little description.
28
4.1.13. View Results
Figure 19
The student can view all his/her result history from this page.
As our project is in its very early stage of development so it has some limitations and there is
also a scope for future developments, such as:
Without internet the online examination system cannot be accessed.
As we are using SQL database, limited number of students can give examination at a
time.
There is no timer for examination system.
As the browser can be minimized, the students can cheat easily by accessing other
websites.
The discussion forum can be implemented.
The paid/ unpaid versions of topic can be implemented.
29
References
[1] Laravel Tutorial, Tutorial Point, https://www.tutorialspoint.com/laravel/
[2] AdminLTE Documentation, Version 2.3, Almsaeed Studio,
https://adminlte.io/themes/AdminLTE/docu mentation/index.html
[3] Laravel Documentation, Version 5.6, TAYLOR OTWELL., https://laravel.com/docs/5.6
[4] Bootstrap Documentation, Version 4, https://getbootstrap.com/docs/4.0/getting-
started/introduction/
[6] PHP Documentation, http://php.net/docs.php
[7] JavaScript Documentation, http://devdocs.io/javascript/
[8] Tutoreal, http://tutoreal.in
[9] Disamina, http://disamina.in
30
Appendix
List of tables
Table 1: Hardware Requirement…………………………………………………….3
Table 2: Software Requirement……………………………………………………..3
Table 3: Different versions of HTML………………………………………………18
List of figures
Figure 1: Application directory of Laravel………………………………………….10
Figure 2: Key generation for Laravel application...………………………………....11
Figure 3: .env.example file for Laravel……………………………………………...12
Figure 4: Database configuration for Laravel application……………………….......13
Figure 5: Index (snapshot)…………………………………………………………...20
Figure 6: Login (snapshot)…………………………………………………………...20
Figure 7: Register (snapshot)………………………………………………………...21
Figure 8: Password Recovery (snapshot)……………………..……………………...21
Figure 9: Admin Dashboard (snapshot)……………………………………………...22
Figure 10: View/Update topic (snapshot)…………………………………………....23
Figure 11: Add Questions (snapshot)………………………………………………...24
Figure 12: Add Questions(contd.) (snapshot)………………………………………..24
Figure 13: View/Update options (snapshot)………………………………………….25
Figure 14: View/Update User (snapshot)………………………………………….....26
Figure 15: User Log (snapshot)…………………………………………………….. .26
Figure 16: Student Dashboard (snapshot)……………………………………………27
Figure 17: Take quiz (snapshot)…..............................................................................28
Figure 18: Instant Result after quiz (snapshot)...………………………………….…28
Figure 19: View Results (snapshot)……………………………………………….....29
Web Links
https://www.tutorialspoint.com/laravel/
https://adminlte.io/themes/AdminLTE/docu mentation/index.html
https://laravel.com/docs/5.6
https://getbootstrap.com/docs/4.0/getting-started/introduction/
http://php.net/docs.php
http://devdocs.io/javascript/
http://tutoreal.in
http://dismina.in
31