Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

2018 Mit 025

Download as pdf or txt
Download as pdf or txt
You are on page 1of 106

Web based Examination Management

System for TVEC

P. M. C. P. Gunathilake
2021
Web based Examination Management
System for TVEC

A dissertation submitted for the Degree of Master of


Information Technology

P. M. C. P. Gunathilake
University of Colombo School of Computing
2021
Declaration
The thesis is my original work and has not been submitted previously for a degree at this or any
other university/institute.

To the best of my knowledge it does not contain any material published or written by another
person, except as acknowledged in the text.

Student Name: P.M.C.P. Gunathilake

Registration Number: 2018/MIT/025

Index Number: 18550255

_____________________

Signature: Date: 25th November 2021

This is to certify that this thesis is based on the work of

Mr. P.M.C.P. Gunathilake

under my supervision. The thesis has been prepared according to the format stipulated and is of
acceptable standard.

Certified by:

Supervisor Name: Prof. G.D.S.P. Wimalaratne

_____________________

Signature: Date: 26th November 2021

iii
Abstract
One of the core activities of the tertiary and vocational education commission's quality assurance
and assessment division is to conduct NVQ level 5 examinations for the technical, vocational
education and training sector. Every year, there will be two examinations held for different industry
sectors. In past years, NVQ level 5 examination related activities such as call application, student
registration, issue admissions, arrangement of papers, invigilator allocations, etc., had been
conducted by using a manual process. It takes lots of time and requires more human resources to
complete those activities. Another disadvantage of this manual process is the maintenance of
different types of documents in hardcopies and it becomes a challenging task to search information
when required.

An ICT enabled system would be great solution to overcome the above-stated problems with just
few clicks of work. This newly developed system used web technologies such as PHP framework-
Code Igniter with MYSQL database and apache webserver. This newly implemented system
handled all the information with the central database, and only the authorized users able to access
these information and services through the internet.

To test the new system, it used manual test cases and automated test cases. The quantitative
analysis method used to evaluate the usability of the system based on user feedback. It mainly
focused on the appearance, usability, functionality, performance, and security of the system. Based
on the usability evaluation result, each category scored more than 85% of both agrees and strongly
agreed categories. This web-based solution was enabled more user-friendly environment to handle
examination related activities. In addition to that, this system facilitates the registered students to
view their basic information by using their national identity card number. The newly developed
system includes all the features to facilitate for the students, training centers and staff of the TVEC.

iv
Acknowledgements
In performing my final project, it makes successful one with the massive help and guideline of
some respected persons. First of all, I am grateful to Prof. G.D.S.P. Wimalaratne for his outstanding
supervision and assistance in all the stages of the project completing with success. His experienced
guidance and enhanced skills were very much helpful for me to make this implementation
successful. Further, I express my gratitude to the University of Colombo School of Computing for
offering this master degree program and I should be thankful to all the MIT lecturers of UCSC and
Visiting lecturers who spent their valuable time to make us more knowledgeable and skillful on the
field of information technology.

Lastly, I would like to deliver my wholehearted thanks to my family members and friends who give
me their cordial cooperation. I couldn't complete a severe task and complete the project without
such help.

v
Table of Contents
Declaration ................................................................................................................................................... iii
Abstract ........................................................................................................................................................ iv
Acknowledgements ....................................................................................................................................... v
List of figures ............................................................................................................................................. viii
List of tables .................................................................................................................................................. x
List of Acronyms.......................................................................................................................................... xi
Chapter 1: Introduction ................................................................................................................................. 1
1.1 Motivation ..................................................................................................................................... 1
1.2 Aims and objectives ...................................................................................................................... 1
1.3 Scope ............................................................................................................................................. 2
1.4 Structure of the thesis .................................................................................................................... 3
Chapter 2: Background ................................................................................................................................ 4
2.1 Introduction ................................................................................................................................... 4
2.2 Manual processes of the examination ........................................................................................... 4
2.3 Requirement analysis .................................................................................................................... 6
2.4 Review of similar systems............................................................................................................. 8
2.5 Comparison of the proposed system with similar systems .......................................................... 13
2.6 Related technologies ................................................................................................................... 14
2.7 Related design strategies ............................................................................................................. 16
2.8 Feasibility study .......................................................................................................................... 17
2.9 Summary ..................................................................................................................................... 18
Chapter 3: Design ....................................................................................................................................... 19
3.1 Introduction ................................................................................................................................. 19
3.2 Process model.............................................................................................................................. 19
3.3 System architecture ..................................................................................................................... 20
3.4 Design patterns ............................................................................................................................ 21
3.5 Design methodology ................................................................................................................... 22
3.6 User interface design ................................................................................................................... 31
3.7 System access overview .............................................................................................................. 37
3.8 System security ........................................................................................................................... 37
3.9 Summary ..................................................................................................................................... 38
Chapter 4: Implementation ......................................................................................................................... 39
4.1 Introduction ................................................................................................................................. 39
vi
4.2 Methodology ............................................................................................................................... 39
4.3 Environment ................................................................................................................................ 39
4.4 Database implementation ............................................................................................................ 41
4.5 Code implementation .................................................................................................................. 44
4.6 Security implementation ............................................................................................................. 44
4.7 User interface implementation .................................................................................................... 45
Chapter 5: Testing and Evaluation .............................................................................................................. 48
5.1 Introduction ................................................................................................................................. 48
5.2 Identified test methodology......................................................................................................... 48
5.3 Test plan ...................................................................................................................................... 49
5.4 Automated testing ....................................................................................................................... 56
5.5 User evaluation............................................................................................................................ 57
5.6 Evaluation results ........................................................................................................................ 58
5.7 Summary ..................................................................................................................................... 62
Chapter 6: Conclusion ................................................................................................................................. 63
6.1 Introduction ................................................................................................................................. 63
6.2 Achievement of the objectives .................................................................................................... 63
6.3 Lessons learnt .............................................................................................................................. 64
6.4 Challenges faced ......................................................................................................................... 64
6.5 Future enhancements ................................................................................................................... 65
References ................................................................................................................................................... 66
Appendix A – Usability evaluation questionnaire ...................................................................................... 69
Appendix B – Response for questionnaire .................................................................................................. 73
Appendix C - System manual ..................................................................................................................... 80
Appendix D - User manual ......................................................................................................................... 83
Appendix E - Management information reports.......................................................................................... 88
Appendix F – Automated testing ................................................................................................................ 90

vii
List of figures
Figure 2. 1 Current examination process .............................................................................................5

Figure 3. 1 Diagram of the incremental model 20


Figure 3. 2 Architectural diagram 20
Figure 3. 3 Model-View-Controller (MVC) 22
Figure 3. 4 High-level use case diagram for web-based examination management system 23
Figure 3. 5 Class diagram for the proposed system 27
Figure 3. 6 Sequence diagram for user login 28
Figure 3. 7 Sequence diagram for user registration 28
Figure 3. 8 Activity diagram for user registration 29
Figure 3. 9 ER Diagram for the proposed system 30
Figure 3. 10 Landing page of the system 31
Figure 3. 11 User login interface 31
Figure 3. 12 Summary information page 32
Figure 3. 13 Institute registration interface 32
Figure 3. 14 Student registration interface 33
Figure 3. 15 Student information page 33
Figure 3. 16 MIS report module 34
Figure 3. 17 Number of students in module wise 34
Figure 3. 18 Number of students pass rate in module wise 35
Figure 3. 19 Number of students in course wise 35
Figure 3. 20 Admission card 36
Figure 3. 21 Students’ attendant sheet based on center and course 36
Figure 3. 22 System access overview 37
Figure 3. 23 Enable XSS filtering 38

Figure 4. 1 SQL quarry for creating a database 41


Figure 4. 2 SQL quarry for creating table "Create_Exam” 42
Figure 4. 3 SQL quarry for creating table "Examination_center” 42
Figure 4. 4 SQL quarry for creating table "staff" 43
Figure 4. 5 Coding of the user login interface 44
Figure 4. 6 SHA1 encryption 44
Figure 4. 7 Manage examination 45
Figure 4. 8 Assign students to exam 45
Figure 4. 9 Dashboard 46
Figure 4. 10 Display lists of students 46
Figure 4. 11 Assign students to examination 46
Figure 4. 12 Manage user roles 47

Figure 5. 1 Login function test result 56


Figure 5. 2 Automated test result of the training center registration UI 57
Figure 5. 3 User evaluation result under the appearance 58

viii
Figure 5. 4 User evaluation result under usability 59
Figure 5. 5 User evaluation result under functionality 60
Figure 5. 6 User evaluation result under performance 60
Figure 5. 7 User evaluation result under security 61
Figure 5. 8 Summary of usability evaluation 62

ix
List of tables
Table 2. 1 Pre and Post examination activities ..............................................................................11
Table 2. 2 Comparison of similar systems with a proposed solution ............................................13

Table 4. 1 Minimum hardware requirement for development .......................................................40


Table 4. 2 Minimum hardware requirements for server ................................................................40
Table 4. 3 Minimum hardware requirements for user ...................................................................40

Table 5. 1 User login test plan .......................................................................................................50


Table 5. 2 Training center registration ..........................................................................................50
Table 5. 3 Student registrations .....................................................................................................51
Table 5. 4 Test case for user login .................................................................................................52
Table 5. 5 Training center registration number validation ............................................................53
Table 5. 6 Validate student NIC number .......................................................................................54
Table 5. 7 Validate the uniqueness of the NIC number .................................................................55
Table 5. 8 Likert scale ...................................................................................................................57
Table 5. 9 User evaluation result under appearance ......................................................................58
Table 5. 10 User evaluation result under usability ........................................................................59
Table 5. 11 User evaluation result under functionality..................................................................59
Table 5. 12 User evaluation result under performance ..................................................................60
Table 5. 13 User evaluation result under security .........................................................................61
Table 5. 14 Overall usability responses .........................................................................................61

x
List of Acronyms
EMS Education Management System

ICT Information and Communication Technology

IT Information Technology

NVQ National Vocational Qualification

SMS Short Message Service

TVEC Tertiary and Vocational Education Commission

UCSC University of Colombo School of Computing

UI User Interface

