[go: up one dir, main page]

0% found this document useful (0 votes)
70 views7 pages

Online Examination System

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/318928252

Online Examination System

Technical Report · August 2013


DOI: 10.13140/RG.2.2.29813.27365

CITATIONS READS

0 2,706

1 author:

Pasindu Tennage
University of Moratuwa
1 PUBLICATION   0 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Online Examination System View project

Sinhala Stemmer View project

All content following this page was uploaded by Pasindu Tennage on 05 August 2017.

The user has requested enhancement of the downloaded file.


Online Examination System

Pasindu Nivanthaka Tennage


Department of Computer Science and Engineering
University of Moratuwa
Katubedda 10400, Sri Lanka
pasindu.13@cse.mrt.ac.lk

Abstract— Online Examination System (OES) is a platform to more than 1000+ users can use the system simultaneously
hold online examinations. It caters to many requirements of without an intervention.
holding online examinations. The system can generate statistical
data for records. The system makes it possible to maintain a
repository of questions, and then generate papers at a later stage,
II. LITERATURE REVIEW
such that the lecturer has more flexibility over holding online
quizzes. Furthermore, it provides the functionality to A. Theoretical Aspects Considered For The System
mark the papers automatically. Development
In the current education process, institutions tend to hold
Keywords— Online Exams; Statistical Details; Management exams online, rather than traditional pen and paper approach.
According to UTS.edu research, student tend to show less
I. INTRODUCTION anxiety when participating in online exams compared to pen
and paper exams. On the other hand, using online examination
E learning is becoming more and more popular in the
systems, gives lecturers much more ease in handling the
current education process. Online examination is a very
examination because of very limited number of paper work
important aspect of e-learning. In the current context, there
involved. This gives lecturers much more flexibility in
exists many number of online MCQ paper management web
handling the examinations. [1]
applications, but these systems are concerned only on one
aspect of online exam system. OES is a web based application On the other hand, online examinations give much more
that integrates online examinations, statistical distributions and options compared to pen and paper related exams. Since the
related management activities. education is becoming more and more competitive industry in
the world, it’s quite natural to see how universities and other
Manual management of examinations is a cumbersome task
institutes tend to enhance their examination standards. Hence
when it comes to a large audience like university. In the current
online examination management systems have a significant
context, getting statistical information on the performance of a
business value in the education sector.
student needs extra effort to do things manually. The need for
an application which integrates online examination Just holding online examinations don’t provide quality user
management, statistical distributions and related management experience. Students and lecturers prefer the systems which
tasks is the main motivation for this application system. gives feedback in an effective way, since it’s the major
outcome of their job. Hence the statistical data analysis part has
Online examination system is a complete solution for
a significant importance in online examination systems.
holding online examinations. The system provides,
• User management solutions B. Other Systems
• Required security standards Moodle is an online education platform that provides
complete solution for institutes. It’s an open source platform
• Online MCQ papers that has a large support community in the world. In a nut shell
Moodle system provides
• Online essay papers
• Subject material
• Other subject management tasks
• Online examinations
• Statistical analysis of data
• Assignment submissions
As mentioned earlier in this report, OES doesn’t need any
other 3rd party service in order to perform above mentioned • Results in tabulated form.
activities. All the functionality is built in to the system.
When comparing OES with the MOODLE system, OES
Being a web application OES can be accessed by a large has the ability to provide statistical information under many
number of users. The system architecture is designed such that criteria. In the Moodle system, users can only view marks,
where as in OES, users can get a pictorial representation of
results and summary details. [2]
OES and Moodle system have following features in
common.
• Handling MCQ papers
• Handling homework assignment
• User and subject management tasks.

III. SYSTEM MODELS

A. Functional Requirements
OES functional requirements can be divided into three main
aspects. Figure 1 Student Use Cases

Subject management: provides functionality to add and Figure 2 shows the main use cases associated with lecturer.
manipulate subjects. Each registered lecture is assigned to 0 or Lecturer is mainly responsible for handling subject material,
more number of subjects. The lecturers can add, modify and handling papers.
mark question papers (both MCQ and essay). OES maintains a
central database of questions and question papers, from which
lecturers can generate papers.
User management: Starting from adding a new user, OES
provides various user management activates. Batch
management, login handling and password encryption, email
facilities for advanced login options are the common
functionalities implemented in OES. Assigning subjects to
batches, assigning subject to lecturers, and student subject
enrolment are some of the key features in OES user
management.
Statistical analysis: OES provides various statistical data
for all three types of users. (Admin, Student, Lecturer). When
providing statistical data, the user privacy is concerned.

B. Non Functional Requirements Figure 2 Lecturer Use Cases


