2016 Mit 024
2016 Mit 024
G. K. Jayasekara
2020
Web Based Learning Management
System for Information Technology
Infrastructure Library (ITIL)
Certification
G. K. Jayasekara
University of Colombo School of Computing
2020
Abstract
Web based system for Information Technology Infrastructure Library is an implementation done
to assist learners and teachers who involve in Information Technology Infrastructure Library
certification. This system provides all necessary information to possess an honest understanding
about Information Technology Infrastructure Library examination and its practical usage.
Developed system will drastically reduce the necessity of browsing hours of lengthy tutorials,
eBooks and unstructured self-studying. Since crowd sourcing methodologies is employed users
can collaborate in additional interactive manner. For user, content is going to be available for free
of charge and no payment required. Only requirements are going to be registering to the system.
As system be a web based one, it'll be available real-time from anywhere. For this venture system
is developed embedded with crowd sourcing approaches. Users are going to be getting advantages
of some quality output of study materials and trainings. The top components aren't limited to
supply only educational content, but also system will provide user friendly interfaces that would
effectively support for any kind of users. Web based system for Information Technology
Infrastructure Library will provide a far better learning environment for Information Technology
Infrastructure Library learners. Everyone involves can improve their learning in collaborative
manner. Once it's done, they're going to be ready to see the progress visually though the system.
The system is developed using PHP (PHP Hypertext Processor) open source server-side scripting
language. MySQL is used as the database tool for designing the database. Apache web server was
chosen to run the system. Agile development methodology was identified as the best suited
development methodology supported its flexible developing theory and related advantages as
compared to other software methodologies consistent with existing software engineering theories
and by studying the matter domain.
ii
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.
iii
Acknowledgement
I would happy to offer my deep sense of gratitude to the people that supported me directly and
indirectly to form this dissertation to a reality.
It has been an honor to present this implementation thesis as a MIT student in University of
Colombo School of Computing. My great honor goes to my University to giving me the chance to
require place in master’s degree in field of Information Technology.
I would wish to thank Ms. M W A C R Wijesinghe for giving me fullest support relative guidance
for my dissertation as my supervisor and inspiring me to form this project a success, also to form
my carrier rewarding and successful.
At last but not least I wish to thank all my friends for their support in many ways to form this
research a reality and that I would also wish to thank all others that helped me to be in this position
of thinking.
iv
Table of Contents
Abstract ........................................................................................................................................... ii
Declaration ..................................................................................................................................... iii
Acknowledgement ......................................................................................................................... iv
Table of Contents ............................................................................................................................ v
Table of Figures ............................................................................................................................ vii
List of Tables ................................................................................................................................. ix
List of Abbreviations ...................................................................................................................... x
Chapter 1. Introduction ................................................................................................................... 1
1.1 Preface to the Project........................................................................................................ 1
1.2 Motivation ........................................................................................................................ 2
1.3 Aims and Objectives ........................................................................................................ 4
1.4 Scope ................................................................................................................................ 5
1.5 Outline of Thesis .............................................................................................................. 7
Chapter 2. Background ................................................................................................................... 8
2.1 Analysis of the Requirement ................................................................................................. 8
2.1.1 Functional Requirements .............................................................................................. 12
2.1.2 Non Functional Requirements ...................................................................................... 13
2.2 A Review of Similar Systems ............................................................................................. 14
2.3 A Comparison of Alternative Design Strategies ................................................................. 20
Chapter 3. Methodology ............................................................................................................... 21
3.1 Requirement Gathering and Analysis ................................................................................. 21
3.2 Design Overview ................................................................................................................. 22
3.2.1 Use Case Diagrams ....................................................................................................... 22
3.2.2 Activity Diagrams......................................................................................................... 26
3.2.3 Structure/Workflow ...................................................................................................... 28
3.2.4 Database Table Structures ............................................................................................ 31
3.2.5 Sample Entity Relationship diagram for an existing eLearning System ...................... 32
3.2.6 Sequence Diagrams ...................................................................................................... 33
3.3 User Interface Design .......................................................................................................... 36
3.3.1 User Login Interface ..................................................................................................... 36
v
3.3.2 User Registration Interface ........................................................................................... 37
3.3.3 Home Page .................................................................................................................... 39
3.3.4 User Profile Interfaces .................................................................................................. 41
3.3.5 Report Interfaces........................................................................................................... 42
3.3.6 Approve/Reject Materials ............................................................................................. 44
3.3.7 Add FAQ Interface ....................................................................................................... 45
3.3.8 Content and Lesson adding Interfaces .......................................................................... 45
3.4 Major Code and Module Structures .................................................................................... 47
3.5 System Test Plan ................................................................................................................. 49
3.6 Tools and Technologies Used ............................................................................................. 54
Chapter 4. Evaluation.................................................................................................................... 56
4.1 Critical Evaluation............................................................................................................... 56
4.2 Lessons Learnt..................................................................................................................... 57
Chapter 5. Conclusion ................................................................................................................... 58
5.1 Final Verdict ........................................................................................................................ 58
5.2 Future Work ........................................................................................................................ 59
References ..................................................................................................................................... 60
Appendix A - User Documentation .............................................................................................. 62
Appendix B - Client Certification ................................................................................................. 73
vi
Table of Figures
vii
Figure 3.33 Content Upload Interface .......................................................................................... 45
Figure 3.34 Add New Lesson Interface ........................................................................................ 46
Figure 3.35 Main code modules.................................................................................................... 47
Figure 3.36 Code for User Registration ........................................................................................ 48
viii
List of Tables
ix
List of Abbreviations
DB – Database
DFD – Data Flow Diagram
ER – Entity Relationship
FITIL – Free Web based system for ITIL candidates
ICT – Information and Communication Technology
IT – Information Technology
ITIL – Information Technology Infrastructure Library
ITSM – IT service management
LMS – learning Management System
MVC – Model-View-Controller
RUP – Rational Unified Process
UAT – User Acceptance Testing
UI – User Interface
x
Chapter 1. Introduction
Information and communication technology (ICT) standards often exist because a tech-guru has
translated a vision into a technical statement. This technology is shared for others to reinforce it
and ensuing standard then enables others to develop new products and markets.
If anyone ever questions the worth of standardization, they have look no further than the
proliferation of internet-enabled “appliances”. Almost everywhere phones and televisions became
smart, computer screens function input devices by touch alone and networks deliver unlimited
information.
While a kitchen gadget is made for one use (for example, a pineapple slicer and dicer), ICT
continues to converge such, every gadget can provide information to consumers worldwide, and
in a format and language that matches their individual needs. This always-on, always-relevant
reach for information is merely possible with the interoperability that comes from ICT
standardization.
One such best practice is ITIL (Information Technology Infrastructure Library) and in this try a
Web Based Learning Management System for Information Technology Infrastructure Library
(ITIL) Certification [16].
The Web based system for ITIL candidates is an online application. Using this, user will be able
to study and teach ITIL, review the best content, collaboratively drive success through ITIL
certification (Figure 1.1 e-Learning System interaction).
1
1.2 Motivation
In Pearson Lanka PLC, ITIL is a compulsory certification. To study this there’s no central location
to get study materials. Even you find one all the materials are not free. For this venture objective
is to develop an eLearning tool for ITIL examination, embedded with crowdsourcing approaches
(Figure 1.2 e-Learning System motivation).
From this build we will be able to provide a far better learning environment for ITIL learners.
Also, to provide an opportunity for the general public to contribute their experience and
knowledge. Most of the content available for this exam are not free and all material in proposed
system will be free from charge. This will help to improve learning in collaborative manner.
Since system is web based students can learn independently in any time and place. E-Learning is
self-paced and therefore the learning sessions are available all time. Plus, interaction with students
become more appropriate when students are sharing their problems with teachers, since it’s not
face to face they fear less and may ask their problems freely.
• Activity and ROI Measurements – If you are using a learning management system to
deliver your eLearning, then tracking learner progress is a piece-of-cake, and reporting on
this activity is just as simple.
• Time and Money Savings – This one is pretty well known, and a staple of any well-done
eLearning program. eLearning reduces time away from the workplace, eliminates the need
for travel, and removes the need for classroom-based training.
• Capacity and Consistency – Using eLearning allows educators to achieve a great degree of
coverage for their target audience, and it ensures that the message is communicated in a
consistent fashion. This results in all learners receiving the same training.
• Multimedia learning – The systems allow businesses and educational institutions to create
multimedia learning content which is comprehensive and practical, using video, images,
audio and text which all serve as great tools in learning new skills or information.
2
• Reduced Costs – eLearning is cost effective as compared to traditional forms of learning.
The reason for this price reduction is because learning through this mode happens quickly
and easily. A lot of training time is reduced with respect to trainers, travel, course materials,
and accommodation.
3
1.3 Aims and Objectives
The objective of this system is to provide a cost effective, user friendly and complete learning
management system for ITIL certification users. Objectives are described in detail as follows:
To provide a cost effective learning management system for ITIL certification users
• Since the users do not have to pay for the content available in the system the cost of learning
is comparatively low. Most of the study material currently available for this certification
need to be purchased and all materials in proposed system will be free of charge.
To provide an opportunity for general public to contribute with their experience and knowledge:
• As mentioned earlier users or resource providers for this system will be public who are
interested in ITIL certification. So the actual user will be discussing most suitable study
content for them and share knowledge on ITIL exam or their experience. They can improve
knowledge in collaborative manner.
4
1.4 Scope
Web based system for Information Technology Infrastructure Library is an implementation done
to assist scholars and teachers who involve in ITIL certification. This system gives all necessary
details to possess an honest understanding about Information Technology Infrastructure Library
exam and its practical usage.
Developed system will drastically decrease the necessity of browsing hours of lengthy tutorials,
eBooks and unstructured self-studying. Since crowdsourcing methodologies are used users can
collaborate in more interactive manner. For user, uploaded content will be available for free of
charge and no payment required. Only requirement will be registering to the system.
Most of the existing systems expect a fee for content. Respective material/content will be uploaded
by content managers and content coordinators later discussed in this proposal. In proposed system,
users will be able to search, view, comment rate, upload content. System administrators will be
able see most viewed/commented material, frequent visitors, and highly active users. Also be able
to provide answers to common questions, guide on study plans.
Proposed system will drastically decrease the need of going through hours of lengthy tutorials,
eBooks and unstructured self-studying. Since crowdsourcing methodologies are used users can
collaborate in a more interactive manner.
While there will be a content owner for the course users can contribute with their ideas, study
materials with others (like a virtual class room) and will require content owner’s approval first.
Since user contribution is highly encouraged, several kinds of study materials/references are going
to be available to a good range of end users in one place.
For user’s content will be available for free without any payment. Only requirement will be
registering to the system. As systems going to be a web based, up to date content will be available
and real-time from anywhere.
5
System will contain:
• ITIL coordinators will have all above functions for learner, furthermore:
• On registration user must provide proof whether he/she already a
teacher/instructor
• Reports on most viewed content, questions and visited users
• Content uploading mechanism
• Content Managers will have all above functions for learner and ITIL coordinator, also:
• Content reviewing mechanism: Commenting/Suggestions on uploaded materials
• Content approving mechanism
• Registered user approving mechanism: ITIL coordinators and other Content
managers
• Adding lessons and categorizing lessons facility: Materials can be categorized
under lessons
• Function for adding FAQ
• This user level can be used as a super admin for the system as well.
6
1.5 Outline of Thesis
Chapter 2. Background
An analysis of the requirements will be provided in this chapter. A review of similar systems, a
comparison of alternative design strategies will be discussed.
Chapter 3. Methodology
The design of the system will be given in this chapter. Implementation environment
(hardware/software), any tools, any existing software that were used will be mentioned. Also will
identify and explain all major code and module structures.
Chapter 4. Evaluation
Chapter will provide a critical evaluation of the system. It will discuss whether the project
objectives were satisfied and if not, the reasons for them. Lessons learnt during the course of the
project will also be expanded upon if applicable.
Chapter 5. Conclusion
This chapter will conclude the work indicating a summary of the results of the project. It will also
identify any deficiencies in the final product (if applicable) and highlight how improvements could
be made through future work.
References
All references cited in the dissertation will appear in the reference list, and all references in the
reference list will appear as citations. The referencing should be done in the IEEE format
Appendices
Detailed information or data which may increase the usefulness of the dissertation for examiners
and subsequent readers, but which are too detailed for inclusion in the main body of the dissertation
may be included as appendices.
7
Chapter 2. Background
During this review author will be carrying out analysis for a proper system for ITIL training and
also review of other related systems available. Previous research or existing systems also will be
discussed in this section. This analysis aims to review the critical points of current knowledge on
a specific topic. Therefore, the aim of the background chapter is to seek, read and analyse the
literature or any works or studies associated to this system. It is important to well understand about
all information to be considered and related before develop this system. For this project, some
research has been done to understand about existing system that associates with this development.
Once above discussed facts are correctly identified, the developing stage would not be that
confused or conflicts.
ITIL is such a commonly used word in the kingdom of ITSM that it is easy to assume it to be a
global phenomenon. After all the official ITIL exam website [14] cites ITIL as the most widely
accepted approach to IT service management in the world.
By adopting the ITIL framework, companies make sure that their services are delivered according
to a set of consistent, well-defined processes that incorporate best practices and processes, resulting
in a predictable level of service for users. The advantages of ITIL include reduced cost of service
development and deployment, improved customer satisfaction with service delivery, increased
productivity from IT personnel, quality improvements, better management metrics of services and
increased flexibility in adapting services to changing business requirements [16] (Figure 2.1 ITIL
Certificates in past years).
8
How does ITIL certification work?
ITIL certification is split into five stages, namely foundation, practitioner, intermediate, expert and
master levels. Each of these levels has different requirements for appearing, clearing and is
awarded a specific set of credits. As an example, one needs to have a total of 22 credits to be
certified as an expert. Apart from these, there are complementary certifications that help you reach
the expert level faster. Here’s a summary of the various levels and credits [16] (Figure 2.2 ITIL
Certificate levels).
All of those exams are online exams and study materials also available online. However none of
them are free. Hence the proposal for “Web based system for ITIL candidates” came in.
9
Sample Use Case diagram for an existing eLearning System
10
Proposed system will drastically decrease the need of going through hours of lengthy tutorials,
eBooks and unstructured self-studying. Since crowdsourcing methodologies are used users can
collaborate in a more interactive manner.
While there will be a content owner for the course users can contribute with their ideas, study
materials with others (like a virtual class room) and will require content owner’s approval first.
Since user contribution is highly encouraged, several types of study materials/references will be
available to a wide range of end users in one place.
For user’s content will be available for free and no payment required. Only requirement will be
registering to the system. As systems going to be a web based one, it will be available real-time
from anywhere.
In a nutshell, the target audience/users of this project are the people who work with internet like
students, IT professionals, executive grade staff and other all who would be able to work with
internet.
Every user has to register to system before using it. For learners/student it’s a basic registration
page with username and password. For ITIL coordinators and Content managers they have to
upload a letter of proof when registering and already registered Content managers will have to
approve their registration in order to login.
After registering students can search for content, can view content, can comment on content, can
rate content, can view and search lessons, can view FAQs, can view and update their profiles.
After registering ITIL coordinators can perform same task as students above plus they can upload
materials, these materials will be published after approved by Content managers. Also they can
view reports, view total uploaded materials by him/her with pending ones.
After registering Content managers can perform same tasks as students and ITIL coordinators plus
approve materials, add FAQ, approve new users, delete materials and add new lessons. Content
managers are user group with highest privileges.
11
2.1.1 Functional Requirements
“In software engineering, a functional requirement defines a function of a software system or its
component. A function is described as a set of inputs, the behavior, and outputs.”
The success of this system is not only dependent on the functional requirements; it is also based
on the non-functional requirements. It acts as the main role for the success of the system. Following
are the major functional requirements which were identified at this stage.
Every user has to register to system before using it. For learners/student it’s a basic registration
page with username and password. For ITIL coordinators and Content managers they have to
upload a letter of proof when registering and already registered Content managers will have to
approve their registration in order to login.
After registering users can search for content, can view content, can comment on content, can rate
content, can view and search lessons, can view FAQs, can view and update their profiles.
Learners – Can view materials, comment, rate content, and search function
Content managers – Can upload content, add FAQ, approve users, and approve materials
ITIL Coordinators – Can upload content upon approval of Content managers
User registration –
Allow users (student, ITIL coordinators and content managers) to register to system
Content/material uploading –
Coordinators and content managers should be able to upload content
Search function –
User should be able to search content
Comment function –
Users should be able to comment on content
Rating function –
Users should be able to rate content
12
Add FAQ function –
Content managers should be able to add FAQ
Appearance and Interactive – The website should be more attractive and interactive. Appearance
of the site should be beautiful and the visitors should not feel bored to visit the site.
User-friendly – Anyone should be able to easily understand the system and use it without any
problem. Anyone should be able to get relevant information easily.
13
2.2 A Review of Similar Systems
Studied the available famous ITIL learning systems to gain idea about ITIL learning portals. Also
learnt about the problems in such systems and how the required functionalities should be presented
to avoid those problems. Following are several similar systems that were reviewed to get the idea
to build the new system.
AXELOS [21]
This is the official web site for ITIL® Certifications. Site doesn’t contain many study resources.
Lacking student teacher interaction.
14
Learning tree [22]
This site contains blogs and tutorials, however need to pay to access them.
15
Purple Griffon [23]
This site contains video tutorials, PDFs, dumps, however need to pay to access them.
16
Good e-Learning [24]
This site contains slides, however need to pay to access them. No student teacher interaction.
17
SPOCE [25]
This site contains video tutorials, PDFs, dumps, trainer assistance however need to pay to access
them.
The above mentioned facts are subjected to develop some good commercial applications. As
described before most of these systems are not free for users. Users have to pay some amount of
money for each and every feature they are going to activate. As per the latest review of these
applications the graphical overview can be displayed as below. This is an official review of LMS
and they have concerned several facts while doing review [26].
18
Figure 2.9 LMS comparison
There are many options and features provided from above systems and some of them are
functioning as they expected. Above review [25] is drastically helpful when developing this
project because most of these options could be applied to our system too (Figure 2.9 LMS
comparison).
By comparing the outputs of the above finding, this project also could be developed to a
commercial level in future work. It is suggested to keep Web based system for ITIL as a free tool
for the users, but some advertisements can be published from some vendor’s as well.
19
2.3 A Comparison of Alternative Design Strategies
Different competing design strategies were consider for developing the system. Since author is not
having much experience with SW development, it was decide to develop system from scratch.
The system was developed using PHP (PHP Hypertext Processor) open source server-side
scripting language. MySQL was used as the database tool for designing the database. Apache web
server was chosen to run the system. Agile development methodology was identified as the most
suitable development methodology based on its flexible developing theory and related advantages
in comparison to other software methodologies according to the present software engineering
theories and by studying the problem domain (Table 2.1 Comparison of Alternative Design
Strategies).
20
Chapter 3. Methodology
This chapter illustrates the design of the proposed system and describes methodologies and
techniques which have been used to develop the system. Considering the complexity of the system,
a series of activities were followed to carryout work. Therefore, to implement this system in more
attractive and efficiently, several tools and technologies were used. The details of the
implementation environment, hardware infrastructure, development strategies, tools used,
database and application development architecture are described in this chapter.
Requirement gathering techniques used to collect requirements, how the current system process is
going on, drawbacks of the present system, functional and non- functional requirements of the
proposed system.
Agile development methodology was identified as the most suitable development methodology
based on its flexible developing theory and related advantages in comparison to other software
methodologies according to the present software engineering theories and by studying the problem
domain.
• Questionnaires – A collection of questions that helps to identify the functional and non-
functional requirements of the system has been given to a set of users.
• Interviews – By interviewing learners, it will help to have a good idea about the current
systems. Also it will help to find the special features that can be added to the system in
future.
• Gather data from e-books, Internet – This will help to have a good understanding about the
nutrients each food has, what is good and what is bad.
21
3.2 Design Overview
Learners, ITIL coordinators and Content managers are the main system users of this system. In
here the use case diagrams along with the use case descriptions, activity diagrams for each user
activities and the sequence diagram for the proposed system are included.
Use Case for User Registration: In here it shows how the user interacts when registering to the
system. User has to enter required info (name, email, passwords) and go forward.
22
Use Case for Student/Learner: Here it shows what action can be performed by a student.
23
Use Case for ITIL Coordinator: Here it shows what functions are available for Coordinator.
24
Use Case for Content Manager: Here it shows what functions are available for Content Manager.
25
3.2.2 Activity Diagrams
26
Activity Diagram for Admin login and Activities
27
3.2.3 Structure/Workflow
28
Workflow of new user Approve/Reject
29
Workflow of Content Upload
30
3.2.4 Database Table Structures
DB Table List
31
3.2.5 Sample Entity Relationship diagram for an existing eLearning System
32
3.2.6 Sequence Diagrams
33
Sequence diagram of user login to the system
34
Sequence diagram of user search study material in the system
35
3.3 User Interface Design
Among all the major components of the system, a major role of the system is played by user
interfaces. Interactivity in between system and the user is managed by the interface. User
friendliness, integrated colour combination and the well-organized components are dependent on
it.
Without having a user-friendly interface, interaction with the system becomes hard. Privileges
must be set to content managers, ITIL coordinators and learners in different ways. Management of
those privileges and presenting them effectively to users are helped by the interfaces.
The system login page which belongs to the developed system is displayed by Figure 3.18 User
Login Interface. In any computerized system the first interface encountered by the user is the login
page. Therefore, by designing and handling errors properly and pleasant feeling about the rest of
the system can be created within the user.
36
3.3.2 User Registration Interface
The user needs to register to the system before login. Only the registered users can use the system.
User registration interface for students shown in Figure 3.19 User Registration Interface for
Learner/Student and for Content manager and ITIL coordinator in Figure 3.20 User Registration
Interface for Content manager and ITIL coordinator. Different with these two is. Content manager
and ITIL coordinator have to attach a letter if proof when registering and later by a Content
manager will approve the registration.
37
Figure 3.20 User Registration Interface for Content manager and ITIL coordinator
38
3.3.3 Home Page
After login in following three interfaces will be shown as home pages for each of the three user
types. Figure 3.21 Home Page for Students, Figure 3.22 Home Page for ITIL coordinator and
Figure 3.23 Home Page for Content manager. Depending the privilege levels for each user type
different functions will be available.
39
Figure 3.22 Home Page for ITIL coordinator
40
3.3.4 User Profile Interfaces
Below given the page for user profile editing. Depending the privilege levels for each user type
different information will be available. For Learners Figure 3.24 User Profile Interface for Student
and for other users Figure 3.25 User Profile Interface for ITIL coordinator.
41
3.3.5 Report Interfaces
42
3. Uploaders with most number of content/material uploaded
43
3.3.6 Approve/Reject Materials
When a content manager goes to approve or reject uploaded content, they will be directed to
following screens. Figure 3.30 Approve/Reject Materials Interface and Figure 3.31
Approve/Reject Materials Interface 02.
44
3.3.7 Add FAQ Interface
When Content manager try to add a new FAQ topic, user will be directed to Figure 3.32 Add New
FAQ Interface.
When Content managers for ITIL coordinators try to upload material, they are directed to Figure
3.33 Content Upload Interface. When Content manager try to add a new lesson, they are directed
to Figure 3.34 Add New Lesson Interface.
45
Figure 3.34 Add New Lesson Interface
46
3.4 Major Code and Module Structures
Main code modules developed in the system have been mentioned below by briefly describing
their functionality.
User
Registration
Homepage
Most Visited
Users
Most Commented
Contents
Uploaders with
most number of
content/material
47
Ex: Code for User Registration
Every system user needs to register to the system before login. User registration handled by below
code segments.
48
3.5 System Test Plan
Planning a test case is a very important aspect for developing the system as well as for the
completed system. The test plan should have the ability to test the functionality of the overall
system. By properly testing a system, it can identify the errors which generate from the system and
can correct them. The implemented system was tested using different test cases.
Since the development started, the test plan continued by testing the system units. After completing
a system unit, it was completely tested to identify whether it can function according to
expectations. Therefore, early detection of the errors was helped by this testing stage.
After performing the system unit testing, next integration testing was done, and this can identify
the errors and the required functionality of the units after integration. System testing was
performed as the final stage for the completely developed system to check the functionality.
The system was subjected to focus on three main test types during the testing phase.
One interface will take as a one unit in the application. System has been tested deeply with the unit
level test cases.
2. Integration test
Once each and every interface integrate together and tested for some integration test to make sure
nothing has broken during the integration.
3. UAT testing
Once functional and integration testing completed, User acceptance test will proceed to give the
final sign off.
49
Test Case for User Login
Test Case ID 01
Test Case Description Login
Pre - Condition User should be a registered user
Test Procedure Enter user name
Enter password
Click login button
Test Case ID 02
Test Case Description New material upload
Pre - Condition User should be a Content manager or an ITIL coordinator
User should be logged in
Test Procedure Click upload material button
Enter Material Title
Enter Material Description
Select Related lesson from dropdown
Select files
Click save button
Expected Output Material gets uploaded
Actual Output Material gets uploaded
Pass / Fail Pass
Table 3.4 Test Case for Material Upload
50
Test Case for Add new Lesson
Test Case ID 03
Test Case Description Add new lesson
Pre - Condition User should be a Content manager
User should be logged in
Test Procedure Click lessons tab
Click add new lesson button
Select main lesson from drop down
Add a lesson title
Add a description
Click submit button
Expected Output New lesson added
Actual Output New lesson added
Pass / Fail Pass
Table 3.5 Test Case for Add new Lesson
Test Case ID 04
Test Case Description Approve or reject uploaded material
Pre - Condition User should be a Content manager
User should be logged in
Test Procedure Click material approve button
Click on a material
Click approve or reject button
51
Test Case for Approve/Reject new Users
Test Case ID 05
Test Case Description Approve newly registered ITIL coordinators and Content managers
Pre - Condition User should be a Content manager
User should be logged in
Test Procedure Click approve new users button
Click download proof document button
Click approve or reject button
Test Case ID 06
Test Case Description User view materials
Pre - Condition User should be logged in
Test Procedure Click on view more button in a material
Test Case ID 07
Test Case Description User view reports
Pre - Condition User should be logged in
User should be a Content manager or an ITIL coordinator
Test Procedure Click on reports drop down
Select a report
52
Test Case for Comment Function
Test Case ID 08
Test Case Description User comment on a content
Pre - Condition User should be logged in
Test Procedure Click on view more button in a material
Type a comment
Click submit comment button
Test Case ID 09
Test Case Description User rate material
Pre - Condition User should be logged in
Test Procedure Click on view more button in a material
Select a rating
Click save rate button
53
3.6 Tools and Technologies Used
PHP
The term PHP is an acronym for PHP: Hypertext Pre-processors. PHP is a server-side scripting
language designed specifically for web development. PHP can be easily embedded in HTML files
and HTML codes can also be written in a PHP file. The thing that differentiates PHP with client-
side language like HTML is, PHP codes are executed on server whereas HTML codes are directly
rendered on the browser.
MySQL
MySQL is a freely available open source Relational Database Management System (RDBMS) that
uses Structured Query Language (SQL). SQL is the most popular language for adding, accessing
and managing content in a database. It is most noted for its quick processing, proven reliability,
ease and flexibility of use. MySQL is an essential part of almost every open source applications.
This enables a cost effective system delivery with reliability and good performance. MySQL is a
very ideal database for a small to large scale systems and working extremely well for projects like
online diet planning system. Easy administering is also one of the reasons for select this as the
system database of this Diet planning system [7].
Apache Server
Apache HTTP Server is a highly popular web server for Windows and UNIX/Linux operating
systems. It is developed as a free, open-source HTTP server that is highly secure, fast, efficient,
and extensible. Launched in 1995, Apache HTTP Server has become the most popular web server
in use today [5].
Bootstrap
Bootstrap is the most popular HTML, CSS, and JavaScript framework for developing responsive,
mobile-first websites. Bootstrap is completely free to download and use [20].
jQuery
jQuery is a JavaScript library that allows web developers to add extra functionality to their
websites. It is open source and provided for free under the MIT license. In recent years, jQuery
has become the most popular JavaScript library used in web development.
54
NetBeans IDE
NetBeans IDE is a free and open source integrated development environment for application
development on Windows, Mac, Linux, and Solaris operating systems.
The IDE simplifies the development of web, enterprise, desktop, and mobile applications that use
the Java and HTML5 platforms. The IDE also offers support for the development of PHP and
C/C++ applications.
XAMPP
XAMPP stands for Cross-Platform (X), Apache (A), MariaDB (M), PHP (P) and Perl (P). Since
XAMPP is simple, lightweight Apache distribution it is extremely easy for developers to create a
local web server for testing and deployment purposes. Everything you needed is to set up a web
server – server application (Apache), database (MariaDB), and scripting language (PHP). XAMPP
works equally well on Linux, Mac, and Windows.
Notepad++
Notepad++ is a free source code editor and Notepad replacement that supports several languages.
Running in the MS Windows environment, its use is governed by GPL Licence.
Based on a powerful editing component Scintilla, Notepad++ is written in C++ and uses pure
Win32 API and STL which ensures a higher execution speed and smaller program size. By
optimizing as many routines as possible without losing user friendliness, Notepad++ is trying to
reduce the world carbon dioxide emissions. When using less CPU power, the PC can throttle down
and reduce power consumption, resulting in a greener environment [19].
Since the solution is based on web-based development which is locally hosted for this specific
attempt, identified minimum hardware and software requirement for development and hosting side
application are listed as follows.
55
Chapter 4. Evaluation
Evaluation is a systematic determination of a subject's merit, worth and significance, using criteria
governed by a set of standards. It can assist an organization, program, project or any other
intervention or initiative to assess any aim, realizable concept/proposal, or any alternative, to help
in decision-making; or to ascertain the degree of achievement or value in regard to the aim and
objectives and results of any such action that has been completed. The primary purpose of
evaluation, in addition to gaining insight into prior or existing initiatives, is to enable reflection
and assist in the identification of future change.
This project would test and evaluation was done using a selected set of system users before
releasing the final product. System hosted at the free hosting site and link to this temporarily hosted
site given to the selected list of peoples with the simple questions. Main testing idea gain through
evaluation of those answers.
Several tests were conducted to get the full output throughout the project to achieve the objectives
described in Chapter 1. In spite of the effects of such constraints and boundaries author have
managed to handle the project successfully. The foundation of this development provided the
author with a wealth of ideas. Once the constraints were identified a proper plan was needed to
achieve the goals behind the questions. Therefore author has split the work in to several milestones
and allocated some deadlines to each milestone.
This topic was somewhat strange or new to the author as there were lack of background knowledge
of software development domain. Hence proper literal knowledge from the very basic point to the
more advanced facts were required in order to develop the system with given criteria. Chapter 2
which is the literature review of this thesis helped to gain a proper knowledge about the Web Based
System for ITIL Candidates.
In a nutshell, during the course of project, author has identified bunch of valuable areas while
providing a good output for the users. Importance of proper materials to study, getting them free
of charge are some of the valuable things author have learnt through this dissertation study.
56
4.2 Lessons Learnt
This final project helped me to build a fully functional system which improves my programming
skills. It gave me thorough knowledge and experience in developing a system within both
theoretical and practical aspects. It also taught me to work according to a proper schedule,
systematically. Thereby it is understood the importance of managing time to submit the reports, a
dissertation on time and experienced to work under pressure. Herewith listed some of the
knowledge gained through this project.
• Learned that to analyse the project, use case diagrams, sequence diagrams, activity
diagrams, class diagrams and ER diagrams are extremely helpful.
• Learned that there’s various free wireframe design tools to pre-design user interfaces.
57
Chapter 5. Conclusion
Since developer was a somewhat novice to this filed of development technology, certain things
were needed to learn from the beginning. The implementation work was a big deal as developer
does not come with a development background. Project was more challenging when the technical
limitations made issues at certain points. Project testing could have been carried out more
intensively and widely if the technical limitations did not impose boundaries on the process.
Though the selected problem domain has been answered with proven results of the web
application, the outcomes could have been more precise and accurate. The given time was adequate
to handle the project and we are really happy to complete the dissertation within the given time
frame even though some problems were faced. As mentioned, developer is not from a software
development domain so had to learn most of the technological function from scratch.
This system is satisfactory for myself as this will be definitely a useful system for anyone who
wishes to use it. Plus won’t be a waste of time even after the project time frame if can be developed
with more enhance features.
Finally, we are happy to state that, the entire work of this research study was successful, and
developer has achieved all the objectives of the project within the given time period.
58
5.2 Future Work
This system will be developed more as future work
• Develop an android/IOS mobile application so system will be more portable and accessible
• Gather real time values throughout the mobile app like what time of the day the most
number of users available
• System could be expanded to other exams apart from ITIL. Now system is only used on
ITIL exam but same concept be used to other exams as well
59
References
60
[17]Quora.com. (2016). What is JSON scripting? - Quora. [online] Available at:
https://www.quora.com/What-is-JSON-scripting [Accessed 12 Aug. 2018].
[18]Json.org. (n.d.). JSON Example. [online] Available at: https://json.org/example [Accessed 15
Sep. 2018].
[19]Notepad-plus-plus.org. (n.d.). Notepad++ Features. [online] Available at: https://notepad-
plus-plus.org/features/ [Accessed 4 Oct. 2018].
[20]GitHub. (n.d.). twbs/bootstrap. [online] Available at: https://github.com/twbs/bootstrap
[Accessed 23 Nov. 2018].
[21]Axelos.com. (n.d.). ITIL Certifications | AXELOS. [online] Available at:
https://www.axelos.com/certifications/itil-certifications [Accessed 11 Mar. 2018].
[22]Anon, (n.d.). [online] Available at: https://www.mylearningcube.com/Tech/itil%C2%AE-
service-design-(sd)-e~learning [Accessed 19 Mar. 2018].
[23] Purplegriffon.com. (n.d.). ITIL E-learning, ITIL Elearning Training at PurpleGriffon.co....
[online] Available at: https://purplegriffon.com/courses/e-learning [Accessed 19 May 2018].
[24] Good e-Learning. (n.d.). ITIL® v3 Foundation Certification Training. [online] Available at:
https://www.goodelearning.com/courses/it-service-management/itil-foundation [Accessed 4 May
2018].
[25] Swope (2014). A Comparison of Five Free MOOC Platforms for Educators. [online]
Technology Solutions That Drive Education. Available at:
https://edtechmagazine.com/higher/article/2014/02/comparison-five-free-mooc-platforms-
educators [Accessed 19 Feb. 2019].
[26] e-Learning, I. (n.d.). ITIL® Distance & Online | E-Learning Courses | SPOCE. [online]
SPOCE Project Management Ltd. Available at: https://www.spoce.com/courses/it-service-
management/itil-it-service-management/itil-distance-online-courses [Accessed 10 May 2018].
[27] Swope (2014). A Comparison of Five Free MOOC Platforms for Educators. [online]
Technology Solutions That Drive Education. Available at:
https://edtechmagazine.com/higher/article/2014/02/comparison-five-free-mooc-platforms-
educators [Accessed 2 May 2018].
61
Appendix A - User Documentation
Users who have privileges to access the system being guided on how to navigate within the system
and how to use its functions are helped by this document. Eligibility to access the system is
available to the Students, ITIL coordinators and Content managers. Different user levels are
available to each and every member and their functionality described below.
Login Page
Upon accessing all users are directed to login page which is shown in Figure 3.18 User Login
Interface.
Registration Page
To be able to logged-in user first need to register to the system. Depending on the user level
information required is different here. Figure 3.19 User Registration Interface for Learner/Student
and Figure 3.20 User Registration Interface for Content manager and ITIL coordinator. For
Content manager and ITIL coordinator, they have to wait till their registration be approved in order
to login.
Home Page
As soon as user log in to system, they are landed in to homepage. Depending on the user level
homepage information be differ. Figure 3.21 Home Page for Students, Figure 3.22 Home Page for
ITIL coordinator and Figure 3.23 Home Page for Content manager. All the functionalities available
for each user type are given/displayed in homepage.
Students
Upon accessing students can search material, access lessons and FAQ. Plus comment and rate
content.
ITIL coordinators
Upon accessing ITIL coordinators can search material, access/add lessons and access FAQ.
Comment and rate content. Also can upload material and view reports. Figure 3.33 Content Upload
Interface plus Figure 3.26 Most Commented Contents, Figure 3.27 Most Visited Users, Figure
3.28 Most Number of Content Up loaders and Figure 3.29 Most Viewed Contents.
62
Content managers
Upon accessing Content manager can search material, access/add lessons and FAQ, comment and
rate content, can upload material, approve material, view reports, approve users. Figure 3.33
Content Upload Interface plus Figure 3.26 Most Commented Contents, Figure 3.27 Most Visited
Users, Figure 3.24 Most Number of Content Up loaders and Figure 3.29 Most Viewed Contents
also Figure 3.30 Approve/Reject Materials Interface, Figure 3.32 Add New FAQ Interface and
Figure 3.34 Add New Lesson Interface.
63
Figure: Code for Content Upload
64
Figure: Code for Content Upload
65
Code for adding new Lesson
66
Code for adding new FAQ Topic
67
Code for Material approve
68
Figure:Code for Material approve
69
Code for new User approve
70
Code for new Material approve
71
Figure:Code for new Material approve
72
Appendix B - Client Certification
73
……………………………………….. …………………
Signature of the Candidate Date
Supervisor *
Supervisor’s
Comments
Name
Signature
Designation
Date
*- Supervisor must be a UCSC academic staff member
74
Advisor +
Advisor’s
Comments
Name
Signature
Designation
Date
+ - Advisor can be selected as candidate wish
75