xi
Chapter 1: Introduction
1.1 Motivation
TVEC conducts two common examinations per year (TVEC 2009) for the NVQ level 5 & 6
students. Those students will participate in different occupational areas such as Quantity Surveying,
Construction Technology, ICT, Cosmetology and etc. There are total numbers of 12,000 students
who will be participating in this common examination. In every year, the total number of students
and occupations will be increased gradually. This examination management process is getting
harder and harder without implementing proper IT solutions.

Therefore it is more convenient to use information system’s based solutions to organizations,


collect data and process them according to the needs of the management. This proposed web-based
examination management system converted the existing manual processes like registering students
for examination, issuing admission, keeping past recodes and providing required reports, and all
other examination-related activities to an automated system.

After successful implementation of the system, it will reduce the time taken for the NVQ level 5
examination management processes by converting the entire manual tasks to an IT system and it is
support to increase the staff's productivity. In addition to that, it will increase the accuracy of the
reports. Finally, students may receive their certificates without any delay.

1.2 Aims and objectives


This project aims to develop a web based examination management system for the TVEC to
improve the activities related to the current examination conducting process.

The main objective of this system is to provide a “Web Based Examination Management System”
to automate the activities carried around the examination management process by the assessment
quality assurance division of the TVEC, in a more secured, accurate and efficient way. In addition
to that, this new system will provide an accurate, reliable, efficient and user-friendly system for
users.

1
Further following objectives will help to
● Convert the manual examination management process into the IT system and it is
support to increase the productivity of the staff.
● Register students for the examination through an online system without any errors.
● Enhance the quality of the examination management process.
● Reduce the time taken to conduct examinations.
● Save the cost by reducing the document work.
● Remove the repeating data.
● Increased the accuracy of the reports.
● Decrease the workload of the users.
● Minimize the audit queries.
● Build up better communication (information exchanged) between training providers,
students, and TVEC.

1.3 Scope
The primary purpose of the proposed project is to reduce the manual process of examination
management, improve the quality of the examination process and the staff's productivity. This
system will provide user credentials with user authentication levels such as training providers and
examination management staff. Then training providers may have the facility to register their
students with this online system and apply for the NVQ level 5 examinations. It leads to TVEC
examination management staff to perform many different tasks.

This system facilitates the management of examination related activities such as maintain courses
and modules, manage examination centers, issue admission to the students, result management,
record examination related expenses, get student attendants, result list and record disciplinary
actions. After completing the tasks, the user should log out of the activity, and the system allows
them to log out. It will improve the security of the system to ban unauthorized access to the system.

2
1.4 Structure of the thesis
All the chapters of this thesis are aligned with the proposed project which is carried out during the
various stages of the project. Each chapter will contain the required details to understand the project
development and implementation process.

Background chapter, describe the details about existing similar systems globally. Further, it gives
details of new technologies which are useful for this proposed project.

Design chapter describes the development methodologies used to complete the objectives. The
object-oriented approach adopted during the project is explained including diagrams used for
designing and outlines of the main user interfaces with screenshots.

Implementation chapter describes the implementation steps and used tools according to the
analysis and design. This will describe what kind of languages are used, the database and how the
database integration is established. Further, it will be discussed the hardware and software
requirement.

Testing and evaluation chapter explains the testing and evaluation process of the system. Further,
it was discussed different test methods and evaluates the functions of the system by using some test
cases. This testing and evaluation are some of the important factors of the sustainability of the
system. User evaluation is also included in this chapter.

Conclusion chapter, the general conclusion of the project which includes outcomes of the project, a
general assessment of the work done and possible further improvements are discussed in this
chapter which is the final chapter.

3
Chapter 2: Background

2.1 Introduction
To identify the difficulties of the manual process of examination management, there are many
information technology software systems developed to enhance the quality of the activities in the
examination process. This chapter explained existing similar systems with their features. In
addition that describes the latest technologies used in the world and alternative technology options
that can be used for the project.

2.2 Manual processes of the examination


Every year, TVEC is conducting two examinations for NVQ levels 5. TVEC decided the dates for
the examinations and informed training providers. Then training providers should send their
students' information by using Excel files or hard copies to the assessment division before the
closing date.

The next step is manually check the students' lists sent by the training providers, and if there are
any errors, then coordinate with the relevant training centre and re-correct it. After that, identify the
examination centres, assign students to those centres, and issue admission to the training centre
through email. While processing the applications, identify the paper setters with paper moderators
and assign them to paper setting and moderating tasks. Furthermore, assign examination
supervisors and invigilators for the examination centres. After processing the applications,
manually prepare the reports to assigned examination supervisors and invigilators for the
examination centres. Further, those reports were used to prepare the budget estimates to conduct the
examination.

After conducting the examination, all the attendant sheets were checked with the admission
manually before released the final results. After releasing the result, students may have the
opportunity to apply re-correction of the results. At the end of the examinations, it is essential to
generate different reports required for top-level management. The following figure 2.1 shows the
existing manual process of examination management.

4
Figure 2. 1 Current examination process

2.2.1 Drawbacks of the existing manual system


Regarding the existing process, all the examination related activities are conducting by using the
traditional paper-based method. This manual process required a large number of human resources,
and also it may consume more time to complete the tasks. Using this kind of hard copy takes more
time to search for the information, and sometimes information may not be available when required.
In addition to that, updating the data and storing those hard copies are also challenging tasks for the
staff when using this manual system. Another major disadvantage is the low accuracy of the
information when generating different types of reports. Every year, the number of students who
applied for the examination will increase then it is becoming a difficult challenge to conduct
examinations using this kind of manual system. Finally, it will affect to issue result for the students.

2.2.2 Comparison of web-based EMS with the existing system


Accuracy of the Data

When collecting student information manually it may contain lots of errors, but through the
proposed web-based system it can be minimized by applying validation for the online forms. Then
will be increased the accuracy of the data.

Time-consuming and human capital

In the manual examination management process, it takes more time consuming and need more
human capital to manage those activities. Through this new system, all the data is stored in one
database and it will help users to manage their processes through user-friendly interfaces. Then it
takes less time and human capital to manage all activates. Another advantage is system users can
5
handle activates online at any time anywhere. Further, this central database will help to generate
more accurate reports in a short time without involving more people. Therefore TVEC can be
release final results without any delays.

Security and storing data

In this current process, all the data is stored in hard files without adequate security. These files may
be misplaced and difficult to search and update data. Another disadvantage is the difficulty to find a
place to store those files securely. As the solution for these security issues, proposed system will
handle all the data in one database with more security. Users are allowed to access those data based
on their authorization levels. To prevent data losses, it is easy to maintain database backups.

2.3 Requirement analysis


In the software development life cycle, identifying the clear requirements for the system is the real
challenge task. This requirement gathering and analysis is an iterative process with continuous
feedback from each activity to other activities which involves domain understanding.

For this project, requirements were gathered by holding several meetings with the client (deputy
director, assistant director and program Coordinator in the assessment and quality assurance
division) and observed the manual process of the examination which is carried by the assessment
quality assurance division. Further director (information systems) was interviewed to identify the
current information technology infrastructure of the organization. Those discussions were very
helpful to get a clear idea of the requirements. After those productive meetings, the existing manual
process was identified to convert an automated system.

2.3.1 Functional requirements


It describes the functions this web-based solution must perform. In addition to that, the functional
requirements have highlighted the expectation of the user. The following specification describes all
functionalities of the web-based system.

User Login

1. The system shall verify the valid user ID and Password.


2. The system shall not allow entering the system with an invalid user ID and Password.
3. The system shall have the facility to change user passwords.
4. The system shall allow entering the system and display information based on the
authentication level.
6
Administrator

1. The system shall allow registering users and issue user ID and password.
2. The system shall allow managing user authentication levels.
3. The system shall allow active or inactive registered users.
4. The system shall allow resetting the user's password.

Training provider

1. The system shall allow reregistering their students in the system for examination.
2. The system shall allow downloading examination admissions.
3. The system shall allow downloading of results.
4. The system shall allow to update examination payment.
5. The system shall allow sending re-correction requests.

Examination management staff

1. The system shall allow updating examination dates.


2. The system shall allow to update examination payment information, issue admission to
students, manage course information, add, update and delete paper setters, paper
moderators, invigilators, and paper markers, add, update and delete examination centres.
3. The system shall allow assign students to the examination centres and assign invigilators to
the examination centres.
4. The system shall allow to add, update and delete examination result, course and unit wise,
examination budgeting and payment handling and record disciplinary actions.
5. The system shall allow generating different reports and display results in the dashboard.

Students

1. The system shall allow entering the student to enter their valid national identity card
number.
2. The system shall allow viewing their basic information through the online system.

2.3.2 Nonfunctional requirements


Nonfunctional requirements will be based on reliability, security, accuracy, consistency and user-
friendliness, efficiency and maintainability. In the system development life cycle, those
nonfunctional requirements should be considered.

7
Performance requirements

1 The system should reliable to use and should provide meaning full messages when an
error occurs.
2 GUI should be user friendly and should maintain consistent user interfaces.
3 Data processing time should be less.
4 Font type, size and colour of the web pages should be user friendly.
5 Web site navigation should be easy and clear.
6 The system should have used a secondary navigation system that shows a user's location
on a web page (breadcrumb trail).
7 The system should be easily maintained by a trained person.
8 User passwords should store in database in encrypted format.
9 The system should run on minimum hardware requirements.
10 Data should be accurate.

2.4 Review of similar systems


A similar system survey is done to identify features of the systems. The main purpose of this survey
is to gather knowledge of previously carried out systems to study their methodologies and features.

Some of the similar systems are listed below.

2.4.1 Deskera examination management system


This examination management system was managed by the planning and execution of the
examination. This system consisted of 8 main features as manage different examination types,
configure examination rules, manage examination venues, book resources with logistics
management, manage faculty availability and invigilator assignment, plagiarism detection with
misconduct management, manage examination timetable, manage defaulter records, disciplinary
action which are required of the examination management (Deskera 2008).

2.4.2 Creatrix examination management system


According to Creatrixcampus.com 2021, it is the fully automated examination management system
for schools, colleges and universities. Further, was managed each process at every stage with
complete confidentiality and significant cost reduction. This system contains the main four key
features.