Being a multi user web application, OES provides specific
non-functional requirements including security, reliability, Figure 3 contains the main use cases that associates Admin.
availability and dependability. Maintainability is one of the Admin is responsible for all management tasks, including
key non-functional requirements in this system, since OES can subject management, user management.
be developed to a more sophisticated system by adding some
further functionalities. Even though security is not a major
concern for the system, OES adheres to several security
standards (including password hashing and salting, avoiding
use of GET method when passing parameters) in order to meet
the required user security requirements.

C. Use Case Diagrams


Following are the use case diagrams for each three types of
users.
Figure 1 shows the main use cases that involves student.
Student has minimal management tasks, but involves in
number of subject criteria.

Figure 3 Admin Use Cases


D. System Design F. System Sequence Diagrams
OES is a web based client server application that As mentioned in the use case section, OES incorporates
incorporates MVC (model view control) architecture. Modules many number of use cases that have associated activity and
are divided depending on the MVC structure and the sub system sequence diagrams. In this section, the major use
system structure. Using MVC makes the software more cases’ sequence diagrams will be discussed.
reusable since each component is loosely coupled with each
other.
The system has 3 main sub systems
• User management
• Subject management
• Statistical data management
Layering of the system is showed in figure 4.
Figure 6 Insert new essay

Lecturer can insert MCQs and Essay questions to the


subjects that he has access to. (Assigned by the admin).

Figure 4 Layering

E. Class Diagram
User is the super class of each user type, under which 3
child classes exist, namely Student, Lecturer and Admin.
A student can enroll many number of subjects and a Figure 7 Generate MCQ paper
subject may have 0 or many number of lecturers assigned to
that subject. Lecturer can generate new MCQ papers using the MCQs
that are stored in the MCQ pool.
Question is an abstract class from which McqPaper and
Essay classes are derived.
McqPaper consists of zero or many number of MCQs.
Student results are handled using the Result class which has
associations to Student, Question and Subject classes.
In order to track user logins, Login and Login manager
classes are used.

Figure 8 Schedule Essay Paper

Lecturer schedules a MCQ paper or an essay paper that


has been created before.

Figure 9 Attempt MCQ paper

Student can attempt a MCQ paper that is published by a


Figure 5 Class diagram lecturer (only if he’s enrolled to the particular subject).
G. Database Design C. Java libraries
• GSON [15]
• Commens.codec 1.7 [16]
• MAIL [17]
• MYSQL connector [18]
• Selinium Web driver [7]

D. Special design considerations


In order to provide security, OES system implements
following functionality.
1. Using session variable to pass data (GET method is
not used)
Figure 10 Database ER diagram 2. All passwords are hashed and salted

User is the special entity, under which student, admin and 3. Use of prepared statements in order to avoid SQL
injections
lecturer are derived.
AJAX methods are used more often in order to provide
Last login entity is mainly used to store login details. enhanced user experience. (Rather than loading the page again
All necessary associations are shown in figure 10. and again) The graphical user interfaces are made easy to use
in order to provide usability. In each important interface there
is a help button that shows the directions to use the app, when
H. Database schema clicked.
The database implementation for this ER diagram is done
E. Algorithm
using MYSQL. The main tables are; Admin, Batch, Essay,
Essay-Student, Keywords, Last-Login, Lecturer, MCQ, MCQ- Most of the activities in OES are database related
paper, MCQ-paper-map, MCQ-paper-student, Student, Subject. activities. Java libraries are used in various occasions that
Subject-batch-eligible, Subject-lecturer, Subject-student, User provide specific functions. These include
Hibernate framework is used to automate the object • Password hashing
relational mapping. From that a class is made for each table in
the database, which makes it possible to access the database • Password salting
efficiently using caching mechanisms. • Sending emails

IV. SYSTEM IMPLEMENTATION • Sending Ajax requests


The main algorithmic part that is developed is included in
A. Tools And Technologies Used the Statistical information sub system. Since a large volume of
• JAVA [3] data has to be analyzed in the browser to generate statistical
• Hibernate [9] data (statistical graphs are not stored in the database, but
generated in the browser when required), the efficiency of the
• HTML, BOOTSTRAP, CSS [10] algorithm plays a vital role.
• MYSQL [11] Statistical information subsystem incorporates following
algorithms
• XAMPP [12]
• Search: Linear search is used.
• NETBEANS [13]
• APACHE JMeter [5] • Sort: In order to order the student results in a specific
order, sorting is required. Marks are sorted using
B. Design Tools quick sort algorithm. (In this case quick sort is the
ideal algorithm since the data set can be assumed to
• NCLASS [4] be equally distributed).
• Draw.IO [14]
• VISIO [8]
F. Main interfaces

Figure 14 Subject Enrollment

Student can enroll for subjects that are available for his
batch.

Figure 11 Login window

User enters username and password, and the system


