Final Documentation
Final Documentation
C027-01-1394/2019
2023
DECLARATION
I declare that the work in this document is my own original work and it has not been previously
presented to any University or considered for certification.
This research project document has been submitted with my approval as the university
supervisor
Dr Antony Maina:
Sign…………………………. Date………………………
ii
DEDICATION
God Almighty, my creator, my strong pillar, my source of inspiration, wisdom, knowledge and
understanding, I dedicate this project to you. Throughout this effort, He has been my source of
strength and I have only been able to fly on His wings. I also dedicate this project to my parents,
and relatives who have been extremely supportive, providing me with emotional, financial and
other forms of support for me to complete my project. I also dedicate this project to the many
customers of online shopping who led me to developing this project. And finally I dedicate this
project to my friends for always encouraging me and helping me to achieve my goals.
Thank you.
iii
ACKNOWLEDGEMENT
I would first wish to acknowledge the Almighty God for a continued guidance through the whole
process from idea generation to actual implementation of the project.
Finally, I wish to acknowledge my great friends for their support all through and family for their
prayers encouragement and emotional support throughout the journey of system development.
iv
ABSTRACT
This online ticketing system for the Nairobi Commuter Rail Service allows quicker and a more
convenient reservation of tickets by passengers because they will do this at their convenient time
and place provided they have access to the internet. The system is highly needed because the
commuter trains are still used frequently by the Nairobi residents. The purpose of this study is to
create a system that will ease the process of booking of the train tickets, making payments for the
tickets and receiving receipts for the Nairobi Commuter Rail service users. The main objective of
this study is to create an online ticketing system that will enable the Nairobi Commuter Rail
Service users to book their tickets, pay for the tickets and receiving a receipt as a prove for the
payment. This system will help reduce the problems encountered by the passengers today which
include taking very much time queuing at the station, reduce congestion at the station, the system
will provide the users with information about the train, time schedules and capture information
about the passengers. By observing at the current system it is outdated and there is a need to
replace with a new and up to date system which lead to coming up with this idea of an online
ticketing system.
v
TABLE OF CONTENT
DECLARATION.............................................................................................................................ii
DEDICATION...............................................................................................................................iii
ACKNOWLEDGEMENT..............................................................................................................iv
ABSTRACT....................................................................................................................................v
CHAPTER 1: INTRODUCTION....................................................................................................1
1.1 Background.......................................................................................................................................1
1.2 Statement of Problem........................................................................................................................1
1.3 Main Objective..................................................................................................................................2
1.4 Specific Objectives............................................................................................................................2
1.5 Scope.................................................................................................................................................2
1.5.1 Assumptions...............................................................................................................................2
1.5.2 Limitations of the Study.............................................................................................................2
1.6 Significance of the Study...................................................................................................................3
CHAPTER 2: LITERATURE REVIEW.........................................................................................4
2.1 Introduction.......................................................................................................................................4
2.2 Case study 1: Petri Net Modelling of Information Flow in The Online Train Ticket Booking Syste.4
2.3 Case study 2: Netease Train Ticket Booking System Design and Implementation............................5
2.4 Case study 3: International Journal of Computer Applications..........................................................6
2.6 Research Gap.....................................................................................................................................6
2.5 Summary...........................................................................................................................................6
CHAPTER 3: METHODOLOGY...................................................................................................7
3.1 Introduction.......................................................................................................................................7
3.2 Research Design................................................................................................................................7
3.3 Data Collection Methods...................................................................................................................8
3.3.1 Questionnaires............................................................................................................................8
3.3.2 Observation.................................................................................................................................8
3.4 Software Development Method.........................................................................................................8
3.5 Sampling and Sampling Methods......................................................................................................9
3.6 Justification of Methodology.............................................................................................................9
CHAPTER 4: RESULTS ANALYSIS..........................................................................................10
4.1 Results for Questionnaires...............................................................................................................10
4.2 Results from Observation................................................................................................................11
vi
CHAPTER 5: SYSTEM DESIGN AND ANALYSIS..................................................................13
5.1 Introduction.....................................................................................................................................13
5.2 Functional Requirements.................................................................................................................13
5.3 Non-functional Requirements..........................................................................................................13
5.3.1 Security.....................................................................................................................................13
5.3.2 Availability...............................................................................................................................13
5.3.3 Reliability.................................................................................................................................13
5.3.4 Flexibility.................................................................................................................................14
5.3.5 User Friendly............................................................................................................................14
5.4 UML Diagrams................................................................................................................................15
5.5 Interface Design...............................................................................................................................17
CHAPTER 6: SYSTEM IMPLEMENTATION AND TESTING................................................21
6.1 System Implementation...................................................................................................................21
6.2 Testing.............................................................................................................................................21
6.2.2 Functionality Testing................................................................................................................22
6.2.3 Back-End Testing.....................................................................................................................23
CHAPTER 7: CONCLUSIONS AND RECOMMENDATIONS.................................................24
7.1 Conclusion.......................................................................................................................................24
7.2 Recommendations...........................................................................................................................24
REFERENCES..............................................................................................................................25
APPENDICES...............................................................................................................................26
Appendix 1............................................................................................................................................26
Hardware Used in the Study..............................................................................................................26
Appendix 2............................................................................................................................................27
vii
LIST OF FIGURES
viii
LIST OF TABLES
ix
CHAPTER 1: INTRODUCTION
1.1 Background
Transport is the carrying of goods and people from one place to a mother in an efficient and
affordable manner. It includes use of buses, rail system, ferries and cable cars. The benefits of
transportation are so many which may include economic benefits, improve connection and
convenience, streamlining the tourism sector and development of business.
Rail transport is one of the means of transport, it uses vehicles that run on tracks. It is one of the
most of important, commonly used and very cost effective mode of commuting and goods
carriage over long as well as short distance. Railway transport is more effective compared to
road transport that is used mostly and many a times than railway transport, its environment
friendly, it can carry large amount of goods and people. Railway lines have a more
interconnected society. Railway transport system in Kenya was established to allow easy
transportation of goods. It has been in use since 1895. In 1899 the railway line reached Nairobi.
After colonialism, the Kenyan government decided to come up with the Kenya Railways which
lead to the Nairobi Commuter Rail Service which connects the Nairobi Metropolitan Regions.
The Kenya Railway has a mandate to provide public transport at a lower and affordable prices on
the behalf of the government. The NCRS acts as the backbone of the mass public transport
within the Nairobi Metropolitan Region. Railway transport is a vital component for the entire
transport in our country.
Ticketing system is a system that allows passengers to book their tickets and make their
payments. These systems are in place to help and support one deal with issues within the
organisation. These systems use ticketing software to assist in the actions it is needed to perform.
It saves users time because the processes will not be manual, freeing up valuable time for more
important work and all the activities will be easy to manage.
Due to development of technology I observed that the Nairobi Commuter Rail Service needed an
up to date ticketing system so as to ease the ticketing process. This system will help save the
passenger the time they spend at the station queuing in order to book their tickets and pay for
them. It will also reduce congestion at the station because the scanning of the QR code will be
1
easier compared to having to make the payments at the station. The system will help retain the
commuter customer as the services will be readily available and accessible.
The main objective of this study is to create an online ticketing system that will enable the
Nairobi Commuter Rail Service users to book their tickets, pay for the tickets and receiving a
receipt as a prove for the payment.
iii. To allow users to pay for their tickets either daily, weekly or even monthly
iv. To generate report about ticket sales, popular routes, the days which the users are
many
v. To provide a customer loyalty program for the customers as per how frequently
use the system
1.5 Scope
1.5.1 Assumptions
ii. Some passengers may not access smartphones and may be smartphone illiterate
2
1.6 Significance of the Study
This project will enable the railway transport sector in attain a considerable level of development
because the major requirements for railway operations have been met. This therefore means that:
In such a time the commuter management is needed to develop the railway transport sector, there
is no doubt that this system is of great relevance in order to meet the needs and standards of the
developed world.
3
CHAPTER 2: LITERATURE REVIEW
2.1 Introduction
Rail transport is one of the means of transport, it uses vehicles that run on tracks. It is one of the
most of important, commonly used and very cost effective mode of commuting and goods
carriage over long as well as short distance. Railway transport is more effective compared to
road transport that is used mostly and many a times than railway transport, its environment
friendly, it can carry large amount of goods and people. Railway lines have a more
interconnected society. Railway transport system in Kenya was established to allow easy
transportation of goods. It has been in use since 1895. In 1899 the railway line reached Nairobi.
After colonialism, the Kenyan government decided to come up with the Kenya Railways which
lead to the Nairobi Commuter Rail Service which connects the Nairobi Metropolitan Regions.
The Kenya Railway has a mandate to provide public transport at a lower and affordable prices on
the behalf of the government. The NCRS acts as the backbone of the mass public transport
within the Nairobi Metropolitan Region. Railway transport is a vital component for the entire
transport in our country.
Ticketing system is a system that allows passengers to book their tickets and make their
payments. These systems are in place to help and support one deal with issues within the
organisation. These systems use ticketing software to assist in the actions it is needed to perform.
It saves users time because the processes will not be manual, freeing up valuable time for more
important work and all the activities will be easy to manage.
2.2 Case study 1: Petri Net Modelling of Information Flow in The Online Train Ticket
Booking System
Due to the significant increase in visitors during the Spring Festival, China has been plagued by
transportation issues for a very long time. For the first time in China's history, more than 200
million people travelled during the 2010 Spring Festival. And in 2012, this figure reaches 380
million. Ordinary people find it exceedingly difficult, if not impossible, to stand in line at the
train station to purchase a ticket because it could take them more than ten hours. In June 2011,
the PRC Ministry of Railways created the 12306 website (http://www.12306.cn), an online
platform for purchasing train tickets. By creating an account on the website, passengers can
4
purchase rail tickets online. Purchase of tickets is significantly decreased. However, using this
online booking system requires users to submit their identity for verification, select a train, and
finish the payment process online. In this study, the Petri net modelling method is utilized to
investigate the online ticket ordering process. Additionally, the incidence matrix is obtained
using the useful program PIPE. The discovered occurrence is essential to solving the issue of
pages crashing and other system performance research.
2.3 Case study 2: Netease Train Ticket Booking System Design and Implementation
At present, the demand for train tickets in the market is on the rise, which is generally reflected
in the continuous railway infrastructure construction, the increasing total mileage, the rapid
construction of high-speed railway, the increasing number of train trips, the Spring Festival
travel rush and other periods of tight demand, ticket purchase is still in short supply. The
maturity of traditional Internet promotes the development of mobile Internet and provides many
basic conditions for the development of mobile Internet. Currently on the market already has a
lot of plug-in software and rob ticket train tickets for tickets, but the functions are based on the
form of a browser plug-in, such as 360 browser rob ticket plug-ins, in terms of mobile client,
recently launched the 12306 train mobile phone client, but only has the function of normal to buy
a ticket, in the aspect of mobile client haven't rob function. Therefore, it is imperative to develop
a mobile app for train ticket purchase with the function of ticket snatching, so that mobile phone
users can snap up train tickets anytime and anywhere with their mobile phones. The
establishment of Netease train ticket project, based on Freemarker and Spring MVC (Model
View Controller) Model View Controller, designed and developed its own server-side
framework, which improved the development efficiency and enhanced the system security. It is
conducive to creating a healthy and good railway ticket purchasing environment, establishing an
efficient and convenient ticket purchasing order, and the functions of booking and snatching
tickets and monitoring the remaining tickets let the users with demand know the information of
the remaining tickets in the first time, adjusting the balance between the supply and demand of
railway tickets, and effectively relieving the situation that one ticket is hard to get during the
Spring Festival travel rush. Nowadays, smart phones, tablet computers and other mobile devices
are becoming more and more popular in the market, which makes mobile Internet gradually
5
become the most intimate media for people. Through it, people can not only enjoy network
information services anytime and anywhere, but also complete many creative business activities.
The mobile devices are becoming more and more popular and are providing a new notion of
communication that we could once only imagine. With respect to Mumbai, one of the major
problems faced by the 70 lakh people, who travel by local trains every day, is standing in the
long queues for an average of 10-15 minutes to buy a ticket. This often leads to people traveling
without tickets at all. This project aims to find a remedy for these 70 lakh people by using an
online application to book tickets on their phone. It will reduce the average minimum 3170
minutes they spend standing in the line annually. The user will have a unique user name for their
rechargeable account. Whenever a user wishes to book a ticket online, he can log into the
application and enter the required details. The ticket will be booked and the fare will be deducted
from the account along with the confirmed ticket. This project aims to provide an incredible and
much needed solution, which will benefit more than half of the population of Mumbai and make
their daily routine easy and enjoyable.
All these systems are to ensure efficiency on the side of passenger team and also to save them
time spend at the station while booking using the old system and to ensure the customer is served
at their convenience always.
2.5 Summary
From the cases above it is evident that there is advancement of technology. It can be observed
that most railway stations have adopted the technology of online ticketing in their systems while
others are yet to. These systems have made the booking work easier for all people that is both
customers and the attendants. Some may have automated their systems but they are yet to
integrate it into use. Some systems are yet to be updated with the current trends in technology.
6
CHAPTER 3: METHODOLOGY
3.1 Introduction
The chapter starts with discussing the research design adopted for the study to ensure the study
effectively address the research problem. It constitutes an arrangement of techniques and systems
applied in collecting and investigating measures of the factors indicated in the exploration issue.
The chapter also presents the data gathering techniques and manipulation procedures. Under the
data collection section, the study highlights the kind of data to be gathered, the instrument for
data collection, the respondents and procedures for data collection. The section ends with data
analysis procedures and how the analysed data will be presented.
The nature of the research design was an applied approach which aims at finding a solution for
an immediate problem that is facing the society or an industrial organization. Various techniques
and methodologies were implored in an effort to achieve the anticipated objectives. Mainly, the
methods chosen particularly revolved around using existing knowledge so as to provide better
solutions to problem in learning, by creating a new system, which is the discipline in this
research.
The type of research applied in this study mainly involved descriptive, applied and qualitative
research types. In descriptive research type, surveys and techniques to find out facts were used.
7
There was no control over the variables present. Only reporting what exists. From this method I
was able to collect data about the current ticketing systems available in station.
Applied research was also used where there was need to find a solution to a better ticketing
system. Web development had to be applied to ensure efficiency for the customers and the
attendants.
Lastly, qualitative research was applied when trying to find an efficient way of booking the
tickets. Different approaches were tried in an effort to find an improved and efficient way in
order to achieve our objective.
An important discipline in research studies is collection of data from the target populations
selected by a researcher. From the data that is collected inference and relationships can be made
from this that help any researcher to know the points to improve. Here are the methods I used in
this research study;
3.3.1 Questionnaires
A blend between closed and open questionnaires will be used to collect data from the selected
subject of study. The questionnaires will be deployed through google forms which will be sent
through the internet. This is a chosen method because it’s a cheap, effective and quick method of
obtaining information from large population of respondents, especially using google forms.
3.3.2 Observation
Having been around the Nairobi Commuter Rail service station I have observed that there are
some challenges faced by the passengers while using the current system. Due to that I decided to
develop a system that would be a solution to the the current challenges. The passenger
overcrowd at the station especially at the evening leads to delay of the train because they are
been attended to slowly.
Agile development method will be used in this instance. Agile method proposes incremental and
iterative approach to software design. This results in small incremental releases with each release
building on previous functionality. This method is less rigid to change thus incorporates change
8
as development progress. The division of the entire project into smaller parts helps to minimize
the project risk and to reduce the overall project delivery time requirements.
Design
Deployment Development
Quality Assurance
Sampling refers to the selection of a number of study units from a defined study population. It
will determine what group of study will be selected to represent the whole field of study in this
research.
Non-probability Sampling will be used in this case as I have no control over who will be part of
the selected sample of study. Convenience sampling will be used as it enables one to draw a
sample from the population close at hand for pilot testing.
The main reasons why the researcher adopted this method is because: -
9
Regular adaptation to changing circumstances.
People and interactions are emphasized rather than process and tools. Customers,
developers and testers constantly interact with each other.
Responses
Yes No
95% of the passengers we involved with the questioners liked the proposal of the new system
and said that the system would be of help to them and it would reduce the challenges they face
the current system
The questionnaires had some open-ended questions question to capture views of the respondents
in regard to the system
10
1. Some of the challenges faced during the booking of the tickets using the current system
If a passenger loses their ticket before they reach the destination, they will have to pay for
the tickets again
2. Have the passengers used systems similar to the system we are developing
Almost all the respondents had used similar systems according to their feedback at other
different fields. They added that the system would be of great help to them
Yes No
11
by bringing problems to them. I also observed that there is still another problem at stations when
passengers are alighting. They have to show their tickets before they leave the station to prove
that they had paid for the service. If one may have lost their ticket they have to pay again and this
is not good at all.
12
CHAPTER 5: SYSTEM DESIGN AND ANALYSIS
5.1 Introduction
The design and architecture of the whole project is analysed in this chapter. System analysis is
the process of defining the components, architecture and data of a system so as to satisfy the
requirements. System design is a method of studying a system, examining its component parts
and their interactions. The system should be designed and analysed before implementation
begins. UML diagrams, requirements analysis, components of the system among others are
described in details in this chapter.
The system requirements include the functional and non-functional requirements of the system.
Design of the system the system is carried out according to the features and functionalities of the
system such as UI, UML diagrams and other documentations. Designing of the system mainly
focuses on the user and ensuring that the system will be user friendly and interactive.
5.3.2 Availability
The system will be available for use whenever the users require it even when under maintenance
or update process.
13
5.3.3 Reliability
The system will be reliable to the users and will behave in a reliable manner even under DOS
attack.
5.3.4 Flexibility
The system will be flexible that is it will be portable from one android device to another.
14
5.4 UML Diagrams
Login
Book
Class
Passenger
info
User
Make
payments
Loyalty
program
Generate
Reports
Return
home
15
Figure 5 Use Case diagram
Book
Reserve
Class
Payments
Make Save
payment16 payments
Return
home
Return home
Figure 5 Design
5.5 Interface
Activity
Diagram
17
Figure 5.2 Reserved
18
Figure 5.4 Passenger Information
19
Figure 5.6 Admin Loyalty
20
CHAPTER 6: SYSTEM IMPLEMENTATION AND TESTING
6.1 System Implementation
The system was developed using web development tools. Xamp was used as the database,
authentication and storage platform
6.2 Testing
Table 6.1 Security test
21
case 2 should only account, verify should be logged into the
allow a user if the email, try to logged into system
the password login with the the system
entered is correct
correct password
22
6.2.3 Back-End Testing
Table 6.5 Back-End test
23
CHAPTER 7: CONCLUSIONS AND RECOMMENDATIONS
7.1 Conclusion
Online ticket booking system is an application where the customer can book a ticket
online and 24*7 hours a day from anyplace in the world. Customers can also interact with
the ticket booking website to know any other details they want. Online ticket booking
system has been developed successfully. System performance is also found to be satisfactory.
This is a user-friendly application. Through this application, the cost can be
reduced and efficiency is increased. There are several procedures that can be selected by
customers. With the help of this application customers can book tickets, can know the
status of a trains, a source station and destination can be chosen according to their choice.
It targets both internal and external users
7.2 Recommendations
Online ticketing system will serve as a good customer support platform for all users using the
Nairobi Commuter Rail Service. It can be used by all passengers. There is also room for
improvement for this application to meet all the customer needs.
24
REFERENCES
Agarwal S., Singhal R., Mittal R., Freight Operations Information System (FOIS) - advanced
architecture & its Future. IJLRST 2013, Vol 2 Issue 2.
Bunya, R.; Yeo, Chee Shin; Venugopal, S. (September 2008). “Market-Oriented Cloud
Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities’’. 10th
IEEE International Conference on High Perfonnance Computing and Communications, 2008.
Database System Concept (2002) FOURTH EDITION by: Abraham Silberschatz Henry F.Korth
and S.Sudarshan.
Database System Implementation (2000) by: Hector Garci-Molina Jeffrey D Uliman and Jeniffer
Wisdom.
Ervin, J.R. (2000) “Dynamic delivery of information via the world Wide web” library Hi-tech.
Geer. D, SooHoo, K., J., Jaquith, A(2003) “Information Security: Why the Future Belong to
Quants, “IEEE Security and Privacy.
Kumar, A., Gadgil, A., Satapathy, A., Upadhyayula, R., Prabhudesai, 5. 2001, Indian Railways
IT Interface, IIMA Research and Publications. 47
25
APPENDICES
Appendix 1
Table 7.1 Software
Laptop
Mobile phone
Laptop 60000
TOTAL 82,000
Appendix 2
Table 7.3 Schedule
Weeks 1-2 3-4 5-6 7-8 9- 11- 13- 15- 17- 19- 21- 23-
26
10 12 14 16 18 20 22 24
Feasibility
study
Requirements
Gathering
Research
Requirement
analysis
Design
Development
and coding
27