8
Plan & Register
All the examination preprocessing activities such as student registration, generate time table, assign
invigilators, allocated exam hall, generate attendant sheets and issue indexes for seating plans with
shuffling features done under this feature.

Question Paper Setup


Setup question papers and get approvals processed within the system and under complete
encryption. Further, this system supports setting up question banks, questions mapped with Bloom's
taxonomy and generating the different difficulty levels of question papers.

Conducting Exams
The entire workflow was controlled by the system during the examination. It was managed
activities such as room allocation, rescheduling, incident/misconduct management and so on. In
addition to that this feature supports creating multiple types of question papers such as multiple-
choice questions filled in the blank, true or false, column matching and more. This will increase the
secrecy and credibility of the examination process.

Evaluate & Publish


This feature is supported to process the examination result and published it. Further, it managed all
information related to student and invigilator attendance by session/hourly/day wise attendance. In
addition to that, it generates transcripts, reports and displays information on the dashboard.

2.4.3 Fedena - college and school management software


Fedena is an ERP solution for school management. It supports all the activities related to school
management. The examination management system is one of the core modules out of the 20 core
modules. There are four main features such as exam management, generate detailed reports, grade
book management, the online examination which are available under the examination management
module (Fedena.com. 2021).

2.4.4 Apply online form - online application & exam management


system
Based on Applyonlineform.com 2021, this system was offered an end to end solution for online
examination management. It manages online admission and collects fees with a built-in payment
gateway electronically. Also, this system can be customized based on the organizational
requirement. This solution was hosted in cloud servers and used encrypted terminologies to make
9
the completed process error-free. There are four main categories available under an examination
management system.

Online registration process


It provides exam registration and online application form submission facility and based on the
examination rules and regulations the application form layout can be customized.
Fee payment procedure
Accept online payment through the payment gateway. All the application fee transaction was
secured by using a secure socket layer protocol.
Online exam management
For online examination, it provides a secure exam browser that enables freezing the candidate's
browser while taking the exam and disable internet browsing.
Exam result processing
All the results were processed and published by using secured cloud servers. The system facilitates
different grading logics for different sections & questions type.

2.4.5 VirtualX Pro


Myvirtualx.com 2021 states that VirtualX Pro is a fully automated examination management
system that can significantly help any organization improve efficiency when conducting online
examinations. Another advantage is VirtualX pro offers a hosted service, able to customize
according to the organizational requirements and able to connect learning management systems
through API.

VirtualX Pro support role-based access and security for users, generate reports and results, schedule
exams for individuals or groups, notify the examinee, support question bank, IP based access-
controlled during the examination, multiple language support to manage examination.

VirtualX Pro is a powerful fully web-based online examination management system that caterers to
all online examination management requirements.

2.4.6 Swift HCM suite exam management system


This system offered a cloud-based exam platform for online examinations. This platform provides
to create, manage, evaluate and analyse the examination. Further, this system is integrated with a
reporting tool that enables the evaluation and analysis of the learner's progress. This system

10
contained key features like a user-friendly interface, intuitive dashboard, authoring questions,
designing exams, exam library, and powerful analytics (Swifthcm.com 2021).

2.4.7 Databee exams manager


Exams Manager is designed to manage all activities related to the examination office at the
universities or higher education institutes. This system comes with a lot of rich features which are
supported to do the examination management process easily and accurately. It also helps to reduce
the cost and time for the examination preparation. (Databee.com.au 2021)

Databee Exams Manager provides many facilities such as ease of use, flexibility, mobility, secure
exam paper upload, supervisors, alternative exam conditions, correspondence, exam allocation,
exam paper printing, distance exams, incidents management, personalized exam timetables, reports,
student attendance, etc. to manage examination.

2.4.8 Belmount
This examination management system offers the entire lifecycle of the examination process on a
common and secure platform, offering ease of accessibility to administrators and candidates.
Further, it will have the facility to manage both online and offline examinations, real-time
attendance, course regulation, exam fee verification and result. This system provides build-in
reports and customized reports as well. (belmonttech.net 2018)

This system covers following table 1, which shows the pre and post examination activities

Pre exam Post exam


1. Processing candidate application forms 1. Record of internal/sessional grades
2. Entry of subject and paper details 2. Record of information such as
3. Admit Card, Time Table, Centre List absenteeism, unfair means used during the
generation exam & withheld cases
4. Centre allocation 3. Result processing and evaluation
5. Seating plan 4. Corrections to name/address and other
6. Invigilator allocation as per staff’s location contact details
preference 5. Merit list generation
7. Incorporation of online/offline payment 6. Result publishing
gateways
7. Generation of topper’s list, result withheld
list, convocation list and notices, degree
certificates

Table 2. 1 Pre and Post examination activities

11
2.4.9 MeritTrac
This system is supported to conduct online examinations. It facilitates student registration, creating
an exam and candidate verification. These exam systems come with online invigilation and
proctoring features to ensure a fair examination process.

It spans end-to-end examination management services – from application processing and pre-exam
services to exam administration, on-screen marking, and result processing. The examination
solutions support not only paper-based and computer-based testing (CBT) but also Optical Mark
Recognition (OMR).

In addition to that this system was introduced new system to minimize fraud and cheating. To do it,
AI can help reduce fraud by taking the images of students in examination halls and verifying them
against scanned documents. Plagiarism detectors can help detect copying while webcams help
monitor multiple exam locations for malpractice. AI-based algorithms can validate even keystroke
signatures by evaluating keyboard pressure and speed. ( merittrac.com 2021)

2.4.10 mettl
This online examination management system supported pre-exam activities like create and schedule
exams, setup anti-cheating tools, setup evaluation rules. The examination system covers Conduct
exams digitally, Proctor using AI technology, Generate student's credibility reports. Post exam
activities such as assign answer sheets to evaluators, monitor and manage the evaluation process
and declare results online will cover this system.

To enhance the security of the examination system, it is used 3-point student authentication, a
secure browser to ensure a safe exam environment and AI-based and human-based proctoring tools.

12
2.5 Comparison of the proposed system with similar
systems
All of the above-mentioned systems are categorized under the examination management stream.
Following table is used to compare similar systems in prior works with the proposed system, using
several functional criteria. Based on the criteria, the table highlights the gaps of similar systems and
the gaps the proposed system will possibly fill.
Filled with the “” symbol means the system complied with the criteria and the “X” symbol means
the systems not complied.

Table 2. 2 Comparison of similar systems with a proposed solution

13
2.6 Related technologies
This new solution was proposed as a web-based solution. Then it could be used with the latest web-
based technologies to develop the front end and back end of the system.

2.6.1 Cloud server


Without running in-house servers, it gives lots of benefits when using cloud servers. The cost-
saving potential is the major reason for cloud services adoption by many organizations. Further
cloud computing gives the freedom to use services as per the requirement and pay only for usage
(Guru99.com. 2021). In this cloud computing, there are three major cloud computing offerings such
as Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS)
(Guru99.com. 2021). Based on the client requirement it can be selected out of these three services.
All the data with high security will be handled by the cloud owner. In this case, the entire
infrastructure is handled by could owners. Therefore even if it provides many services with the
security client company should decide whether it is going to keep secret data on-premises or in the
cloud base.

2.6.2 Bootstrap
Bootstrap is a free and open-source front end development framework for the creation of websites
and web apps. This framework was built based on HTML, CSS, and JavaScript (JS) to facilitate the
development of responsive application. According to the WhatIs.com. 2021, the main advantage of
bootstrap is device responsiveness. It will detect the screen size of the device which is used by the
client and the web page may rearrange according to the screen size without dropping the quality of
the contents. In addition to that, it is an open-source free framework for front-end development.

2.6.3 PHP
PHP is the free scripting language that is used for server-side scripting. Further, it was used to
develop a static website, dynamic website and web application. PHP scripts can only be interpreted
on a server that has PHP installed and the client computers can access PHP scripts by using a web
browser only. It can be used inside of the HTML codes and it was interpreted at runtime
(Guru99.com. 2020).

14
2.6.4 MYSQL
MySQL is a freely available open-source Relational Database Management System (RDBMS) that
uses Structured Query Language (SQL). It was identified as quick processing, proven reliability,
ease and flexibility of use in many open-source PHP applications (Hosting. S. 2021).

2.6.5 Apache webserver


Apache is an open-source and free web server software that powers around 40% of websites around
the world. The official name is Apache HTTP Server, and it’s maintained and developed by the
Apache Software Foundation (Hostinger Tutorials 2021).

The main purpose is to establish a connection between a server and the browser of website visitors
(client-server architecture). Further, Apache is considered as cross-platform software which is
supported on both Linux and Windows servers.

2.6.6 CodeIgniter
CodeIgniter is a simple but powerful PHP framework. This framework is supported by developers
who need a simple and elegant toolkit to create full-featured web applications.it will be based on
MVC architecture. In addition to that, CodeIgniter was offered built-in protection against CSRF
and XSS attacks (CodeIgniter.com 2021).

2.6.7 HTML and CSS


HTML (the Hypertext Markup Language) and CSS (Cascading Style Sheets) are two of the core
technologies for building web pages and web Applications. HTML was used to build the structure
of the web page with the contents and CSS was used to attract the web page by adding colours,
layouts and fonts. W3.org 2021 states that, another advantage of the CSS is, it can be used same
CSS file for different web pages then it will improve the consistency of the website.

15
2.7 Related design strategies
2.7.1 Comparison of web based EMS with similar systems

1. All the above software systems were designed to conduct online examinations, but NVQ
level 5 examinations are not online examinations. Therefore it is not matched with TVEC
requirements.
2. All software has a monthly fee and there is an additional cost per student if exceeded the
capacity limits. Then TVEC has to spend a huge amount of money on the software license
per year.
3. Another challenge is software customizations there will be additional charges for any
software customization because it cannot use as it is. Then it needs to customize according
to the TVEC requirements.
4. Similar systems were developed to manage the examination in one organization like a
school, university, etc., TVEC is conducting examinations for students from different
training centres and those training organizations will register their students with this system.
5. All the systems are operating on the service provider's cloud servers then it creates security
issues for students' data and other related data.
6. All the NVQ 5 examinations are conducting module wise and the final grade will be
calculated based on the module result. Those similar systems design for one time
examinations such as entrance examinations, school examinations, competitive
examinations, etc.
7. All the systems are not managing invigilators through the online systems except the
Deskera Examination management system.
8. There are no similar systems from the above review systems with budget estimate
calculation features.