authenticates the user. If password is forgotten, user can use
forget password, which will send a mail to the user, which
helps to recover the account.

Figure 15 Student MCQ paper view results

After finishing a MCQ paper (or when the deadline is


passed), student can view marks and answers.

Figure 12 Admin home

All the management functions are listed in the left side


panel.

Figure 16 Lecturer generate MCQ paper

Lecturer can generate a new MCQ paper using the MCQs


in the question bank.

V. SYSTEM TESTING AND ANALYSIS

Figure 13 Map lecturers A. Data And Integrity Testing


Technique: Invoke each database access method and
For a selected subject, admin can add lecturers (or process, seeding each with valid and invalid data or requests
remove). for data. Inspect the database to ensure the data has been
populated as intended and all database events have occurred
properly, or review the returned data to ensure that the correct
data was retrieved for the correct reasons.
B. Function Testing REFERENCES
Technique: Execute each use-case scenario’s individual [1] "Online examinations," uts.edu, [Online]. Available:
use-case flows or functions and features, using valid and http://www.uts.edu.au/research-and-teaching/teaching-and-
invalid data, to verify that: learning/assessment/online-assessment/online-examinations.
• The expected results occur when valid data is [Accessed 18 06 2016].
used [2] "Moodle- open source learning platform," Moodle Partner,
• The appropriate error or warning messages are [Online]. Available: https://moodle.org/. [Accessed 25 06
displayed when invalid data is used 2016].
• Each business rule is properly applied [3] "JavaServer Pages Technology," 07 03 2016. [Online].
Available:
• In case of erroneous operations, the database http://www.oracle.com/technetwork/java/javaee/jsp/index.html.
remains in a consistent state.
[4] "http://nclass.net/," [Online]. Available:
C. User Interface Testing http://nclass.sourceforge.net/. [Accessed 07 03 2016].
Technique: Create or modify tests for each window to [5] "jmeter.apache.," [Online]. Available:
verify proper navigation and object states for each application http://jmeter.apache.org/. [Accessed 05 06 2016].
window and object.
[6] "junit.org/," Dev@cloud, [Online]. Available:
http://junit.org/junit4/. [Accessed 05 06 2016].
D. Performance Profiling
Technique: [7] "seleniumhq.org/," OpenQA, [Online]. Available:
http://www.seleniumhq.org/projects/ide/. [Accessed 05 06
• Using Test Procedures developed for Functional 2016].
Testing.
[8] "visio/flowchart-software," [Online]. Available:
• Modifying data files to increase the number of https://products.office.com/en/visio/flowchart-software.
transactions or the scripts to increase the number of [Accessed 07 03 2016].
iterations that occur in each transaction.
[9] "Hibernate," [Online]. Available: http://hibernate.org/.
• Scripts are run on one machine (best case to [Accessed 26 06 2016].
benchmark single user, single transaction) and should [10] "w3schools," [Online]. Available:
be repeated with multiple clients http://www.w3schools.com/html/. [Accessed 26 06 2016].
E. Performance And Security Failures [11] "mysql," [Online]. Available: https://www.mysql.com/.
[Accessed 26 06 2016].
OES is subjected to stress test using Apache JMETER tool
[5]. The test results indicate that the system can support 1000+ [12] "apachefriends.," [Online]. Available:
simultaneous users. https://www.apachefriends.org/index.html. [Accessed 26 06
2016].
Using Selenium Web driver [7] for JUNIT [6], all the
interfaces are checked, and the associated vulnerabilities are [13] "netbeans," [Online]. Available: https://netbeans.org/.
fixed. [Accessed 26 06 2016].
[14] "draw.io," [Online]. Available: https://www.draw.io/.
VI. CONCLUSION AND FUTURE WORK [Accessed 26 06 2016].
OES provides a complete solution for online examination. [15] "GSON," [Online]. Available: https://github.com/google/gson.
In order to make it a standalone system, it incorporates [Accessed 26 06 2016].
required management tasks that are in built to the system. Best
practices are used when implementing the software in order to [16] "commons.apache.," [Online]. Available:
maintain maintainability, usability, security and other non- https://commons.apache.org/proper/commons-
functional requirements. Having the ability to generate codec/download_codec.cgi. [Accessed 26 06 2016].
various statistical details gives OES a higher business value. [17] "developers.google," Google, [Online]. Available:
The system will be developed to support certain enhanced https://developers.google.com/api-client-
features. (Example: MCQ papers with enhanced library/java/apis/gmail/v1. [Accessed 26 06 2016].
functionality). File submission facility will be included in OES [18] "dev.mysql.com/," [Online]. Available:
as a further development. https://dev.mysql.com/downloads/connector/j/. [Accessed 26
06 2016].

View publication stats

You might also like