When examine all the above factors, those similar systems were not fulfilled the requirements of
the TVEC to conduct NVQ level 5 examinations. Therefore a web-based online system was
proposed for the examination management system. This newly developed system facilitates to view
basic information of the registered students. Web technologies, PHP & MySQL are used as the
development tools based on the Model View Controller (MVC) architecture. In addition to that, one
of the PHP frameworks (CodeIgniter) is used for this development. In this MVC framework, the
Controller receives all requests for the application and then works with the Model to prepare any

16
data needed by the View (W3schools.in 2020). The View then uses the data prepared by the
Controller to generate a final presentable response. This architecture helps to avoid complexity by
dividing an application into three units.

Since this is a web-based system, examination management could be installed in a web server in the
Windows or Linux operating system. Cross-platform and free open source software called XAMPP
server is a solid and stable high-performance platform for windows (Hanna F 2021). The advantage
of the Apache, PHP and MySQL combination in the latest versions which is open source is unified
with commercial operating system windows. Then the system is made available to the authentic
users in the TVEC and TVEC registered institute through the Internet.

2.8 Feasibility study


The feasibility study is important to identify whether the project of a web based examination
management system is economical, technical and operationally feasible. Then it will be satisfied
with the organizational current requirement and support the future changes as well. This feasibility
study is carried out from the following different categories.

2.8.1 Operational feasibility


When considering users' point of view, this new system is fully GUI based and user-friendly and
they can easily understand the functionality of the system. It was identified that most of the users
didn't have much technical knowledge. According to the study, it is concerned the organization is
comfortable implementing this system and it will help to reduce the workload of the examination
activities.

2.8.2 Technical feasibility


This system was developed as a web based system. It used a free open source web server called
apache to host the system and for the database it used MYSQL. This system was developed based
on a PHP framework such as “CodeIgniter”. These technologies are not consumed much hardware
resources. To connect the system from outside the TVEC, required an internet connection but
inside users can use a local network.

2.8.3 Economic feasibility


TVEC is a fully government-funded organization therefore it has a limited budget for this kind of
development. To manage this development within the limited budget, free and open-source

17
software is used for this online system development. Further, existing hardware is used to deploy
the system. This EMS software is cost-effective.

2.8.4 Schedule feasibility


For this project, the time has been scheduled from start to end, and the project has been carried out
step by step likewise requirement collecting, analyzing, designing, development, testing,
maintenance and documentation of the system.

2.8.5 Implementation feasibility


To implement this system, TVEC already has in-house and cloud servers with sufficient capacities.
Those servers have high bandwidth internet connectivity. Therefore this project can easily be made
available online without much consideration of the hardware and software. From the user's point of
view, it is required a good internet connectivity with web browser. This database and software are
required to be set up at the administration side. When completion of the installation the
administrator and other users can access this system from their places through the internet at any
time.

2.9 Summary
In this chapter, get some understanding of the existing manual examination management system
and considered literature survey to study similar systems which are used for examination
management. It is important to study the nature of the examination system, quality aspect of the
examination system, various phases of the examination, and limitations of manual examination and
currently available examination software before introducing a new system. Through the
requirement analysis, it is pointed out the specific outcomes expected from the proposed system
that are required to overcome current challenges. Further study new technologies which are
supported to develop the new system.

18
Chapter 3: Design
3.1 Introduction
New ICT enabled system design mainly focused on the architecture of the system, module and
components of the system with a flow of data in different interfaces of the design components of
the system (Didacus Odhiambo, 2018).

System design takes more time for this project and it is the most important part of this project. This
chapter consists of the process model, system architecture, design pattern, design methodology,
database design, designing of user interface and security which are used to design the web-based
examination management system.

3.2 Process model


There are many different process models like Rapid Application Development (RAD), Agile,
Iterative model, Spiral model, Prototyping model and Incremental which can be used to guide the
modern software development projects. The incremental model was chosen from a different kind of
process model.

Incremental development is a process of partial implementation of the entire system. In each


increment, the working product will be released as a part of the total project. From the client-side,
this early delivery of the part of the operational product will be increased satisfaction. Another
advantage of this method is the client can evaluate the released increment and suggested
modifications that can be implemented in future increments. This process model is very much
suited to the small project and limited development team members with initially identified clear
requirements. (Neha, 2020).

At the initial stage, all the functional requirements of the proposed examination management
system were identified and based on that it was separated into modules such as user management,
student registration, manage course and module, etc, following figure 3.1, displays the incremental
model related to the examination management system development. Therefore proposed system
could be developed module wise. Further, this project is not a large scale project and one developer
can be used to develop this project. At the client-side, it is easy to review the system module wise
and it gives an advantage for further improvement of the system. After considering those facts, the

19
incremental process model very much complies with this proposed system development therefore
incremental process model was selected for this development.

Figure 3. 1 Diagram of the incremental model

3.3 System architecture


This system architecture is a conceptual model that defines the structure, behavior, and more views
of the web-based EMS. Architecture gives a high-level explanation of formal description and
representation of a system, organized in a way that supports reasoning about the structures and
behaviors of the system.

Figure 3.2 an architectural diagram, shows the system that is used to abstract the overall outline of
the software system and the relationships, constraints, and boundaries between components.

Figure 3. 2 Architectural diagram

20
3.4 Design patterns
In the design patterns, there are several design patterns like Model-View-Controller (MVC) pattern,
micro services pattern, client-server pattern, controller-responder pattern and layered pattern that
can be used for the software development project. MVC pattern was preferred from a different kind
of pattern for this project and it was suited for web-based development.

Model-View-Controller (MVC) pattern

Anand Butani (2020) state that when the application is used MVC pattern then it divides an
application into three main components called model, view and controller.

Model, this part of the MVC pattern was handled application data and functionality. It allows to
builds the connection with the database which supports the dynamic data structure of the software
application.

View, this is a visual representation of the data- like a chart, diagram, table, and form. This part has
handled the functionality that directly interacts with the user graphical user interfaces (GUI) like
clicking a button or an enter event.

Controller, basically it connects the model and view. The controller gets the inputs to form a view
and retrieves or updates data from the model. After that the controller passes data from the model
back to the view for the user to see in a fine display.

All the components developed by using the MVC design pattern are independent of each other.
Then it helps developers to reuse the components and code easily for other applications. It is easy
to testing, maintain and modify codes. The following figure 3.3, display MVC design pattern.

21
Figure 3. 3 Model-View-Controller (MVC)

3.5 Design methodology


In the System design of Web-based Examination Management System, the following object models
were used for the designing process of the system.

● Use Case diagram – it represents the functions of a system from the users’ point of view.
● Use case narratives - it was explained how the use case interaction between an actor to
achieve a goal of observable value.
● Class diagram – it represents the static structure in terms of classes and relationships.
● Sequence diagrams – shows how the objects interact over time.
● Activity diagrams – shows object states at a specific timeline.
● Database design - Entity-relationship diagram represents the structure and the relationship
of the database
● User Interface design – it gives the graphical view of the system.

22
3.5.1 Use case diagram
According to tutorialspoint.com, typically use case diagram represent the interactions between an
actor and a system to complete the process. Actors may include human users, internal systems or
other external systems. Further, the relationships such as include, extend and generalization are
depending on the behavior of the process. Figure 3.4 is the use case diagram that represents the
high-level use case diagram that defines all activities carried out in the EMS.

Figure 3. 4 High-level use case diagram for web-based examination management system
23
3.5.2 Use case narratives
Use Case ID: 01
Use Case Name: User Management Module
Actors: Administrator
Description: This use case describes which actor has privileges to create the other user
accounts at which phase
User Registration: The training centre should send their application
through the system and after verifying the data administrator will approve
the registration. In addition to that active/inactive the users by admin.
Login: Unique user name and password will be provided to all users
Forgot Password: Allow user to recover their forgotten password by
entering a registered email ID
Change Password: user allow to change the password by old password
with the new password
Preconditions: Web browser opened and system URL accessed.
The user who has the privileges to create the user account need to be
logged into his user account
Postconditions: Registered users have to use the system, others have no access.
Normal Course: User Registration:
● The applicant applies with the necessary data.
● System checks all information is in the correct format.
● Notification will be display for the admin login for new
registration requirements.
● If the data is satisfied, new applicants can be approved by the
admin.
● The system will send the user id and password to the application's
email.
Login:
● Go to the login page and enters the user name and password.
● For the invalid entry, the user is redirected to the login page with
an error message.
● For the valid entry, the user is redirected to his/her portal page
where access is restricted according to the user account privileges.
Forgot Password:
● The system sends the user name with a new password to their
registered email address.
Change Password:
● The system allowed to change the password by using an old
password with a confirmation message.
Alternative If the user already resisted, the system displays the error message and
Courses: redirect to the login page.
To change the registered email address, need to send the request to the
Administrator.
24
Use Case ID: 02
Use Case Name: Register students
Actors: System user, Exam manage staff
Description: This use case describes the event of registering the students to
examination using the student registration module using their National
Identify Card (NIC) numbers, Name, Address, Gender, Course, Module,
E-mail & Mobile phone numbers.
Preconditions: Web browser opened and system URL accessed.
The user who has the privileges to register students is to be logged into his
user account.
Application call for the examination.
Postconditions: Further process Student management module is managed and maintained.
Normal Course: 1. Open browser.
2. Navigate to the Examination management system URL.
3. Log into the system user account.
4. To create/register eligible students:
a. Navigate to the student registration option.
b. Select the student course and module.
c. Submit the student details one by one or in excel format to bulk
update.
5. To update the student details:
a. Navigate to the student page
b. Select the student who needs to be updated.
c. Update the information
6. To view the registered student details:
a. Navigate to the student page
b. Search & sort students by NIC, name, email, mobile no,
address, course and module

Alternative If the student already registers, then no need to add basic information
Courses: again. Then display the student information and the system user can add
course and module for that student.

25
Use Case ID: 03
Use Case Name: Mange supervisors and invigilators
Actors: Exam manage staff
Description: This use case describes how to onboard and manage supervisors and
Invigilators
Preconditions: Web browser opened and system URL accessed.
The user has the privileges to register supervisors and invigilators to be
logged into his user account.
Available of basic information of the supervisors and invigilators
Postconditions: Available supervisors and invigilators for further process
Normal Course: 1. Open browser
2. Navigate to the Examination management system URL
3. Login to the exam manages user account.
4. Create/register supervisors and invigilators
a. Navigate to the supervisor's option and give the supervisor
details & submit
b. Navigate to the invigilator's option and give the invigilator
details & submit
5. View supervisors/invigilators
a. Navigate to the supervisors/invigilators option
b. Search & sort occupation by id, name, address, contact no,
email, status
6. Update invigilators:
a. Navigate to the supervisors/invigilators option
b. Search & select supervisors/invigilators
c. Update the profile details
7. Inactive supervisors/invigilators
a. Navigate to the supervisors/invigilators option
b. Inactivate the selected supervisors/invigilators

Alternative
Courses:

26
3.5.3 Class diagram
Based on the Guru99.com 2021, UML class diagram gives an overview of a software system by
displaying classes, attributes, operations, and their relationships. Further, this diagram displayed the
different types of objects in the system and the relationship between them. Figure 3.5, illustrated
the class diagram for this examination management system.

Figure 3. 5 Class diagram for the proposed system

27
3.5.4 Sequence diagram
1. Sequence diagram for user login

Figure 3. 6 Sequence diagram for user login

2. Sequence diagram for user registration

Figure 3. 7 Sequence diagram for user registration

28
3.5.5 Activity diagram
1. Activity diagram for user registration

Figure 3. 8 Activity diagram for user registration

3.5.6 Database design


Relational database concepts were used to design the database for this system. The concept of
database normalization was used to avoid redundancy, data anomalies and improve data efficiency.

At the point of view of softwareideas.net, an entity-relationship diagram describes the data model
of a system using entities that represent data types and relationships according to their
dependencies in between entities. Further observation, ER diagrams are used for designing
database schemas with entity attributes, primary and foreign keys. Figure 3.9 is the database
diagram that depicts the entities and attributes of the proposed system and also relationships among
entities.

29
Figure 3. 9 ER Diagram for the proposed system

30
3.6 User interface design
a) Landing Page

Figure 3. 10 Landing page of the system

b) Login

Figure 3. 11 User login interface

31
c) Main web page

Figure 3. 12 Summary information page

d) Display Institute information

Figure 3. 13 Institute registration interface

32
e) Student registration

Figure 3. 14 Student registration interface

f) Student dashboard

Figure 3. 15 Student information page

33
g) MIS report generate module

Figure 3. 16 MIS report module

h) MIS reports

Figure 3.17 shows the total number of students applies for the exam in ICT modules.

Figure 3. 17 Number of students in module wise

34
Figure 3.18 shows the pass rate of the modules related to the ICT course.

Figure 3. 18 Number of students pass rate in module wise

Figure 3.19 shows the total number of students registered for different courses.

Figure 3. 19 Number of students in course wise

35
Figure 3.20 shows the admission used for the examination.

Figure 3. 20 Admission card

Following figure 3.21 shows the attendant sheet to get the signature of the students at examination.

Figure 3. 21 Students’ attendant sheet based on center and course

36
3.7 System access overview
This examination management system is developed a full web-based and centralized web server
will be located at the head office or cloud. Clients from the head office and different parts of the
country will be connected to the main server through the internet using web browsers. Figure 3.14
is the system access overview diagram for the proposed examination management system.

Figure 3. 22 System access overview

This proposed web-based examination management system was developed based on a centralized
database. This system can be hosted in the cloud web server or locally hosted web server. The
entire users can access this system through the Internet with their user credentials. Based on the
authority level user will display functions.

3.8 System security


This system will access through the internet. Then it will be important to handle the security aspects
of the system and information. When considering security aspects there are three major concern of
the physical, logical, and behavioral security. All three must work together if the quality of security
is to remain high (w3computing.com (2021)).

● Physical
The computer and the server should be placed in a secure place and preventing unauthorized
access, and that equipment should prevent disasters as well.

37
● Logical
To improve security, user passwords should encrypt before storing the database.
Furthermore it recommends setting up a firewall and use SSL for secure communication.
CodeIgnitor has inbuilt facility to prevent XSS attacks. Following figure 3.19 shows that
enable the protection of the SXX attacks.

Figure 3. 23 Enable XSS filtering

● Behavioral
Some policies and procedures should be implemented to prevent attacks on information
systems come from inside the organization. Therefore, after implementing the system it is
recommended to introduce a nondisclosure agreement for the user.

3.9 Summary
This chapter aimed to explain the process model, system architecture and design pattern which are
used for the proposed system. Further different types UML diagrams were used to study the
proposed system. The major part of this project implementation has been covered over this chapter
in detail with supporting different types of diagrams, architectural plans and user interface design.

38
Chapter 4: Implementation
4.1 Introduction
This chapter presents the important steps carried out in the implementation phase of web base
examination management system. It includes details of the hardware and software tools such as
scripting languages, frameworks, platforms, database systems, etc., which are required to
implement this proposed system. Further explain, this chapter includes some of the code segments
which are used in the system development.

4.2 Methodology
Incremental model is used as implementation methodology and it was found to be very much
suitable for this web based examination management system because it can be used to develop a
working version that the users also can involve from the beginning. The further system can be
implemented module by module and it can be tested for any defects and errors. Based on the test
result clients may approve for deployment and new functions may be available for end-users.

4.3 Environment
This proposed solution is fully web-based and it used free and open-source software tools used to
develop the system. To implement the system, XAMPP is used to deploy the Apache web server,
PHP and MYSQL database which are the main required software. PHP framework called
“CodeIgnitor" was issued to develop this system based on the MVC architecture.

The below sections describe the selected programming language, database system and other tools
which are used to develop the system effectively.

39
4.3.1 Hardware environment

Table 4.1 shows the minimum hardware configurations for the system development environment.

Hardware Item Minimum configuration


Processor Core i3 2.4 GHz with 4MB cache
Ram 8 GB
Hard Disk 500 GB
Display 1024 x 786 Compliant colour monitor
Table 4. 1 Minimum hardware requirement for development

Table 4.2 shows the minimum hardware configurations for the webserver to hosting the web-based
EMS.

Hardware Item Minimum configuration


Processor Core i5 2.4 GHz with 8MB cache
Ram 16 GB
Hard Disk 1T HDD
Display 1024 x 786 Compliant colour monitor
Table 4. 2 Minimum hardware requirements for server

Table 4.3 shows the minimum hardware configurations for the system users.

Hardware Item Minimum configuration


Processor Core i3 2.4 GHz with 4M B cache
Ram 4 GB
Hard Disk 500 GB
Display 1024 x 786 Compliant colour monitor
Table 4. 3 Minimum hardware requirements for user

40
4.3.2 Software environment
a. Software requirement for system development
● Apache web server
● PHP scripting language
● CodeIgniter 3
● MYSQL database
● PHPMyAdmin to connect MYSQL database
● Notepad++ to edit the PHP scripting
● Visual Paradigm for UML diagrams
● Photoshop for image editing
c. Software requirement for the webserver
● Apache
● PHP
● MYSQL
● PHPMyAdmin
d. Software requirement for user computer
● Web browser
● PDF reader
● Internet connection

4.4 Database implementation


XAMPP software package was used in the implementation of the database. SQL queries were used
to handle the database activities.Figure 4.1 shows the SQL quarry to create a database.

Figure 4. 1 SQL quarry for creating a database


41
Following figure 4.2 shows the SQL quarry to create a table called Create_Exam

Figure 4. 2 SQL quarry for creating table "Create_Exam”

Figure 4.3 displays the SQL quarry to create a table called Examination_center

Figure 4. 3 SQL quarry for creating table "Examination_center”


42
Following figure 4.4 shows the SQL quarry to create a table called staff

Figure 4. 4 SQL quarry for creating table "staff"

43
4.5 Code implementation
Following figure 4.5 shows the code segment of the user login interface.

Figure 4. 5 Coding of the user login interface

4.6 Security implementation


To protect the unauthorized view of the user password, the entire password saved in database by
using SHA1 cryptographic hash function. Following figure 4.6 shows the code implementation of
the encryption.

Figure 4. 6 SHA1 encryption

44
4.7 User interface implementation
Figure 4.7 shows the page which includes assigning students to create examination, create exam
center, issue index numbers and download timetable.

Figure 4. 7 Manage examination

According to the figure 4.8 it shows the page which includes assigning students to examination,
update attendants and download admissions.

Figure 4. 8 Assign students to exam

45
Figure 4.9 shows the page (Dashboard) gives the visual representation of the data by using pie
chart.

Figure 4. 9 Dashboard

Figure 4.10 depicts the list of registered students’ page available in the system.

Figure 4. 10 Display lists of students

Following figure 4.11 shows the page of the students assign for different modules for selected
subject.

Figure 4. 11 Assign students to examination

46
Following figure 4.12 shows the page of the assign user roles for different level access of the
system.

Figure 4. 12 Manage user roles

4.5 Summary
This chapter well explained the implementation process, which was done in a well-organized and
structured manner, considering all hardware and software requirements. PHP framework was
mainly considered as the programming language with MYSQL as a database system. Further above
figure 4.7, 4.8, 4.9, 4.10, 4.11 and 4.12 shows the sample screens of the system.

47
Chapter 5: Testing and Evaluation
5.1 Introduction
After completing the software, it is important to evaluate the system by using various kinds of
testing and evaluation methods. It will help to identify the issues of the system development related
to the functional and non-functional requirements. Further testing and evaluation reveal the
software issues such as validation, coding errors, data handling issues, authentication errors, etc, In
this chapter, it will discuss all the scenarios and methods used to deliver an error-free software
system to replace the manual examination management system of the TVEC.

“Software testing is a process, to evaluate the functionality of a software application with an intent
to find whether the developed software met the specified requirements or not and to identify the
defects to ensure that the product is defect-free in order to produce a quality product.” (Rajkumar,
2021)

5.2 Identified test methodology


In this testing process, the proposed system was tested under two main categories as system
functional and nonfunctional operations.
a) Functional testing
Under the functional testing, it has covered unit testing, integrating testing, system testing
and acceptance testing.
b) Non Functional testing
This proposed system was developed as web based system therefor usability and user
acceptance test was carried out to identify any defects from the user side.

5.2.1 Unit testing


This proposed system was developed module wise and those modules were tested separately. In the
initial step, the login and log out units were tested. In the next step, the “manage training institute”
unit was tested for its features. After that register course and module units was tested for its feature.
Other units were tested step by step when those units were developed.

48
5.2.2 Integrating testing
When the unit testing was completed, integrated testing was carried out by connecting two or more
units. In this system, the student registration module tested with training center registration and
course registration. Without adding training center and course information, students may not allow
to register with the system.

5.2.3 System testing


After completing the system, it was tested with sample data to identify any defects of functions and
their features. The main concern is to test the compatibility of individual modules. As the result of
that it identified some areas where modules have been designed with different specifications such
as data lengths, type and element name. For the system testing, it was checked system security by
login different user credentials. Further entering more data into the data fields and checked system
for validation errors.

5.2.4 User acceptance testing


Before releasing the real-life operation, it is important to do the acceptance test by the customer to
see whether the system is satisfying the customer's requirements according to their given
specification. Student registration and training center registration modules were tested by two exam
management staff and identified the length of the student name in the database field was not
sufficient and it was corrected.

5.3 Test plan


This test plan was developed to test the web based examination management system functions and
their features. Further, it was focused to achieve the following objectives.
● The all-inclusive test plan covers the scope of the tests which are essential to achieve the
proposed system including software, hardware and other requirements.
● To describe how the tests will be conducted. Further identified the organizational
provisions, define test methods and strategies to be used, and determine what to deliver.

49
Table 5.1 describe the test plan for the examination management system login management

# Function Testing Procedure Expected Output Priority

1 Log in to the system Insert some credentials Display error message High
without user login which are not in the “User name or Password
credentials system incorrect”

2 Try to login system Did not enter any user id Display message by Medium
user id and password and password asking user id and
password
3 Login to the system Enter user id Only System asked to enter Medium
without a password password
4 Login to the system Enter password Only System asked to enter Medium
without user-id user-id
5 Login to the system Insert correct user id and Login to the system and High
with correct user login password will display the main
credentials page
Table 5. 1 User login test plan

Table 5.2 describe the test plan for the training center registration

# Function Testing Procedure Expected Output Priority

1 Register training center Do not add center Display error messages High
without any registration information and asked for registration
information information
2 Training center Add same registration Display error on High
registration number number which is used registration number
validation another center
3 Email address Add incorrect email Display error message Medium
validation address for the email address
4 Contact number Add the different Display error message High
validation lengths of numbers for a contact number
5 Register with all Add all correct required Successfully update the High
information information list of the training center
Table 5. 2 Training center registration

50
Table 5.3 describe the test plan for the student registration

# Function Testing Procedure Expected Output Priority

1 Register students Do not add student Display error messages and High
without any information asked to student required
information information
2 Validate student NIC Add NIC number Display error on NIC number High
number with incorrect
length
3 Validate the Add NIC number Display error on NIC number High
uniqueness of the NIC which is used by
number another student
3 Email address Add incorrect email Display error message for the Medium
validation address email address
4 Contact number Add the different Display error message for a High
validation lengths of numbers contact number
5 Register students with Add all correct Successfully update the list of High
all information required students
information
Table 5. 3 Student registrations

5.3.1 Test cases


After completing the test plane, it is required to start the testing process according to the test plan.
In the test plan, each function could be a single test case. There were few test cases and generated
under each test plan mention in the above tables.
Table 5.4 shows the test case for the test plan "examination management system login
management" which is in table 5.1.

51
The following table 5.4 is the test case for Login to the system without user login credentials.

Test case ID: TC -01


Title: User Login
Description: Allow login only correct credentials
Preconditions: Login page should be available for the user
Assumption: Browser displayed the login page correctly
Test Steps:
1 Navigate the login link 2 Load the login UI
3 Click submit button without
given any user credentials
Expected Result: The system should display an error message by asking user id
and password.
Actual Output Status
Pass

Table 5. 4 Test case for user login

Following table 5.5 shows the test case for the test plan "training center registration" which was in
the above table 5.2. Table 5.5 displays the test case for training center registration number
validation.

52
Test case ID: TC -02
Title: Validate the training center registration number
Description: System Should allow register training center with correct and
unique registration number
Preconditions: The training center registration page should be available for the
user
Assumption: All the required fields will be displayed correctly
Test Steps:
1 Click on the Institute link from 2 Click the "Add New Training center"
the main menu button
3 Enter training center 4 Click the save button
information with a registration
number which is used for
another center
Expected Result: The system should display an error message by asking unique
registration number
Actual Output Status
Pass

Table 5. 5 Training center registration number validation

53
Table 5.6 shows the test case for the test plan "student registration" which is discuses in table 5.3.
Table 5.6 shows the test case for Validate student NIC number.
Test case ID: TC -02
Title: Validate student NIC number by the length
Description: The system Should allow registered students with the correct
NIC number.
Preconditions: The student registration page should be available for the user
Assumption: All the required fields will be displayed correctly in the browser
Test Steps:
1 Click on the Students link 2 Click the "Register Students" button
from the main menu
3 Enter student information with 4 Click the save button
NIC number which has
incorrect length.
Expected Result: The system should display an error message by asking correct
NIC number.
Actual Output Status
Pass

Table 5. 6 Validate student NIC number

54
Following table 5.7 shows the test case for the test plan "student registration" which is in table 5.3.
Here it is explaining the table 5.7 is the test case for Validate the uniqueness of the NIC number.

Test case ID: TC -02


Title: Validate the uniqueness of the NIC number
Description: The system Should allow registering students with correct and
unique NIC numbers.
Preconditions: The student registration page should be available for the user
Assumption: All the required fields will be displayed correctly in the
browser
Test Steps:
1 Click on the Students link 2 Click the "Register Students" button
from the main menu
3 Enter student information 4 Click the save button
with NIC number which is
used for another student.
Expected The system should display an error message by asking unique
Result: NIC number for that student
Actual Output Status
Pass

Table 5. 7 Validate the uniqueness of the NIC number

55
5.4 Automated testing
In the automated testing, testing tools or framework is used to test the software automatically by
using pre-defined data set without doing manual data entering. Then it is easy to execute repeatedly
until fixing the bugs of the software. It helps to improve the quality of the software in minimum
time (Shreya Bose, 2021).

5.4.1 Automated unit testing


Figure 5.1 shows the result of the unit related to the login function. “Unit test class” of the
CodeIgniter was used for this testing. For further reference, source code was added to the
Appendix F.

Figure 5. 1 Login function test result

5.4.2 Automated UI testing


User interface of the training center registration form of the system was tested by using automation
testing. For this automation testing, TestNG, Selenium web driver and Chrome web browser with
Java class were used. Following figure 5.2 shows the result of the automated testing. For further
reference, source code used for the automated testing was added to the Appendix F.

56
Figure 5. 2 Automated test result of the training center registration UI

5.5 User evaluation


The sustainability of the software product is based on the user's experience (UX). At the end of the
development, it is important to make ensure the user is the center of every design and development
decision that make from the beginning then it will offer an exceptional user experience. Usability
testing is a core component to identify the effective user experience design (Praxent, 2019).

To implementing the usability testing for the proposed system, a structured questioner was used to
collect end-user feedback. Google form is used to circulate the questioner and obtain user's
anonymous feedback and identify whether the project objectives were met based on a set of criteria
and some actual testing. This web based examination management system was temporarily hosted
on a google cloud-free server to be available to the end-users. This user evaluation main aligns with
five categories such as appearance, usability, functionality, performance and security. Further, the
Likert scale was used to quantify the end-user feedbacks.

Google form which is used for the feedback was attached in Appendix A.

Strongly disagree Disagree Neutral Agree Strongly Agree


1 2 3 4 5
Table 5. 8 Likert scale

57
5.6 Evaluation results
User feedbacks were collected through the google form and those results were analyzed under five
main categories such as appearance, usability, functionality, performance and security. Those
analyzes results have been described below with the graphical representation.

5.5.1 Evaluation Results for appearance


To evaluate the appearance of the system, there are five questions were used. Following table 5.9
shows the summary result of the final evaluation. Figure 5.2 shows the graphical representation of
the result for more explanation.
Q1 Q2 Q3 Q4 Q5 Total %
Strongly disagree 0 0 0 0 0 0 0
Disagree 0 0 0 0 0 0 0
Neutral 0 0 4 2 0 6 8
Agree 8 12 5 9 10 44 59
Strongly Agree 7 3 6 4 5 25 33

Table 5. 9 User evaluation result under appearance

Figure 5. 3 User evaluation result under the appearance

According to the above result, the majority give positive feedbacks for the appearance of the
system.

5.5.2 Evaluation Results for usability


The usability of the system was evaluated by using four questions and it is summary results were
displayed in the Table 5.10. Further figure 5.3 shows the graphical representation of the result for
better explanation.

58
Q6 Q7 Q8 Q9 Total %
Strongly disagree 0 0 0 0 0 0
Disagree 0 0 0 0 0 0
Neutral 1 5 2 0 8 13
Agree 11 8 6 8 33 55
Strongly Agree 3 2 7 7 19 32
Table 5. 10 User evaluation result under usability

Figure 5. 4 User evaluation result under usability

According to the above result, the majority give positive feedback for the usability of the online
EMS system.

5.5.3 Evaluation Results for functionality


The functionality of the system was evaluated by using three questions and it is summary results
were displayed in the following table 5.11. Further figure 5.4 shows the graphical representation of
the result for better explanation.

Functionality Q10 Q11 Q12 Total %


Strongly disagree 0 0 0 0 0
Disagree 0 0 0 0 0
Neutral 0 0 2 2 4
Agree 5 4 12 21 47
Strongly Agree 10 11 1 22 49
Table 5. 11 User evaluation result under functionality

59
Figure 5. 5 User evaluation result under functionality

According to the above result, the majority give positive feedback for the functionality of the online
EMS system.

5.5.4 Evaluation results for performance


The performance of the system was evaluated by using five questions and its summary results were
displayed in the following table 5.12. Further figure 5.5 shows the graphical representation of the
result for better explanation.

Q13 Q14 Q15 Q16 Q17 Total %


Strongly disagree 0 0 0 0 0 0 0
Disagree 0 0 0 0 0 0 0
Neutral 0 0 0 0 1 1 2
Agree 4 7 7 7 6 31 42
Strongly Agree 11 8 8 8 8 43 56
Table 5. 12 User evaluation result under performance

Figure 5. 6 User evaluation result under performance

Based on the above result, the majority of the users give positive feedback for the performance of
the online EMS system.

60
5.5.5 Evaluation results for security
Security of the system was evaluated by using two questions and It is summary results were
displayed in the following table 5.13. According to the figure 5.6 it shows the graphical
representation of the result for better explanation.

Q18 Q19 Total %


Strongly disagree 0 0 0 0
Disagree 0 0 0 0
Neutral 0 3 3 10
Agree 1 10 11 37
Strongly Agree 14 2 16 53
Table 5. 13 User evaluation result under security

Figure 5. 7 User evaluation result under security

Based on the above result, the majority of the users give positive feedback for the security of the
online EMS system.

5.5.6 Final result of the usability evaluation


Table 5.14 displayed the overall responses received in each category. As in the figure 5.7 it shows
the graphical representation of the final result of the usability evaluation.

Strongly Disagre Neutral Agree Strongly


disagree e Agree
Appearance 0 0 6 44 25
Usability 0 0 8 33 19
Functionality 0 0 2 21 22
Performance 0 0 1 31 43
Security 0 0 10 37 53
Table 5. 14 Overall usability responses

61
Figure 5. 8 Summary of usability evaluation

5.7 Summary
In this chapter, it was discussed that the different methods which were used to identify the defects
of the system and the user experiences of the web based examination management system. This
system was tested by login the system and verified the results. After completing those tests and
analyzing the user feedback, it was able to produce error-free software.

62
Chapter 6: Conclusion

6.1 Introduction
This conclusion chapter mainly focused on the achievement of the objectives, lessons learned and
give some direction for future development based on the new examination management system
development. Further, this chapter will discuss some limitations, challenges faced and ways of
overcoming those barriers when developing the system.

6.2 Achievement of the objectives


This web based examination management system was developed for the assessment division of the
tertiary and vocational education commission. This system mainly addresses the challenges faced in
the manual examination management process, which has found to be tedious, primarily when
handling a large number of NVQ candidates in different NVQ courses, and it makes the whole
process time-consuming and makes lots of errors. This solution which has been implemented will
be much more helpful to both NVQ students and the examination management staff of the TVEC to
make their examination process efficiently. This system facilitates registering training centres and
their students, creating exam centers and issue admissions, creating examination timetables,
recording examination results, and providing an easy way to get reports printed.

In addition to that, it minimized the workload and maximized the efficiency of the examination
management process by saving time, effort, resources, money and etc. Then it fulfils the
requirement of the assessments division of the TVEC to manage the examination. Newly developed
system support to the training providers to register their students and apply for examinations. This
system is fully online system then exam management staff able to work from their home as well.
Then it will create more flexible working environment for these system users.

This new system facilitates for students to view their basic information by entering their national
identity card number into the system.

63
6.3 Lessons learnt
This whole development helped to gain new knowledge of the technology and software developing
experience. When doing the requirements gathering it is essential to handle different types of
potential users. It is essential to have good communication with the potential users and work with
their level to look through their frame of mind to get the most out of it. In the implementation stage,
it was the most complex and most exciting part of this project.

In addition to that, it allowed to use trial and error process when it applies practically and the
academic knowledge gained on programming languages such as CodeIgniter, PHP, Java Scripts,
CSS, MYSQL and many more development tools and techniques. This project helped to learn
about different techniques used for design, coding and try out the many different kinds of patterns
to find the solutions. Another important lesson was that developing this kind of new project with
the minimum experience should start by making a very simple version. Then extend the solution
step by step until it achieves the user requirements. In the testing phase, when the tests fail or a
function stops working, it was much easier to find the problem with only changed one thing at a
time with some temporary outputs.

6.4 Challenges faced


The proposal development stage had a clear understanding of the examination management manual
process and the solution for the manual process. Due to lack of software development experience, it
takes more time to search several websites for the most appropriate language and technologies for
this project. This initial preparation consumed more time than excepted.

When studying similar systems, most of them are commercial products and they were not allowed
to access the system. It was limited to read the features of the system without accessing it.

The CodeIgniter PHP framework is used for this development by analyzing the technologies and
MYSQL is used as the database application. It took time to learn CodeIgniter and it was affected by
the project delivery timeline.
In addition to that, some people were not very much familiar with modern IT technology in the
government sector. This lack of knowledge was the barrier to developing and introducing a new IT-
based solution and replaces their manual work. To overcome this barrier, it required to find a way
to improve their IT-related skills and provide proper system training.

64
6.5 Future enhancements
In the future, with the technology improvement, this system should be enhanced according to the
new technology and give more concern to security factors. In addition to that, when the student did
not complete all the modules, the student should have facility to request Record of Achievement
(ROA) certificate, and the system should be developed to print ROA certificate. In a further
enhancement, it should be considered to give a login facility to students to update their basic
profiles. Then it helps to keep student information up-to-date.

In the current system, there is no SMS and online payment facility. In future development, those
features should incorporate into the project scope. Using these enhancements by adding more
functions to the system, the goal is to develop a more efficient and more reliable system in future.

65
References
Anand Butani (2020), 5 essential patterns of software architecture [Online], Available at
https://www.redhat.com/architect/5-essential-patterns-software-architecture (Access: 10 March
2021)

Applyonlineform.com (2021), Exam Management System | Online Examination Management


Company [Online], Available at https://www.applyonlineform.com (Accessed: 14 January 2021).

Belmonttech.net (2018), Examination Management Solutions [Online], Available at


https://belmonttech.net/examination-management-solutions/ (Accessed: 20 May 2021)

CodeIgniter.com (2021), CodeIgniter Web Framework [Online], Available at


https://www.CodeIgniter.com (Accessed: 12 December 2020).

Creatrixcampus.com (2021), Examination Management Software System [Online], Available at


https://www.creatrixcampus.com/examination-management-system (Accessed: 12 January 2021).

Databee.com.au (2021), Databee Exams Manager [Online] Available at


https://databee.com.au/examsmanager (Accessed: 17 January 2021).

Deskera (2008), Examination Management [Online], Available at


https://www.deskera.com/lms/examination-management (Accessed: 6 January 2021).

Didacus Odhiambo (2018), System Design in Software Development [Online], Available at


https://medium.com/the-andela-way/system-design-in-software-development-f360ce6fcbb9
(Accessed: 8 May 2021).

Fedena.com (2021), Exam Management System | Manage Exam & Gradebook [Online], Available
at https://fedena.com/feature-tour/exam-management-system (Accessed: 12 January 2021).

Guru99.com (2020), Cloud Computing Tutorial For Beginners: What Is & Architecture [Online],
available at https://www.guru99.com/cloud-computing-for-beginners.html (Accessed: 17 January
2021).

Guru99.com (2021), UML Class Diagram Tutorial with Examples [Online], Available at
https://www.guru99.com/uml-class-diagram.html (Access: 17 February 2021)

66
Hanna F (2021), A Comparative Study Of WAMP Vs XAMPP: Which Is The Best Suitable Local
Server For Web Development? [Online], Available at https://www.temok.com/blog/wamp-vs-
xampp (Accessed: 17 December 2020).

Hostinger Tutorials (2021), What Is Apache? An In-Depth Overview Of Apache Web Server
[Online], Available at https://www.hostinger.com/tutorials/what-is-apache (Accessed: 3 January
2021).

Hosting. S. (2021), What Is SQL And Mysq [Online], Available at


https://www.siteground.com/tutorials/php-mysql/mysql (Accessed: 9 January 2021).

merittrac.com (2021), End-to-End Examination Management System [Online], Available at


https://www.merittrac.com/exam-administration (Accessed: 28 May 2021).

mettl.com (2021), All-In-One Online Examination Management System [Online], Available at


https://mettl.com/en/examination-management-system/ (Accessed: 24 May 2021).

Myvirtualx.com (2021), Assessment Software | Online Examination Tool | Homework Management


System [Online], Available at https://myvirtualx.com (Accessed: 16 January 2021).

National Education Commission (2018), National Policy on Technical and Vocational Education.
1st edn. Colombo: NEC.

Neha, .T (2020), Incremental Development Model [Online], Available at


https://binaryterms.com/incremental-development-model.html (Accessed: 10 February 2021)

Praxent,( 2019), Why do Usability Testing? 4 Reasons to Make It a Priority [Online], Available at
https://praxent.com/blog/usability-testing-4-reasons-top-priority (Accessed: 10 June 2021)

Rajkumar (2021), What Is Software Testing | Everything You Should Know [Online], Available at
https://www.softwaretestingmaterial.com/software-testing/ (Accessed: 10 June 2021)

softwareideas.net (2021), What is Entity-Relationship Diagram (ERD)? [Online], Available at


https://www.softwareideas.net/what-is-erd-diagram-in-data-modeling (Accessed: 25 February
2021)

Shreya Bose (2021), Automation Testing Tutorial: Getting Started [Online], Available at
https://www.browserstack.com/guide/automation-testing-tutorial (Accessed: 01 September 2021).

67
Swifthcm.com (2021), Exam Management System [Online], Available at
https://www.swifthcm.com/exam-management-system/ (Accessed: 16 January 2021).

tutorialspoint.com (2021), UML - Use Case Diagrams, tutorialspoint.com [Online], Available at


https://www.tutorialspoint.com/uml/uml_use_case_diagram.htm (Accessed: 17 February 2021)

TVEC (2009), National Vocational Qualifications Framework of Sri Lanka. 2nd edn. Colombo:
TVEC.

w3computing.com (2021), Security Concerns for Traditional and Web-Based Systems [Online],
Available at https://www.w3computing.com/systemsanalysis/security-concerns-traditional-web-
based-systems/ (Access: 08 May 2021)

W3schools.in (2020), What Is MVC Architecture? [Online], Available at https://www.


w3schools.in/mvc-architecture/ (Accessed: 20 December 2020).

W3.org (2021), HTML & CSS, W3C [Online], Available at https://www.w3.org/standards/ web
design/htmlcss.html#:~:text=HTML%20(the%20
Hypertext%20Markup%20Language,for%20a%20variety%20of%20devices (Accessed: 13
December 2020).

WhatIs.com (2021), What Is Bootstrap? - Definition From [Online], Available at


https://whatis.techtarget.com/definition/bootstrap (Access: 18 January 2021).

68
Appendix A – Usability evaluation
questionnaire

69
70
71
72
Appendix B – Response for questionnaire

73
74
75
76
77
78
79
Appendix C - System manual
This examination management system (EMS) was developed based on web technology and used a
PHP framework called "CodeIgniter". Therefore it is essential to set up the webserver with other
requirements to install the EMS.

Web service requirements


Following software with their supporting versions are used to set up the web service environment.

● Apache/2.4.47
● MySQL 5.0
● PHP Version 7.3.28

For Microsoft Windows, XAMPP Version: 7.3.28 can be used to set up the web environment with
all necessary supporting software.

Following figure Appendix C.1, shows the main controlled panel of the active XAMPP software.

Figure Appendix C.1

80
Installation steps
1. After completing the web server setup and should be confirmed that all the required services
are up and running. After that create a database with the name of "exam_db” and import the
database backup which
2. is required for the EMS.
3. Create the folder name “EMS” under “\xampp\htdocs\”. Copy all the files and folders into
the EMS folder. Following figure Appendix C.2, shows the folder structure.

Figure Appendix C.2

4. To change the base URL or the port number, the "config.php” file which is located at
“application/config” should change. Following figure Appendix C.3, shows the
configuration.

Figure Appendix C.3

5. Once complete all the steps successfully then the system can be accessed through any
updated web browser by using the http://localhost/EMS/ address.

81
Re-usable codes
1. CodeIgniter 3, a PHP framework is used for this system development.
2. Bootstrap 4.2.1 is used to create device responsive web pages. The following link is used to
access the CSS file of Bootstrap.
https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css
3. The following link is used to get Icons which are for the side menu bar.
https://unpkg.com/boxicons@2.0.7/css/boxicons.min.css
4. To create google charts, the following link is used.
https://www.gstatic.com/charts/loader.js
5. To generate PDF, TCPDF free software is used. TCPDF is added as the helpers.

To access all these above links, there should have a good internet link. Otherwise, those operations
may not be visible.

82
Appendix D - User manual
1. To access the system, type the link http://localhost/EMS/ in the web browser and you will see
the following main screen shows in figure D.1

For a student to
Figure D.1: Main page view their info

● Without login registered student can view their basic information by using NIC.
2. To login to the system, click on the "Login" link at the top of the right corner. Then you get the
following screen to enter your user credentials.

Figure D.2: Main page

83
3. Once you successfully login to the system, you see the main dashboard with the side menu bar.
The side menu bar gives access to the main functions.

Figure D.2: Main control page


4. To manage the training center, click on the link called “Institute”. Then you see the following
screen and it allows managing the training centers.

Figure D.3: Manage training centers

84
5. To add the new training center, click on the "Add New Training Center" button. Then you will
see the following page to register the new center.

Figure D.4: Register training center

6. The second link called "Student" is used to add, update and delete students.
7. The "Course" link is used to register the course and add modules to the course. When you click
on the "Course" link you will see the following screen.

Figure D.5: Manage course and modules

8. Once you complete the training center registration and their student registration. Then you can
click on the "Examination" link to create an exam and assign those students to the examination,
assign exam centers, add results, download admission, issue index numbers, add time table and
download time table. The following page will be displayed when you click on the
"Examination" link.

85
Figure D.6: Manage examination

9. Once you set the exam date and the exam centers, then you can click on the "student" to assign
a student to the exam, exam centers, mark attendance and download admissions. The following
page will appear when you click on the "Student" link

Figure D.7: Assign student to exam


10. To add the exam timetable, you gave to click the "Timetable" link in figure D.6: manage
examinations. Then you will see the following page to add timetables.

Figure D.8: Add timetables


86
11. Once you create the timetables, you can download them as PDF documents by clicking the link
"Download Timetable" in figure D.6: manage examinations.
12. After completing the examination, student and module wise results can be entered into the
system by using the "Result" link. When you click the result link you will see the following
web page.

Figure D.9: Examination results


13. When you click on the "Add Result" button, then you see the following screen to select the
training center, course, and module. After that, you can click on the "Student Result" button to
enter results.

Figure D.10: Examination Results

14. Staff is used to register staff as invigilators, paper setters, papermakers and others. A payment
link is used to add exam centre payments.
15. Link called "User Management" is used to manage system users such as create user id and
passwords, add and update user roles.
16. Finally “Report” menu is used to generate different reports.

87
Appendix E - Management information
reports
Following figure E.1 shows the total number of students based on the district and course.

Figure E.1: Total number of students based on district and course

Following figure E.1 shows result sheet based on training center, course and module.

Figure E.1: student result sheet in module wise

88
Following figure E.1 shows the time table for one course.

Figure E.1: Cosmetology time table

89
Appendix F – Automated testing
1. Source code used for login function testing – unit testing

public function userLogin(){

//Load unit test library in the Codeigniter

$this->load->library('unit_test');

$this->form_validation->set_rules('Username','Username','required');

$this->form_validation->set_rules('Password','Password','required');

if($this->form_validation->run()==FALSE){

$this->load->view('login_view');

else{

//Set the parameters to the unit test

$expected_result=true;

$test_name='Login function testing';

$note='Unit test using CodeIgniter unit_test library';

$this->load->model('login_model');

$result=$this->login_model->Loginadmin();

//Run the unit test and print the result

echo "<b>CodeIgniter: Unit Testing Class</b>";

$this->unit->run($result,$expected_result,$test_name,$note);

echo $this->unit->report();

die();

if($result != false){
90
$admin_data=array(

'User_ID '=>$result->User_ID ,

'TC_ID'=>$result->TC_ID,

'STF_ID'=>$result->STF_ID,

'Username'=>$result->Username,

'Password'=>$result->Password,

'Availability'=>$result->Availability,

'loggedin'=>TRUE

);

$this->session->set_userdata($admin_data);

$this->session->set_flashdata('welcome','Welcome to the Admin panel');

redirect ('Admin_Controller/log_admin');

}else{

$this->session->set_flashdata('error_msg','Username or Password incorrect');

redirect ('Login_Controller/log_in');

91
2. Source code used for training centre registration form – UI testing

Following Java class is used to implement automated test on training institute registration user
interface.

package TestAutoRegIns;

import java.util.regex.Pattern;

import java.util.concurrent.TimeUnit;

import org.testng.annotations.*;

import static org.testng.Assert.*;

import org.openqa.selenium.*;

import org.openqa.selenium.chrome.ChromeDriver;

import org.openqa.selenium.support.ui.Select;

public class autoTestInsRegistration {

private WebDriver driver;

private String baseUrl;

private boolean acceptNextAlert = true;

private StringBuffer verificationErrors = new StringBuffer();

@BeforeClass(alwaysRun = true)

public void setUp() throws Exception {

System.setProperty("webdriver.chrome.driver",
"D:\\JavaProjects\\TestAutoInstRegister\\Libraries\\chromedriver.exe");

driver = new ChromeDriver();

baseUrl = "https://www.google.com/";

driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);

@Test

public void AutoTestInsReg() throws Exception {


92
driver.get("http://localhost/EMS/");

driver.findElement(By.xpath("/html/body/div[1]/div[1]/nav/div/ul/li/a")).click();

driver.findElement(By.id("Username")).clear();

driver.findElement(By.id("Username")).sendKeys("admin");

driver.findElement(By.id("Password")).clear();

driver.findElement(By.id("Password")).sendKeys("admin");

driver.findElement(By.xpath("//button[@type='submit']")).click();

driver.findElement(By.xpath("//li[2]/a/i")).click();

driver.findElement(By.xpath("(.//*[normalize-space(text()) and normalize-space(.)='Manage


Training institute'])[1]/following::button[1]")).click();

driver.findElement(By.id("Reg_No")).click();

driver.findElement(By.id("Reg_No")).clear();

driver.findElement(By.id("Reg_No")).sendKeys("P09/0137");

driver.findElement(By.id("CenterName")).click();

driver.findElement(By.id("CenterName")).clear();

driver.findElement(By.id("CenterName")).sendKeys("Excel College");

driver.findElement(By.id("PermanentAddress")).click();

driver.findElement(By.id("PermanentAddress")).clear();

driver.findElement(By.id("PermanentAddress")).sendKeys("Excel college, 669, Peradeniya


Road, Kandy");

driver.findElement(By.id("District")).click();

new Select(driver.findElement(By.id("District"))).selectByVisibleText("Kandy");

driver.findElement(By.id("Email")).click();

driver.findElement(By.id("Email")).clear();

driver.findElement(By.id("Email")).sendKeys("scillapperuma@gmail.com");

driver.findElement(By.id("Mobile")).click();

driver.findElement(By.id("Mobile")).clear();

driver.findElement(By.id("Mobile")).sendKeys("8115634206");

93
driver.findElement(By.xpath("//button/i")).click();

driver.findElement(By.xpath("//button[3]/i")).click();

@AfterClass(alwaysRun = true)

public void tearDown() throws Exception {

driver.quit();

String verificationErrorString = verificationErrors.toString();

if (!"".equals(verificationErrorString)) {

fail(verificationErrorString);

private boolean isElementPresent(By by) {

try {

driver.findElement(by);

return true;

} catch (NoSuchElementException e) {

return false;

private boolean isAlertPresent() {

try {

driver.switchTo().alert();

return true;

} catch (NoAlertPresentException e) {

return false;

94
}

private String closeAlertAndGetItsText() {

try {

Alert alert = driver.switchTo().alert();

String alertText = alert.getText();

if (acceptNextAlert) {

alert.accept();

} else {

alert.dismiss();

return alertText;

} finally {

acceptNextAlert = true;

95

You might also like