You are on page 1of 109

TITLE PAGE

REAL TIME PUBLIC BUS TRACKING THROUGH


MOBILE DEVICE (ANDROID/) GPS AND GOOGLE
MAP API

BY

MANISH NEUPANE

Dissertation Submitted to the Faculty of Engineering,


Science and Technology,
Infrastructure University Kuala Lumpur,
in Fulfillment of the Requirements for the
Bachelor in Computer Science (Hons)

1
ABSTRACT

Real-Time public bus tracking application is a mobile-based application developed for the
public transportation user to know the public bus routes, track live bus location on that
route, and pay bus fare using integrated digital wallet of the application. Users can look for
the name list of bus stand, look for the bus route based on current location. The system also
provides a facility for the transportation services provider i.e., driver or bus owner to create
their profile and provide a necessary document to register in the application so that the live
location of the bus is collected from the mobile-based GPS(Global Positioning System)
owned by the driver or conductor and such update is sent to user devices through a real-
time database. The first chapter explains the introductions of the system with problems
statements, objectives, project scope, methodology, and development tools. The second
chapter consists of a literature review which includes background study, a similar feature of
the common system at least four, their comparison table. The third chapter is basically
about software methodology and tools used in developing the system.

2
ACKNOWLEDGEMENT

Fortunately, I was able to complete this project through my method of information


discovery.
I'd like to express my heartfelt gratitude to Dr. Rajeev Kumar Shah, my supervisor and
instructor, for his leadership and guidance during this project.
My heartfelt gratitude to my family, especially my parents, for their unwavering support
and assistance; without them, none of this would be possible. To sum it up, I owe a debt of
gratitude to each and every one of my companions for providing me with a plethora of
ideas, inspirations, and encouraging gestures.

3
APPROVAL

We have reviewed this exposition to ensure that it complies with the requirements of the
Bachelor of Computer Science BCS program and the school (Hons.)

Signature: ...... .....................

Supervisor: Dr. Rajeev Kumar Shah


Date: 03/02/2022

4
AGREEMENT

Legitimate Reasons for Late Submission

 Students must present their chapter assignments to their assigned supervisor at the
end of each task.
 Students must ensure that they understand how and when to show their work.
 Students who miss deadlines due to illness must present an original (not a copy)
clinical evidence to the instructor on the first day back after a long absence.
 Students who seek sympathetic thought should provide a memorial service
statement, eulogy, specialist's authentication or death testament, or other
appropriate evidence.

Students Declaration

 I declare that this project is entirely my own work, free of plagiarism or conspiracy,
and that it will be graded as Failed if plagiarism or conspiracy is discovered.
 It doesn't include any of my previous work unless this is stated.
 I'm aware that any breach of these rules will be deemed cheating and will result in a
Failed grade.
 I'm aware that all the materials submitted beyond the deadline will be acknowledge,
but no grades will be awarded.
 I've prepared a hard copy and an electronic replica of my task, which I can recreate
if the original is lost in any manner.
 Once I drop the IT Project subject, this declaration will be naturally erased.

Student Name: MANISH NEUPANE Student Signature: ______________

Student ID: 041902900036 Date: 03/02/2022

5
DECLARATION

I certify that this project report and the research to which it refers are the result of my
efforts, and that any recommendations or statements based on other people's work, whether
authored or not, are regarded as Client-server in violation of the discipline's normal
reference procedures.

03/02/2022 MANISH NEUPANE


041902900036

6
TABLE OF CONTENTS

TITLE PAGE...........................................................................................................................i
ABSTRACT............................................................................................................................ii
ACKNOWLEDGEMENT.....................................................................................................iii
APPROVAL..........................................................................................................................iv
AGREEMENT........................................................................................................................v
DECLARATION...................................................................................................................vi
TABLE OF CONTENTS......................................................................................................vii
LIST OF FIGURES..............................................................................................................xii
LIST OF TABLES...............................................................................................................xiv
LIST OF ABBREVIATIONS.................................................................................................1
CHAPTER 1...........................................................................................................................2
INTRODUCTION..................................................................................................................2
1.1 Introduction...................................................................................................................2
1.2 Problem Statement........................................................................................................2
1.3 Objective.......................................................................................................................3
1.4 Scope.............................................................................................................................3
1.4.1 User Scope..............................................................................................................3
1.4.2 System Scope..........................................................................................................3
1.4.3 Constraints..............................................................................................................3
1.5 Methodology.................................................................................................................4
1.5.1 Mobile GPS or Assisted GPS (A-GPS)..................................................................4
1.5.2 Digital Wallet integration.......................................................................................4
1.5.3 Google Maps...........................................................................................................4
1.5.6 Firebase as Real-Time Database.............................................................................5
1.6. Development Tools......................................................................................................5
1.6.1 Python.....................................................................................................................5
1.6.2. Kivy.......................................................................................................................5
7
1.6.2. Firebase..................................................................................................................5
1.6.3 Visual Studio Code.................................................................................................6
1.6.4 Google Drive..........................................................................................................6
1.7 Outline...........................................................................................................................6
1.8 Conclusion.....................................................................................................................6
CHAPTER 2...........................................................................................................................7
LITERATURE REVIEW.......................................................................................................7
2.1 Introduction...................................................................................................................7
2.2 Background study..........................................................................................................8
2.3 Research of similar system............................................................................................8
2.3.1 A Mobile Application for Bus Information System and Location Tracking using
Client-Server Technology................................................................................................8
2.3.2 Real-Time Web-Based Bus Tracking System........................................................9
2.3.3 BusMe: Automatic Bus Localization System and Route Registration...................9
2.3.4 Design and Developing Real-Time Interactive IIUC Bus Tracking System..........9
2.3.5 Real-Time Bus Position and Time Monitoring System..........................................9
2.4 Common features of the existing system...................................................................10
2.4.1 Live tracking of bus..............................................................................................10
2.4.2 Trip Planning........................................................................................................10
2.4.3 Notifications.........................................................................................................11
2.4.4 Favorites...............................................................................................................11
2.4.5 Nearby bus stops...................................................................................................12
2.5 Research on an existing similar application................................................................13
2.5.1 Chalo.....................................................................................................................13
2.5.2 Mero Sajha............................................................................................................13
2.5.3 GRTC....................................................................................................................13
2.5.4 Ride Smart Bus.....................................................................................................13
2.5.5 Moovit...................................................................................................................14
2.6 Comparison Table.......................................................................................................14
2.7 Conclusion...................................................................................................................16
CHPATER 3.........................................................................................................................18
METHODOLOGY................................................................................................................18
3.1 Introduction.................................................................................................................18
8
3.2 Agile Model.................................................................................................................18
3.3 Use Case Diagram.......................................................................................................20
3.4 Written Use Case.........................................................................................................21
3.4.1 User Registration..................................................................................................21
3.4.2 Validation.............................................................................................................21
3.4.3 Login.....................................................................................................................22
3.4.4 Look Routes List...................................................................................................23
3.4.5 Live Bus Location.................................................................................................23
3.4.6 Fare Payment........................................................................................................24
3.4.7 Driver Registration and add buses Details............................................................24
3.4.7 Update Bus Live Location....................................................................................25
3.5 Activity Diagram.........................................................................................................26
3.5.1 User Registration and Login.................................................................................26
3.5.2 Look Routes List...................................................................................................27
3.5.3 Live Bus Location.................................................................................................28
3.5.4 Fare Payment.......................................................................................................29
3.5.5 Driver Registration, Adding bus Details and Login.............................................30
3.5.6 Updating and Tracking Bus Live Location..........................................................31
3.5.7 User KYC Verification and Validation................................................................32
3.6 Sequence Diagram.......................................................................................................33
3.6.1 User Registration and Login.................................................................................33
3.6.2 Live Bus Tracking and fare payment....................................................................34
3.6.3 View Route List....................................................................................................35
3.6.4 Driver Registration and Adding bus Details.........................................................36
3.6.5 Updating and Tracking Bus Live Tracking..........................................................36
3.6.6 User KYC Verification and Validation................................................................37
3.7 Class Diagram.............................................................................................................39
3.8 Conclusion...................................................................................................................39
CHAPTER 4.........................................................................................................................40
INTERFACE.........................................................................................................................40
4.1 Introduction.................................................................................................................40
4.2 Interface Explained......................................................................................................40

9
4.2.1 Driver Registration...............................................................................................40
4.2.2 Driver Login.........................................................................................................41
4.2.3 Location Permission.............................................................................................42
4.2.4 Home Page :..........................................................................................................43
4.2.5 Driver Landing Page.............................................................................................44
4.2.6. User Landing Page...............................................................................................45
4.2.7 User Registration..................................................................................................46
4.2.8 User Login............................................................................................................47
4.2.9 Home page............................................................................................................48
4.2.10 Live Location......................................................................................................49
4.2.11 Payment Initiation Dialogue Box.......................................................................52
4.2.12 Digital Payment Integration................................................................................54
4.2.13 User KYC Verification Form.............................................................................55
4.2.14 View User KYC Details.....................................................................................58
4.2.15 View Bus Stand and Routes..............................................................................61
4.3 Conclusion...................................................................................................................63
CHAPTER 5.........................................................................................................................64
TESTING AND RESULT....................................................................................................64
5.1 Introduction.................................................................................................................64
5.2 Decision Table.............................................................................................................65
5.2.1 User Registration module.....................................................................................65
5.2.2 User Login module..............................................................................................67
5.2.3 Forgot Password Module......................................................................................70
5.2.4 Home Screen.........................................................................................................73
5.2.5 KYC Registration Module:...................................................................................74
5.2.6 Live Bus Location Module...................................................................................78
5.2.7 Digital Wallet Integration.....................................................................................79
5.2.8 Viewing Bus Routes and Bus Stop.......................................................................79
5.2.9 Driver Registration Module..................................................................................80
5.2.10 Driver Login Module..........................................................................................82
5.2.11 Location Tracking Module.................................................................................84
5.4 User Acceptance Testing.............................................................................................86

10
5.3.1 User acceptance testing procedures......................................................................86
5.3.2 Summary of Gathered Information.......................................................................86
5.3.3 Analysis of Gathered Information........................................................................87
5.5 Conclusion...................................................................................................................88
CHAPTER 6.........................................................................................................................89
CONCLUSION AND SUGGESTION.................................................................................89
6.1 Introduction.................................................................................................................89
6.2 Challenges...................................................................................................................89
6.3 Advantages of System.................................................................................................89
6.4 Disadvantage of System..............................................................................................90
6.5 Future Development....................................................................................................90
6.6 Conclusion...................................................................................................................90
REFERENCE........................................................................................................................90
APPENDICES : ACCEPTANCE TESTING RESPONSE DATA ANALYSIS..................93
APPENDICES : RESPONSE FORM...................................................................................94

11
LIST OF FIGURES
Figure Page Number
Figure 2.1 Literature Review Framework...............................................................................6
Figure 2.2 Chalo......................................................................................................................9
Figure 2.3 GRTC...................................................................................................................10
Figure 2.4 Moovit................................................................................................................10
Figure 2.5 Ride Smart Bus....................................................................................................11
Figure 2.6 Mero Sajha...........................................................................................................11
Figure 3.1 Agile Model.........................................................................................................18
Figure 3. 2 Use Case Diagram..............................................................................................19

Figure 3.5 1 Registration and Login Activity Diagram 41


Figure 3.5 2 Activity Diagram of Viewing Routes List........................................................41
Figure 3.5 3 Activity Diagram of locating Live Location of Bus.........................................42
Figure 3.5 4 Activity Diagram of Fare Payment...................................................................43
Figure 3.5 5 Activity Diagram of Adding bus Details..........................................................44
Figure 3.5 6 Switch for updating and tracking real time location of bus by driver..............45
Figure 3.5 7 Activity diagram of user KYC verification and validation..............................46

Figure 3.6 1 Sequence Diagram of Registration and Login 47


Figure 3.6 2 Sequence Diagram of Live Bus Tracking and Fare Payment...........................48
Figure 3.6 3 Sequence Diagram on Route List Viewing......................................................49
Figure 3.6 4 Sequence Diagram on Adding buses Detail.....................................................50
Figure 3.6 5 Switch for updating and tracking real time location of bus by driver..............51
Figure 3.6 6 Sequence Diagram of User KYC verification and validation..........................52

Figure 4.2. 1 Driver Registration Page 37


Figure 4.2. 2 Driver Login Page...........................................................................................38
Figure 4.2. 3 Asking Location Permission............................................................................39
Figure 4.2. 4 Switch to allow or disallow the location updates............................................40
Figure 4.2. 5 Driver First Splash Page..................................................................................41
Figure 4.2. 6 User First Splash Page.....................................................................................42
Figure 4.2. 7 User Registration Page....................................................................................43
Figure 4.2. 8 User Login Page..............................................................................................44
Figure 4.2. 9 User Navigation Page......................................................................................45
Figure 4.2. 10 Live Location First View...............................................................................46
Figure 4.2. 11 Live Location of Bus Based On Route Selected...........................................47
Figure 4.2. 12 Live Location of Bus Based On Route Selected..........................................48
Figure 4.2. 13 Payment Dialogue Box First View................................................................49
Figure 4.2. 14 Payment Dialogue Box After Selecting Final Destination............................50
Figure 4.2. 15 Link To E-sewa Payment..............................................................................50
Figure 4.2. 16 E-sewa Payment Login Page.........................................................................51

12
Figure 4.2. 17 General Information Fill Up Form................................................................52
Figure 4.2. 18 Address Fill Up Form....................................................................................53
Figure 4.2. 19 Document Uploading Form...........................................................................54
Figure 4.2. 20 Profile View Navigation Drawer...................................................................55
Figure 4.2. 21 View Address Information............................................................................56
Figure 4.2. 22 View Uploaded Documents...........................................................................57
Figure 4.2. 23 Bus Stand List First view...............................................................................58
Figure 4.2. 24 Bus Stand List After Route Selection............................................................59

13
LIST OF TABLES
Table Page Number
Table 2.1 Feature comparison table of similar researched system..........................................................
Table 2.2 Feature comparison table of similar existing system...............................................................

14
LIST OF ABBREVIATIONS
GPS---Global Positioning System
A-GPS---Assisted Global Positioning System
GNSS---Global navigation satellite system
KYC---Know Your Customer
GRTC----Greater Richmond Transit Company
IIUC---Islamic University Chittagong Trust
API---Application Programming Interface
GUI---Graphical User Interface
UML---Unified Modelling Language
GSM---Global System for Mobile Communication
CDMA---Code Division Multiple Access
LTE---Long Term Evolution

15
CHAPTER 1

INTRODUCTION

1.1 Introduction

Technology advancement has made it possible for common people to get access to almost
every kind of information. It has made the lifestyle of people to be more qualitative by
integrating various tech components into one platform. This project also integrates different
tech-related components like GPS, API, and digital payment in one platform i.e., mobile
application to optimize all the public bus route information and digitalizing the bus fare
payment system to make it cashless, based on user i.e., partial fare payer and full fare
payer.

In today’s world, almost every person possesses a smartphone (According to the website
Statista the number of operating mobile devices worldwide is 15 billion as of 2021)
(Number of Mobile Devices Worldwide 2020-2025 | Statista, n.d.).Smartphone has various
features out of the GPS is also one of them. The main component of this project is GPS that
plays a vital role in locating the public buses on the routes mentioned by the user. After
locating the bus, the system will use the different APIs provided by Google maps to make
the system interactive and informative for any kind of user.

Nepal being a lower-middle economies(WB, 2019) country most of the people are not well
qualified with the income condition to possess a private bus. Likewise, in recent years, the
cost of bus oil has also been increasing so to travel with private buses in big cities like
Kathmandu middle-class people have to think twice. (Oil Price Hike in Nepal: Some
Critical Observations - MyRepublica - The New York Times Partner, Latest News of Nepal
in English, Latest News Articles, n.d.) Thus, public transportation can be the best option for
them to travel. This application is designed for the public transportation user making the
navigation system optimized, informative, easily accessible, and estimative.

1.2 Problem Statement


1. The live location tracking accuracy of a stand-alone GPS tracker is
comparatively low.(Zandbergen & Barbeau, 2011)
2. Most of the bus tracking application don’t track public bus on the basis of their
daily riding routes.
3. Students, old age people and differently able people aren’t verified and
categorized as partial fare payer.

16
1.3 Objective

1. To use the mobile-based GPS to obtain high accuracy on live location tracking.
2. To design public bus tracking application based on their daily riding routes.
3. To verify students, old age people and differently able people through (Know
Your Customer) KYC and categorized them as partial fare payer.
4. To facilitate the user with the easy route-specific navigation system.
5. To improve the accessibility of a user-based public bus fare payment system.

1.4 Scope

1.4.1 User Scope


1. Users will be able to get information about the public bus routes and bus stands that
are stored in the application.
2. Users will be able to locate the real-time location of public bus riding on the
particular route with the help of mobile-based GPS(from the mobile devices carried
by the bus driver) and map view library.
3. Users will be able to create favorite lists of public bus route .
4. Users will be able to pay their bus fare through the integrated wallet present in the
application.
5. Users will be able to select their category as full fare payer or partial fare payer by
providing their relevant information through KYC which will be verified by admin.

1.4.2 System Scope

1. The system will provide the facility to create two types of accounts one for the
transportation services user and another for a provider.
2. The system will show real-time location of bus with the help of transportation
service provider or driver mobile-based GPS.
3. The system will allow the user to create their favorite lists of bus routes.
4. The system will transfer the bus fare after the confirmation is made from the
transportation service user to the service provider.
5. The system will categorize and verify both account holders i.e., transportation
services user and another for the service provider through the ( Know Your
Customer )KYC.

1.4.3 Constraints

1. The service user and provider phone should have internet access to use the system.
2. The service user and provider phone should be connected to GPS.
3. The user and provider must verify their accounts through the (Know Your
Customer) KYC form.

17
4. The application must perform real-time transactions of digital payment from the
user account to the service provider account according to the distance traveled.

1.5 Methodology

1.5.1 Mobile GPS or Assisted GPS (A-GPS)

It gathers data from nearby cell towers and improves the performance of regular
GPS on cellular-connected mobile devices to provide location and time information
to any software that needs to use it.

Today's smartphones, which provide navigational information based on information


determined from network stations by GSM, CDMA, or LTE technology, uses A-
GPS technology to provide strong positional information, eliminating the
requirement for the information to be downloaded by satellite. Similarly, GPS
satellite transmission does not penetrate walls very well, resulting in poor or
unavailability of GPS signals, while A-GPS relies on proximity to cellular towers to
calculate position. Because of these, A-GPS serves as one of the most important
tools in tracking and knowing the actual location of buses in this application.(How
Assisted GPS Works in Cellphones, n.d.)

1.5.2 Digital Wallet integration

Integration of digital wallets is done via APIs. Digital wallet vendors provide API
and authorization, which then is utilize to integrate the digital wallet into the
application through the API features.

This integrated digital wallet is designed to facilitate the application user with easy
fare payment based on the user category and their travelling distance. The public
transportation user and the service provider can perform different task related to the
payment. Transportation user can deposit money, ask for refund as well as view
their transactions details . Likewise, transportation service provider can withdraw
money to their respective verified bank accounts, and view the payment history
made by the traveler.

1.5.3 Google Maps

It is a web mapping platform and consumer application offered by Google which


offers satellite imagery, aerial photography, real-time traffic conditions, route
planning for traveling. It offers an API that allows maps to be embedded on third-

18
party websites and offers a locator for businesses and other organizations in
numerous countries around the world. (API, 2017)

In this application, Google Maps API provide the facility of returning the location
of device without relying on stand-alone GPS devices, using the built GPS of
mobile phone or geospatial data from cell towers. It helps to determine the routes, a
bus travels embedding simple map images on the application.

1.5.6 Firebase as Real-Time Database


It is a database system that uses real-time processing to handle whose state is
constantly changing. Real-Time databases lie in the temporal characteristics of the
stored data. Since this application is based on real-time tracking data of bus location
from current user position on selected routes, Firebase Real-time database
synchronized all the data in Real-time to every connected client allowing them to
automatically receive updates with the newest data.

1.6. Development Tools

1.6.1 Python

Python is an interpreted, object-oriented, high-level programming language with


dynamic semantics. Its high-level built-in data structures, combined with dynamic
typing and dynamic binding, make it used for Rapid Application Development, and
as a scripting or glue language to connect existing components. (Python Software
Foundation, 2017)

1.6.2. Kivy

Kivy is a graphical user interface open-source Python library that will allow to
develop multi-platform applications on Windows, mac-Os, Android, iOS, Linux,
and Raspberry-Pi. (Kivy Tutorial - GeeksforGeeks, n.d.). It means this application
will be platform independent. Due to its own intermediate language called Kv
language, GUI widgets used in this application can be easily configured and
customized.

1.6.2. Firebase

The Firebase Real-time Database is cloud-hosted. Data is stored as JSON and


synchronized in real-time to every connected client. As the propose project will
build as a cross-platform apps so firebase allows to share one Real-time Database
instance and automatically receive updates with the newest data and also assist to

19
define how data should be structured and when data can be read from or written to,
who has access to what data. (Firebase,n.d.)

1.6.3 Visual Studio Code

Visual Studio Code is a streamlined code editor with support for development
operations like debugging, task running, and version control. (Microsoft,2020).

In this project this code editor is best tool because it is free to use and highly
compatible with using python language.

1.6.4 Google Drive


Google Drive is a cloud-based storage solution that will be used to save files online
and access them anywhere from any smartphone, tablet, or computer and it make
easy to edit and collaborate on files.(Nolledo, M,2020).

1.7 Outline
The proposed project consists of six chapters to provide a descriptive overview of all the
tasks and activities done to achieve the goal in a managed and scientific manner.
A brief description of each chapter is given below :
Introduction consists of an introductory view of the proposed project with the definition of
problems and the solution of the problem are defined as objective. There is a short
description of the methodology along with the technology and tools used for the
development of this project.
Literature Review deals with the analysis and comparison of the existing similar systems
and proposed systems. Review of different research, theory, concepts, ideology, and
opinions related to the title is done with valid proof of citations.
Methodology shows the justification of the selected methodology. In simple terms, it shows
the procedure and techniques used in the software development life cycle. It displays
different use case diagrams: its description, activity diagram, class diagram, sequence
diagram.

1.8 Conclusion
Introduction, problem statement, objective, project scope, methodology used in the project
are the main component of this section. The introduction part deals with a short
introduction of the project, motivation in doing the project, and a background statement
related to the project. The problem statement states the cons that the existing system has
which have been addressed in the objective section. Likewise, in the scope section, there is
a description of what the user and system will be able to do. And at last, the methodology
section defines different types of technology and systems that have been used to make this
project-specific, measurable, attainable, relevant, and time-bound.

20
CHAPTER 2

LITERATURE REVIEW

2.1 Introduction
A brief study of application’s history, comparison between the proposed and other existing
systems, analysis of relevant systems, their features as well as novel key features of the
proposed application is one of the main contexts of this chapter.
The first portion presents a background study that explains the real-time tracking system for
buses with critical review and analysis of related research, concepts, and theory.
And the comparison portion shows the tabular differentiation between the proposed system
and the other similar system and also demonstrates the new unique feature that is present in
the proposed system.

Figure 2.1 Literature Review Framework

21
2.2 Background study
Bus tracking application is a software that integrates automatic bus location in individual
buses with software that collects fleet data to provide a complete picture of bus locations.
GPS is one of the most commonly used tracking technologies in modern buses.(bus
Tracking System, n.d.)
GPS tracking uses the GNSS network which incorporates a range of satellites that uses
microwave signals that are transmitted to GPS devices to give information on location ,bus
speed , time and direction . Thus, a GPS tracking system provides both real-time and
historic navigation data on any kind of circumstances. In an active GPS tracking, real-time
system information is automatically sent to a central tracking portal in real-time scenario.
(Dahad et al., n.d.)
Current smartphones offer the ability of powerful navigation information by the help of A-
GPS that determines the information from network stations(BTS/NodeB/eNodeB) based on
GSM (Global System for Mobile Communication), CDMA (Code Division Multiple
Access) or LTE (Long Term Evolution) technology employed in the mobile terminal.(GPS
Vs A-GPS | Difference Between GPS and GPS-A, n.d.). A-GPS speeds up signal
acquisition by removing other areas of the search field. Rather than forcing the phone to
download the ephemeris data directly from the slower satellite link, one approach involves
rebroadcasting the data from the base station directly to the phone. Furthermore, this
ephemeris data can be forecasted up to several hours in advance, eliminating the need for
the base station to wait for the satellite's transmission. When attempting to obtain an initial
fix, the receiver relies on the satellite position, atmospheric interference, and the resulting
Doppler effect to minimize the number of likely frequencies it must seek.(Zandbergen &
Barbeau, 2011)

2.3 Research of similar system

2.3.1 A Mobile Application for Bus Information System and Location


Tracking using Client-Server Technology

This project is an android based mobile application developed on the bus


information system in Pune that gives information about buses, bus numbers as well
as bus routes both online and offline. This application uses location-based services
to track the current location of the bus and estimate the remaining time to reach the
destination using client-server technology, as well as GPS is used to display
required maps. The main problem solved by this application is providing complete
information on public transport to the user through a user-friendly, bug-free
application.(Sardey, Y., Deshmukh, P., Mandlik, P., Shelar, S., & Nerkar, M., 2014)

22
2.3.2 Real-Time Web-Based Bus Tracking System
This project is a web-based tracking system designed to solve the drawback of the
current public transportation system by handling all the data like the current location
of the bus, management of buses, and its issues. The system uses technologies like
GPS, GPRS, for development purposes. There are three architecture models
proposed by the system. They are bus module i.e., tracking of the bus by installing
special device or GPS in the bus, central control unit i.e., admin module that
uploads all the static information about the bus, client-side application i.e.,
interactive web-based application which services the various functions of the system
to remote users.
(Kumbhar, M., Survase, M., Mastud, P., & Salunke, A. ,2016)

2.3.3 BusMe: Automatic Bus Localization System and Route Registration


This project is aimed to design, and build a bus localization system with automatic
route register and real-time tracking, accessible through the mobile application.
Amazon AWS as cloud back-end to unite GPS transmitted data from bus model to
Android application has been used. The bus consisted of Raspberry Pi using a GPS
receiver and HSDPA module for data transmission. Android Application acts as an
interface for transmitting data that are plotted in real-time with the help of Google
Maps allowing users to know the desired bus and its route information. (Miranda,
W. M., De Mendonça, R. T. R., Da Silva, A. A., De Lima Curvello, A. M., De
Souza, F. L. D. S., & Da Silva, H. J., 2017)

2.3.4 Design and Developing Real-Time Interactive IIUC Bus Tracking


System
This project is a Real-time university Bus Tracking Application on Android that
enables students, teachers, and staff to find out the location of the bus so they won’t
miss the bus and also for the driver to find out the pickup location of the students.
GPS had been used to track specific bus and client-server technology to help both
passenger and bus drivers make communication with each other by tracking real-
time data on the movement of the buses. There were three users i.e., administration
as the main maintainer of the system, student and teacher as the user who can log in
using username and password and view route and location of drivers as well as poke
system to check the availability of sit, the driver who started the application by
enabling the bus tracking as well as report a situation if an accident occurs or bus is
out of service to the admin in IIUC bus tracking application.( Hoque, F., Chakma,
R., Profile, S., Mahtab, S. S., Akter, R., & Ahmed, S. S. ,n.d.)

23
2.3.5 Real-Time Bus Position and Time Monitoring System

This project state that the movement of buses is affected by unusual conditions such
as traffic congestion, unexpected delays, and randomness in passenger demand,
irregular bus dispatch, etc. due to which passengers are suffering and are waiting for
their bus on their bus stops for a long time as they do not have real-time information
of the public buses. Thus, this paper focuses on the implementation of a Real-time
Bus Tracking system by installing GPS devices on the city buses which will
transmit the current location on GPS Receiver and the receiver will interface with
the computer and interface driver will autosave data into .txt file which will
continue till GPS module is working. From there, the application will retrieve data
and store it on a web server, and display real-time information about the bus.
( Pandey, V., 2015)

2.4 Common features of the existing system

2.4.1 Live tracking of bus


Most of the applications use GPS devices in buses and stream their locations on the
user screen so that the users can view the exact location of every bus and know what
time it reaches the stop.

Figure 2.2 Chalo

Source : https://play.google.com/store/apps/details?id=app.zophop&hl=en

2.4.2 Trip Planning


Just entering the destination most of the applications instantly show all the options
available related to the best and fastest routes.

24
Figure 2.3 GRTC

Source :https://play.google.com/store/apps/details?id=com.alesig.grtc&hl=en&gl=US

2.4.3 Notifications
Existing applications send users some service bulletin notifications to keep updated
about the issues or changes that occurred due to the bus being detoured.

Figure 2.4 Moovit

Source: https://play.google.com/store/apps/details?id=com.tranzmate&hl=en&gl=US

2.4.4 Favorites
By becoming a member of the application user can have quick access to their
favorite bus they have used most often.

25
Figure 2.5 Ride Smart Bus

Source : https://play.google.com/store/apps/details?id=com.gw.smart&hl=en&gl=US

2.4.5 Nearby bus stops


The existing application shows either the list of the bus stops of the particular bus or
the nearest stop from the user’s current location.

Figure 2.6 Mero Sajha

Source : https://play.google.com/store/apps/n&gl=USdetails?id=ramlaxman.gpsnepal&hl=e

26
2.5 Research on an existing similar application

2.5.1 Chalo
It is an Indian app that tracks buses live and provides mobile ticketing solutions for
bus tickets and bus passes. This app has ended the waiting time period at the bus
stops. It is currently available in more than 25 cities of India and its features vary
from place to place.
This application has a real-time proprietary algorithm that processes millions of data
points to calculate the live arrival time of the bus. It has a Chalo Super Saver plan
where users can save money on their trip as they entitle a specific number of trips
within its validity period for a much lower cost per trip. One of the main advantages
of this application is it works offline too where users can check bus schedules (with
platform numbers ). It also locates the closest bus stops, ferry points, and metro
/train stations near the user’s current location. Similarly, mobile tickets and bus pass
purchased from this application can be shown to the conductors making the travel
experience hassle-free and safer.(Chalo - Live Bus Tracking App - Google Play ,
n.d.)

2.5.2 Mero Sajha


It is a simple app used to track the real-time bus location of the Sajha Bus in
different routes in Nepal. It gives an alert message when the bus reaches the desired
destination point and measures the distance between the nearest bus and the user.
(Mero Sajha - Google Play ,n.d.)

2.5.3 GRTC

GRTC is an official app providing comprehensive real-time information on transit


services in the Greater Richmond area right in the palm of the user’s hand. This
application not only accesses real-time information but also allows users to see the
location on a map so that they can visually track the bus as it approaches. It
provides the facility of viewing fare information along with the submission of
complaints, comments, and suggestions regarding the transit experience. The
application has clearly mentioned that their system will no longer be able to predict
accurate arrival times if the bus goes off its regular route. Thus, there is a service for
notification alerts.(GRTC - Apps on Google Play, n.d.)

2.5.4 Ride Smart Bus

It is described as an easy-to-use mobile app where riders can get schedules, bus
trackers, and other features at their fingertips. It has tools called routes to get a
listing of SMART bus routes and published times. There is a feature called a tracker
that allows users to get the real-time bus information of their stop. By becoming a
27
MySMART member, users can have quick access to all favorite bus routes and
stops. Likewise, if users want to know where their trips begin, where they need to
go, and what time they need to travel, the tools trip planner is there for them in this
application.(Ride Smart Bus - Apps on Google Play, n.d.)

2.5.5 Moovit

It is one app for all urban mobility rides whether user rides the train, subway, bus
light rail, ferry or metro or scooters, bikes or even ride-sharing like Uber, Lyft all
the information are provided in a one-stop-shop journey experience to help them get
from one point to another point in the efficient and easiest manner. It guides more
than 930 million users in over 3400 cities all around the world. It was also named as
best apps of the year in 2016 and 2017 by the Google Play and App stores
respectively.

Users can plan trips by step-by-step directions of the optimal route bus, train, metro,
bike, scooter or combination of them and even pay for the ride and find critical
alerts and service disruption on the favorite line. This application uses augmented
reality to locate bus or train stops with a ‘way finder’. The real-time alert tools alert
about any issues such as emergency or unexpected disruption, delays, traffic jams,
new construction ahead of time. Users can report issues found with stations, line
services, and schedules with the help of the User report system so that the
application can inform all nearby riders about what’s going on in their area.
(Moovit: All Local Transit & Mobility Options - Apps on Google Play, n.d.)

2.6 Comparison Table


Table 2.1 Feature comparison table of similar researched system

Features A Mobile Real-Time BusMe IIUC Bus Real-Time Proposed


application Web- Tracking Bus System
for BIS and Based Bus position
Location Tracking and Time
Tracking System Monitoring
System

View Yes Yes Yes Yes Yes Yes


Current
user
Location

Partial Fare No No No No No Yes


Payer-based

28
Digital
Payment

Stand Yes Yes Yes Yes Yes Mobile-


Alone Based GPS
tracking Tracking
devices

Live Yes Yes Yes Yes Yes Yes


Bus
Tracking

Route- No No No No No Yes
based
Live Bus
Tracking

View Bus No No Yes No No Yes


Stop

User Profile Yes Yes Yes Yes Yes Yes

Driver No No No No No Yes
Profile

Look No No Yes Yes No yes


route
details

Favorite No No No No No Yes
Routes

Table 2.2 Feature comparison table of similar existing system

Features Chalo App Mero GRTC Ride Smart Moovit Proposed


Sajha App Bus System

View Yes Yes Yes Yes Yes Yes

29
Current
user
Location

Partial Fare No No No No No Yes


Payer-based
Digital
Payment

Digital Mobile No No No Yes Yes


payment ticketing

Live Yes Yes Yes Yes Yes Yes


Bus
Tracking

Route- No No No No No Yes
based
Live Bus
Tracking

View Yes No Yes Yes Yes Yes


Bus Stop

User Profile Yes Yes Yes Yes Yes Yes

Driver No No No No No Yes
Profile

Look Yes Yes Yes Yes Yes yes


bus route
details

Favorite Yes No Yes Yes Yes Yes


Routes

2.7 Conclusion
Different research systems based on the bus tracking system, as well as different
applications’ features have been discussed and shown in the pictorial form too. The last
30
portion consists of the tabular feature differentiation of all the existing applications and the
new proposed system.
From the study of the existing system and research of different published papers, the insight
and knowledge acquired are: description of previous system , their lacking functionality
and certain issue. Some of the systems were designed with the common motives thus ,they
were using same features and functionality but serving in different fields.

31
CHPATER 3

METHODOLOGY

3.1 Introduction
Using an agile model as a software development life cycle, this chapter describes in detail
how to build and assemble the proposed system. Besides that, the system uses four different
types of unified modeling language (UML) diagrams. First, there is a use case diagram,
which clarifies the execution characteristics of the actor and agent. Second, to facilitate
iteration, selection, and concurrency, an activity diagram displays a sequence activity and
action workflow. On the other hand, a sequence diagram shows the relationship between an
item and its location in time. In addition, there will be a class diagram showing the system's
design by explaining the class and attribute of the system, as well as the relation and
activity among the objects, which will provide clear modeling by translating the source
code into diagrams.

3.2 Agile Model


Agile is referred as continuous iterative software development approached, breaks tasks
into smaller steps with continual planning, learning , improvement, team collaboration,
evolutionary development and early delivery.
The reasons to use agile methodology on this application are:
1. Since Agile approaches are adaptable, rapid, lean, productive, and dependable, they
have replaced traditional waterfall methodologies.
2. Agile software development implements best practices to produce high-quality
software in a short amount of time.
3. Using an agile approach requires a systematic, ongoing audit, which enhances
coordination and improves leadership skills.
4. It has been proven in a competitive world that agile approaches are extremely
effective at responding to business change.

32
Figure 3.1 Agile Model

Phases of Agile model

 Requirement analysis :
In this phase various initial prerequisite: analyzing existing comparable,
distinguishing the issues of current system etc. has been documented before the
execution of planning of this application. After that objective were defined and
different technologies and techniques with necessary development tools were
gathered, analyzed proposed to meet the objective of application development .
 Design
In this phase, the system documents are drafted according to the requirements
specifications and serve as the basis for the next phase of software development
cycle. There are two design document. There are two design documents. First is
referred to as high-level design, which includes a description of each module, its
functional outline, dependencies, and interface relationships, while second is
referred to as low-level design, which encompasses the functionality of the
modules, their inputs and outputs, database table, and interface details etc.
 Development
This phase is the foundation of the entire process where the development of an
application begins. An application is set up so that code can be written and design
documents can be converted into fully functional applications. 
 Quality Assurance
In this phase, the system is tested based on its primary goal for bugs/defects till the
program is bug-free, stable, and meets the system's requirements.
 Deployment :

33
In this phase, based on feedback from the quality assurance process, the final
product is delivered for the associated user to experience the capabilities of the
application and check for deployment issues, if any.

3.3 Use Case Diagram

Figure 3. 2 Use Case Diagram

34
3.4 Written Use Case

3.4.1 User Registration

Use Case ID: UC-1

Use Case Name Registration

Actors:  Public transportation user

Postcondition

Main Success Scenario

 Users need fill form providing valid email address and contact number.

Exceptions
 Invalid Personal details submission

3.4.2 Validation

Use Case ID: UC-2

Use Case Name Validation

Actors: Application Admin

Precondition Registration must be completed

Postcondition  Access to login as a verified user


 Access to create bus profile for
public transportation service

Main Success Scenario

 Admin should verify all the details and document submitted during

35
registration
 Admin should provide notifications any missing proof and problems
regarding the validation and verifications.
 Admin verifies all the buses profiles details and update the bus
information on its particular selected routes.

Exceptions

3.4.3 Login
Table 3.1 Written Use Case of Login

Use Case ID: UC-3

Use Case Name Login

Actors:  Public transportation user


 Public transportation service
provider

Precondition Validation must be done

Postcondition Access to all the features of the


application

Main Success Scenario

 Public transportation user and service provider insets email id,


username ,phone number in the email or username segment
 Public transportation user and service provider insert password in the
password segment
 Public transportation user and service provider clicks on login button.

Exceptions
 Password is incorrect
 Password is blank

36
3.4.4 Look Routes List
Table 3.2 Written Use Case of Search and Look Routes

Use Case ID: UC-4

Use Case Name Look Routes List

Actors: Public Transportation users

Precondition User must have signed in

Main Success Scenario

 User can look for the routes list and list of bus stops.

Exceptions

3.4.5 Live Bus Location


Table 3.3 Written Use Case of Live Bus Location

Use Case ID: UC-5

Use Case Name Live Bus Location

Actors:  Public Transportation users


 Public Transportation Service
provider

Precondition Public Transportation user and service


provider must have signed in

Main Success Scenario

 Public Transportation user and service provider can view the bus location
with help of Google maps.
 Public Transportation user and service provider can see the bus details
like bus number.

Exceptions

37
3.4.6 Fare Payment
Table 3.4 Written Use Case of Closed Wallet

Use Case ID: UC-6

Use Case Name Closed wallet

Actors:  Public Transportation user


 Public Transportation service
provider

Precondition Public Transportation user and service


provider must have signed in

Main Success Scenario

 Public Transportation user can make payment based on the distance


travelled
 Public Transportation user can get fare discount if they have specified
them in the category for discounted during the registration .
 Public Transportation user and service provider can view their transaction
details
 Public Transportation user and service provider make a request to deposit
and refund money to their respective bank accounts .

Exceptions

3.4.7 Driver Registration and add buses Details


Table 3.5 Written Use Case of Add buses Details

Use Case ID: UC-8

Use Case Name Add buses Details

Actors: Public Transportation service provider

Precondition

Postcondition Admin verifies the bus information

Main Success Scenario

38
 Public Transportation service provider enters the basic details like contact
number, email and password for registrations.
 Public Transportation service provider makes its bus profile
 Public Transportation service provider inserts bus number, selects its
routes.

Exceptions

3.4.7 Update Bus Live Location


Table 3.7 Written Use Case of Updating location

Use Case ID: UC-8

Use Case Name Add buses Details

Actors: Public Transportation service provider

Precondition  Must be registered as driver in the


given bus route with valid bus
number

Postcondition

Main Success Scenario

 Public Transportation service provider switch on/off the for tracking live
location of bus

Exceptions

39
3.5 Activity Diagram

3.5.1 User Registration and Login

40
Figure 3.5 1 Registration and Login Activity Diagram

This is the activity diagram of login for public transportation users and service provider.
This diagram shows the activity to register the public transportation users and service
provider in the system the verification and validation of KYC form.

3.5.2 Look Routes List

Figure 3.5 2 Activity Diagram of Viewing Routes List

This is the activity diagram that shows activity to search and view the location name based
on the routes defined by the government.

41
3.5.3 Live Bus Location

Figure 3.5 3 Activity Diagram of locating Live Location of Bus

This is the activity diagram that show the activity to locate the live location of bus and
show the details like bus number, arrival time etc. about the bus based on the routes user
have selected.

42
3.5.4 Fare Payment

Figure 3.5 4 Activity Diagram of Fare Payment

This is the activity diagram that show the activity of paying bus fare based on the distance
traveling and user category i.e., fare discounted user or not .

43
3.5.5 Driver Registration, Adding bus Details and Login

Figure 3.5 5 Activity Diagram of Adding bus Details

44
This is the activity diagram that shows activity to allow public transportation service
provider to add necessary detail information about their buses , select the routes on which
that bus operates.

3.5.6 Updating and Tracking Bus Live Location

Figure 3.5 6 Switch for updating and tracking real time location of bus by driver
This is the activity diagram of home screen interface for service provider app where driver
can either turn on or off the live location tracking switch to get the real-time latitude and
longitude of the device used for tracking. When the tracking switch is on an automatic and
continuous thread program is executed which assist on updating and storing real-time
location in real-time firebase at 5 second time interval.

45
3.5.7 User KYC Verification and Validation

Figure 3.5 7 Activity diagram of user KYC verification and validation


This activity diagram shows collection and storing users KYC data in real-time firebase,
how admin is responsible for verification and validation, and in what way user know that
their KYC has been approved.
46
3.6 Sequence Diagram

3.6.1 User Registration and Login

Figure 3.6 1 Sequence Diagram of Registration and Login


47
The above figure describes the sequential order to register the public transportation users
and service provider in the system the verification and validation of KYC form.

3.6.2 Live Bus Tracking and fare payment

Figure 3.6 2 Sequence Diagram of Live Bus Tracking and Fare Payment
This figure describes the sequence which is used to locate the live location of bus and show
the details like bus number, arrival time etc. about the bus based on the routes user have
selected.

48
3.6.3 View Route List

Figure 3.6 3 Sequence Diagram on Route List Viewing

This above figure describes the sequential order to search and view the location name based
on the routes defined by the government.

49
3.6.4 Driver Registration and Adding bus Details

Figure 3.6 4 Sequence Diagram on Adding buses Detail

The above figure describes the sequential order to allow public transportation service
provider to add necessary detail information about their buses , select the routes on which
that bus operates.

3.6.5 Updating and Tracking Bus Live Tracking

50
Figure 3.6 5 Switch for updating and tracking real time location of bus by driver
This is the sequence diagram of home screen interface for service provider app where
driver can either turn on or off the live location tracking switch to get the real-time latitude
and longitude of the device used for tracking. When the tracking switch is on an automatic
and continuous thread program is executed which assist on updating and storing real-time
location in real-time firebase at 5 second time interval.

3.6.6 User KYC Verification and Validation

51
Figure 3.6 6 Sequence Diagram of User KYC verification and validation
The above figure describes sequential order of collecting and storing the user’s KYC data,
the admin will later verify and validate the data and execute the command to show the
verified icon on the user’s interface and allow them to view their KYC data and in case of
invalidation admin executes the KYC data deletion command and provide the access to re-
enter the valid KYC details.

52
3.7 Class Diagram

Figure 3.7 1 Class Diagram


The class diagram above depicts the system's static building blocks, which include classes,
interfaces, and other relationships. There are seven classes in the figure above, each with its
own set of properties and functions.

3.8 Conclusion
Agile model is used as software development approach due its flexibility, productivity,
iterative development , clear documentation. The UML design depicted the process to
create this system, activity diagram illustrated the behavioral diagram to picture the work
process of sequence activity. Likewise, sequence diagram shows an interaction diagram to
depict the relationship between the time sequence and the object. The class diagram
provide view on system's design by explaining the class and attribute of the system, as well
as the relation and activity among the objects to provide clear modeling by translating the
source code into diagrams. The project is based on real-time public bus tacking and

53
locating, google maps API has been used to provide the clear visual of current bus location
with real-time database connection to store the user and bus information.

CHAPTER 4

INTERFACE

4.1 Introduction
The actions and activities that users can perform on this system will have a range of user
interfaces. With a brief explanation of each functionality, this chapter lists all the actions an
end-user can take within the system. It effectively discusses every aspect of functionality in
detail. The entire system is displayed from the perspective of the end user who wants to
know the real-time bus location based on the routes provided and categorized themselves as
a partial or full fare payer. The system will be divided into pages, with instructions on how
to use each page's features. This system offers a user-friendly interface for using real-time
bus tracking and fare payment.

4.2 Interface Explained

4.2.1 Driver Registration


This is the registration form page for the driver where they can enter and store their
personal details (like name and contact number ) and bus details (like bus number and
select their bus routes ).

54
Route list drop down
menu

Toasting selected bus


route name

Figure 4.2. 1 Driver Registration Page

4.2.2 Driver Login


This is login page that give access to the app where driver have to enter registered contact
number and password.

55
Figure 4.2. 2 Driver Login Page

4.2.3 Location Permission


To Track the location of bus, the app user i.e., driver most allow the app to access location
service provided by the smartphone. So, this is the interface that ask permission to access
the location information.

56
Figure 4.2. 3 Asking Location Permission

4.2.4 Home Page :


In this interface driver can use the switch either to turn on or turn off the real time location
tracking functionalities and also can use the other accurate tracking functionalities like A-
GPS present in the smartphone.

57
Live Latitude of bus

Longitude and latitude Live Longitude of bus


tracking accuracy

Location on/off switch

Toasting selected login


success information

Figure 4.2. 4 Switch to allow or disallow the location updates

4.2.5 Driver Landing Page


This is the landing page for driver application where user can either register to create new
account or login into existed account.

58
Figure 4.2. 5 Driver First Splash Page

4.2.6. User Landing Page


This is the landing page for user application where user can either register to create new
account or login into existed account.

59
Figure 4.2. 6 User First Splash Page

4.2.7 User Registration


This is the registration form page for the driver where they can enter and store their
personal details (like name and contact number ) and bus details (like bus number and
select their bus routes ).

60
Figure 4.2. 7 User Registration Page

4.2.8 User Login


This is login page that give access to the app where driver have to enter registered contact
number and password.

61
Figure 4.2. 8 User Login Page

4.2.9 Home page


This page acts as the main navigation system to access the different functionalities of the
application.

62
KYC verification and
user information section

Navigation menu in
home screen

Figure 4.2. 9 User Navigation Page

4.2.10 Live Location


This interface is the main functionalities of the application where user can see the live
location of the bus based on their routes. Here user can select their desired bus routes and
the live location of bus present in that route is show on the map.

63
Remove bus marker on
that route
List of the public bus
route

Figure 4.2. 10 Live Location First View

64
On Clicking the marker
Dialog box containing
various info is opened
Bus Marker based on
the route

Figure 4.2. 11 Live Location of Bus Based on Route Selected

65
Two Bus Marker based
on that route

Figure 4.2. 12 Live Location of Bus Based On Route Selected

4.2.11 Payment Initiation Dialogue Box


In this interface user sees the payment dialogue box that has initial bus location, user
category and select the destination bus stand. Based on distance between initial bus location
and final destination, and user category total amount of bus fare is calculate as shown in the
fare amount section.

66
Fare Amount without
entering destination

Figure 4.2. 13 Payment Dialogue Box First View

67
Initial location of bus
when the bus marker is
clicked

Fare Amount after


entering destination

Open E-sewa payment


conformation page on
browser

Figure 4.2. 14 Payment Dialogue Box After Selecting Final Destination

4.2.12 Digital Payment Integration


This interface shows the integration one of the finest digital wallet name E-sewa for paying
the final amount of fare.

Figure 4.2. 15 Link To E-sewa Payment

68
Figure 4.2. 16 E-sewa Payment Login Page
See total fare amount to
be paid Enter valid e-sewa id
and password for the
payment
4.2.13 User KYC Verification Form
This is the form section to that gather the KYC information of user to verify and category
user either they belong to full fare or partial fare paying category. General personal details,
address details , general identity verification card (like citizenship, driving license) as well
if user belong to category like student, old age or differently able person then document
proof of that identity are collected through this interface.

69
General information
storing tab

Select the expiry date of


identity card for partial
fare payer user

Select User category

Figure 4.2. 17 General Information Fill Up Form

70
Address information
storing tab

Figure 4.2. 18 Address Fill Up Form

71
Picking profile picture
for verification

Picking Citizenship for


verification

Picking fare discount


identity card for
verification

Figure 4.2. 19 Document Uploading Form

4.2.14 View User KYC Details


This section allows user to have a sight whether their KYC details has been verified or not
as well as view their general KYC information.

72
View profile picture
after verification

User Verified Symbol

View User KYC details

Logout from the


application

Figure 4.2. 20 Profile View Navigation Drawer

73
Viewing User Address
information

Figure 4.2. 21 View Address Information

74
Viewing Valid
documentation

Figure 4.2. 22 View Uploaded Documents

4.2.15 View Bus Stand and Routes


User can view the list of bus stand present on the particular available bus routes.

75
Rout list Drop down
menu
Remove the list of bus
stand from the screen

Figure 4.2. 23 Bus Stand List First view

76
Selecting route present
on that drop down menu

List of bus stand on that


route

Figure 4.2. 24 Bus Stand List After Route Selection

4.3 Conclusion
In conclusion, overall interface has achieved the stated goals and criteria outline in chapter
one. Every interface is created using standard mobile material design principle with title tab
design, validation testing, user’s reviews.

77
CHAPTER 5

TESTING AND RESULT

5.1 Introduction

Software testing is important because it enables for the early detection and correction of
any bugs or flaws in the software before the software product is released. Software testing
aids in bug prevention, performance enhancement, cost reduction, and client satisfaction. It
makes it possible to comprehend the risk associated with the use of software. Properly
tested software solutions maintain dependability, stability, and good performance, which
also results in time investment, cost-productivity, and client dependability.

Unit Testing
1. During the project's comprehensive design and implementation phase, unit testing is
frequently used. The project's defects and flaws were to be found using the unit test.
2. By fixing faults early in the development cycle, units help to lower expenses.
3. Unit testing is the process of testing individual components or modules of a system. In
this project, unit testing is done on eight modules, including the Login module, the
Registration module, the Live Location Tracking module, the View Route Based Bus
Location Module, and the KYC Verification module.

Integration Testing
1. The goal of testing is to identify interface and system faults.
2. It finds the problems on how integrated units interacts.
3. Integration testing is viewed as being similar to design testing. Therefore, any issues
found are fixed in the integrated testing system for the testing phases.

User Acceptance Testing


1. The last phase of any software development life-cycle is the user acceptance test.
2. User Acceptance Testing (UAT) is a type of test that is carried out under the direction
of the end user or the developer to validate or certify the software system before it is
introduced into a real-world setting.
3. Before the system can be completely commissioned for users, the user will be involved
in the analysis of acceptability and usability and the identification of areas that may
require adjustment.

78
5.2 Decision Table

5.2.1 User Registration module

Condition Action Result


Enter all field correctly Display “Successfully Pass
register”
Blank any one field Display “Enter all details” Pass

Invalid email and mobile Display “Authentication Pass


number without country Registration Error”
code
Valid Email address and Redirect to login page pass
mobile with country code
On pressing Proceed button Display “Verification Link fail
and entering all field Sent”
correct
On pressing Proceed button Send verification link to pass
and entering all field given valid email address
correct

Figure 5.2.1 1 When Entry fields are empty

79
Figure 5.2.1 2 Contact Number with no country code

Figure 5.2.1 3 When all credentials are valid

80
Figure 5.2.1 4 Email Verification Link

Figure 5.2.1 5 Email Verified Notification

5.2.2 User Login module

Condition Action Result

Login into system with valid Successfully redirect to home Pass


username and password. screen

81
Login into system with blank Display “please fill out the Pass
username. field”

Login into system with blank Display “please fill out the Pass
password. field”

Login into system with wrong Display “Credentials Not Pass


username. Matched.”

Login into system with wrong Display “Credentials Not pass


password. Matched”

Enter mobile Number without Display “Contact Number pass


Country code Verification Failed”

Enter mobile Number with No error display pass


Country Code

Figure 5.2.2 1 When entry field are empty

82
Figure 5.2.2 2 Contact Number without the country code

Figure 5.2.2 3 When all the field have valid credentials

83
Figure 5.2.2 4 Redirecting to homepage on successful login

5.2.3 Forgot Password Module

Condition Action Result


Click Forgot Password Display “Please Enter the Pass
without entering E-mail email ”
address
Click Forgot password with Display “Password Resent Pass
by entering e-mail address Link Sent”
Invalid email address Display “Password Resent Pass
Link Not Sent.”

84
Figure 5.2.3 1 When email field is empty

Figure 5.2.3 2 When email field has valid data

85
Figure 5.2.3 3 Password Reset Link in given email

Figure 5.2.3 4 Password Reset Form

86
Figure 5.2.3 5 Password Changed Notification

5.2.4 Home Screen

Condition Action Result


On entering the screen for Display “Please verify your Pass
first time with newly KYC ”
registered user
On entering the screen for No error message Pass
first time with already
KYC registered user
On clicking Account button Display “App official log Pass
with newly registered user with user, wallet
information and logout
section.”
On clicking Logout Button Redirect to the login page pass

On clicking User Redirect to General Pass


Information Button with Information tab for
new registered user registered

87
Figure 5.2.4 1 Home page with new user

Figure 5.2.4 2 User Profile before KYC verification

5.2.5 KYC Registration Module:

Condition Action Result


On clicking Account button Display “App official log pass
with already KYC with user, wallet
registered user information and logout
section.”
On clicking card validity Display date picker pass
button

88
On clicking user selection Display list of user pass
drop-down menu category
On clicking save button by Display “General pass
entering required Information Registration
credentials with newly successful.”
registered user
On clicking save button Display “Enter all the pass
without entering fields data information”
On clicking save button Redirect to Address pass
entering required information registration
credentials with newly form
registered user
On clicking save button Display “Enter all the pass
without entering fields data information”
On clicking save button Redirect to Document pass
without entering fields data Uploading section
On clicking choose image Display file manager to pass
button of profile picture select the required picture
section
On clicking choose image Display file manager to pass
button of Citizenship select the required picture
section
On clicking choose image Display file manager to pass
button of Fare discount select the required picture
identity card section
On clicking save button Display Navigation drawer pass
without entering fields data with user profile picture
and user category
On clicking User Redirect to General Pass
Information Button with Information tab with
already registered user registered user general
details
On clicking address tab Redirect to Address pass
Information tab with
registered user address
details
On clicking back button Redirect to the user profile pass
Navigation drawer

89
Figure 5.2.5 1 General Information Form

Figure 5.2.5 2 When fields are left blank

90
Figure 5.2.5 3 Image Uploading section

Figure 5.2.5 4 User Profile section after KYC Verification

91
Figure 5.2.5 5 View Address Information

Figure 5.2.5 6 View Verification Document

5.2.6 Live Bus Location Module

Condition Action Result


On pressing Live Bus Redirect to Live location Pass
Button page
On selecting Route List Display the list of all the Pass
drop-down menu route present in the
database

92
On selecting the particular Add the bus market and Pass
route from the drop-down display the live location of
menu bus present on that route
On pressing the cross Remove the bus marker Pass
button present on that location
On pressing the bus marker Display the dialog box Pass
icon with information like initial
bus location, final
destination drop-down list,
user category, and fare
amount section.
On pressing final Display the list of bus pass
destination drop-down list stand present on the
particular route
On pressing the particular Display the fare amount pass
bus stand in that route based on the distance
between initial and final
location.
On Pressing Accept button Display “Payment pass
Success”

5.2.7 Digital Wallet Integration

Condition Action Result


On Pressing Accept button Redirect to the web page Pass
and display fare price,
transaction id and
submission button
On pressing submit Redirect to the e-sewa Pass
payment gateway page
Entering all valid e-sewa id Display payment process Pass
and password successful
Invalid e-sewa id and Display invalid credentials pass
password

5.2.8 Viewing Bus Routes and Bus Stop

Condition Action Result


On Clicking bus stand Redirect bus stand view Pass
button page and show drop-down

93
list of bus stand
On pressing route form the Display the name of bus Pass
drop-down list stand on that route
On Clicking cross button Remove the name list of Pass
bus stand on that particular
route from the display
container

5.2.9 Driver Registration Module

Condition Action Result


Enter all field correctly Display “Successfully Pass
register”
Blank any one field Display “Please enter all Pass
necessary details”
On selecting drop-down Display the list of bus route pass
menu
Entering different Display entered password pass
password on conform don’t matched
password and password
entry field

Figure 5.2.9 1 All field empty

94
Figure 5.2.9 2 Mismatched Password

Figure 5.2.9 3 All field with correct credentials

95
Figure 5.2.9 4 Registration Success

5.2.10 Driver Login Module

Condition Action Result


Login into system with valid Successfully redirect to home Pass
contact number and password. screen

Login into system with valid Toast Login Successful pass


contact number and password.
Login into system with blank Display please enter all Pass
contact number. necessary details
Login into system with blank Display please enter all Pass
password. necessary details
Login into system with wrong Display Invalid Credentials. Pass
contact number
Login into system with wrong Display Invalid Credentials. pass
password.

96
Figure 5.2.10 1 Login Page after registration

Figure 5.2.10 2 Entering Invalid Credentials

97
Figure 5.2.10 3 Entering Valid Credentials

Figure 5.2.10 4 Home page After Successful Login

5.2.11 Location Tracking Module

Condition Action Result


On clicking location update Display the latitude, Pass
switch on longitude, Accuracy and
address information on the
screen
On clicking location update Set the latitude, longitude, pass
switch off Accuracy and address text
label field to not tracking
When location update switch is Regularly update real-time pass

98
on location on the database and
toast real-time location
storage successful
On clicking location update Toast Real-time Location Pass
switch on/off Storage Successful and store
the latitude and longitude
data in the Firebase real-time
database

Figure 5.2.11 1 Switching on for location update

Figure 5.2.11 2 Switching off the location update

99
5.4 User Acceptance Testing

During the user acceptance testing, 10 users were selected to run the system on their
laptop and provide feedback on the program. Five professionals with IT
backgrounds, three professionals without IT backgrounds, and two general users will
participate in the survey.

5.3.1 User acceptance testing procedures


➔ Preparing:
◆ You can ensure that the program's operation flow is correct by building a
decision table.
◆ There won't be any display, resource utilization, or operating system
environment concerns when field testing the system on different devices.
➔ Planning:
◆ Choose the testing crew and the location.
◆ Selecting the test cases and situations to be used in actual usage
➔ Execution:
◆ System flaws are fixed and the system is retested.
➔ Follow-up
◆ Look at all the information you've collected.
◆ Complete all requirements and write an analysis report.

5.3.2 Summary of Gathered Information

Rating Poor Average Good Excellent Percent

Attribute Average Good Excellent

User 0 1 6 3 10% 60% 30%


Friendly

Interface 0 3 5 2 30% 50% 20%

Performance 0 2 8 0 2% 80% 0%

Total 0 6 19 5

Percentage 0 20% 63.33% 16.67%

100
As shown in the table above, 20% of respondents have an average response rate, 63.33%
have a good response rate, and 16.67% have an excellent response rate. In terms of user
friendliness, 10% of respondents rated average, 60% rated good, and 30% rated outstanding
in terms of user friendliness as well as for performance, 20% had average satisfaction but
80% had good satisfaction.

5.3.3 Analysis of Gathered Information

Respondent
Profession Background

101
5.5 Conclusion
According to the document's stated objectives, the system's functionality is evaluated with
three testing approaches, and the results are positive. A decision table is used to ensure that
the system's data and process flow are accurate. Secondly, respondents are given the system
and asked what they think about it by giving them questions.

102
CHAPTER 6

CONCLUSION AND SUGGESTION

6.1 Introduction
A system requires support and evolution stage to make the system a lot better. Each system
consists of bugs, simply there isn't system that does not contain bugs, so to keep up with the
security, and the application requires the evolution stage. The application might have
mistaken, flaws, and system failures during testing. The correction of the problem can
improve the application's quality and reduce risk in the future. The testing is done to lessen
the application error and handle the system failure. Thus, this application has met and filled
the stated objective and requirement.

6.2 Challenges
Following are the issues that came up during the development process of this project:
● Document Process
The documentation was lacking due to poor grammar and spelling, and the solution
to this was to use grammar and spelling corrector applications like Grammarly and
Mendeley.
● Testing Process
The lack of proper knowledge in testing made testing the system challenging for
me. In order to find out, I asked my friend and my supervisor and I received a lot of
assistance during the testing process from them.
● Implementation Process
A lack of implementation information prevented the development of the mobile
application. I have gained valuable knowledge about system design and
implementation from the research paper. Furthermore, I studied similar systems to
gain an understanding of the features and functionalities of my mobile app.

6.3 Advantages of System


● The application has enhanced user experience with simple to use interface.
● Driver can register their bus details on the particular route and create their own
profile.
● Driver can view their own location latitude, longitude, accuracy of the gps and even
name of the road.
● Passengers can categorize themselves on the basis of partial or full fee payer.
● Passengers can view the live location of bus on the basis of the route.
● Passenger can even view the list of bus stand on the basis of the bus routes.

103
6.4 Disadvantage of System
● The live location of the bus needs to be updated via the internet
● To store the live location, we need to access the mobile GPS location of the driver.
● Activating and deactivating live location tracking is at the driver's choice so, if
driver prefer switch off location tracking, users cannot view the bus location.
● KYC validation and verification are required in order to access partial fare payment
services.

6.5 Future Development


● User will be able view only the live location of bus based that is near to their live
location.
● By directly entering the destination, the system will show bus route details on the
map .
● User will be able to update their KYC details by making upgradation request.
● The application will also integrate other available means of digital payment system.

6.6 Conclusion
This application will easy the public transportation system by allowing user to view the live
location of public bus based on the bus routes, with enhancing the fare payment system by
the integration of digital wallet and categorization of service user based on partial or full
fare payer. Compared to other similar systems, this is not the best system but it is a good
starting point for public transportation service providers to study how a location tracking
system works and what methodology they should follow. Overall, this mobile application
meets the project's objective.

REFERENCE

Oil Price Hike in Nepal: Some Critical Observations - myRepublica - The New York Times
Partner, Latest news of Nepal in English, Latest News Articles. (n.d.). Retrieved December
17, 2021, from https://myrepublica.nagariknetwork.com/news/oil-price-hike-in-nepal-
some-critical-observations/

104
WB. (2019). World Bank Country and Lending Groups – World Bank Data Help Desk. In
The World Bank (pp. 1–8).
https://datahelpdesk.worldbank.org/knowledgebase/articles/906519-world-bank-country-
and-lending-groups

Number of mobile devices worldwide 2020-2025 | Statista. (n.d.). Retrieved December 17,
2021, from https://www.statista.com/statistics/245501/multiple-mobile-device-ownership-
worldwide/

How Assisted GPS Works in Cellphones. (n.d.). Retrieved February 14, 2022, from
https://www.lifewire.com/assisted-gps-1683306

What is Client-Server? Definition and FAQs | OmniSci. (2021). Omnisci.


https://www.omnisci.com/technical-glossary/client-server

API? W. is the G. M. (2017). What is the Google Maps API? 1–3.


https://developers.google.com/maps/

Python Software Foundation. (2017). What is Python? Executive Summary | Python.org.


Python Software Foundation. https://www.python.org/doc/essays/blurb/

Kivy Tutorial - GeeksforGeeks. (n.d.). Retrieved December 18, 2021, from


https://www.geeksforgeeks.org/kivy-tutorial/

Microsoft. (2020). Visual Studio Code Frequently Asked Questions. In vistualstudio.com.


https://code.visualstudio.com/docs/supporting/FAQ

Firebase. (n.d.). Firebase Realtime Database | Firebase Documentation. Retrieved


December 18, 2021, from https://firebase.google.com/docs/database

Nolledo, M. (2020). What Is Google Drive? a Guide to Google’s File Storage Service.
Insider Inc. https://www.businessinsider.com/what-is-google-drive-guide

Zandbergen, P. A., & Barbeau, S. J. (2011). Positional accuracy of assisted GPS data from
high-sensitivity GPS-enabled mobile phones. Journal of Navigation, 64(3), 381–399.
https://doi.org/10.1017/S0373463311000051

Kumbhar, M., Survase, M., Mastud, P., & Salunke, A. (2016). Real Time Web Based Bus
Tracking System. International Research Journal of Engineering and Technology, 3(2),
632–635.
https://pdfs.semanticscholar.org/06df/12eaa6ede3ecb13f77c3bdf92d85051c81e0.pdf?
_ga=2.123533326.425985727.1520207232-958697846.1520207232

105
Elshaarawy, I. (n.d.). Faculty of Computer Science Student Name : Sara Khaled.

Sardey, Y., Deshmukh, P., Mandlik, P., Shelar, S., & Nerkar, M. (2014). A Mobile
Application for Bus Information System and Location Tracking using Client-Server
Technology. International Journal of Emerging Technology and Advanced Engineering,
4(4), 86–91. http://www.ijetae.com/files/Volume4Issue4/IJETAE_0414_14.pdf
%0Ahttps://pdfs.semanticscholar.org/8a0c/7c1f5112a18609462fd13beed52a8e8c8b74.pdf

Shinde, S., Nagalwar, V., Shinde, N., & Pawar, B. V. (2014). Design of E-City Bus
Tracking System. Int. Journal of Engineering Research and Applications, 4(4), 114–117.

組織 β-グルクロニダーゼによるグルクロニドの生体外脱共役の結果としてのフラ
ボノイドアグリコンの過大評価| Elsevier Enhanced Reader (p. undefined-undefined).
(2020).
https://reader.elsevier.com/reader/sd/pii/S1877050917310724?
token=CD4FCA2B3BEB1971D1D648E537960A9B5B7B9D7FE807A4F0ED067A8D475
D7DD60286E7A6B8B35F448812D275E94A9B9F&originRegion=eu-
west1&originCreation=20211223103208

Miranda, W. M., De Mendonça, R. T. R., Da Silva, A. A., De Lima Curvello, A. M., De


Souza, F. L. D. S., & Da Silva, H. J. (2017). BusMe: Automatic Bus Localization System
and Route Registration. Procedia Computer Science, 109, 1098–1103.
https://doi.org/10.1016/j.procs.2017.05.397

Pandey, V. (2015). Real Time Bus Position and Time Monitoring System. IJSTE-
International Journal of Science Technology & Engineering |, 1(10), 80–84. www.ijste.org

Ride Smart Bus - Apps on Google Play. (n.d.). Retrieved December 27, 2021, from
https://play.google.com/store/apps/details?id=com.gw.smart&hl=en_US&gl=US

GRTC - Apps on Google Play. (n.d.). Retrieved December 27, 2021, from
https://play.google.com/store/apps/details?id=com.alesig.grtc&hl=en_US&gl=US

Mero Sajha - Google Play मा एपहरू. (n.d.). Retrieved December 27, 2021, from
https://play.google.com/store/apps/details?id=ramlaxman.gpsnepal&hl=ne&gl=US

Chalo - Live Bus Tracking App - Google Play मा एपहरू. (n.d.). Retrieved December 27, 2021,
from https://play.google.com/store/apps/details?id=app.zophop&hl=ne&gl=US

Moovit: All Local Transit & Mobility Options - Apps on Google Play. (n.d.). Retrieved
January 4, 2022, from https://play.google.com/store/apps/details?
id=com.tranzmate&hl=en&gl=US

106
bus tracking system - Wikipedia. (n.d.). Retrieved January 6, 2022, from
https://en.wikipedia.org/wiki/bus_tracking_system

EETimes - How does a GPS tracking system work? (n.d.). Retrieved January 6, 2022, from
https://www.eetimes.com/how-does-a-gps-tracking-system-work/

Hoque, F., Chakma, R., Profile, S., Mahtab, S. S., Akter, R., & Ahmed, S. S. (n.d.). Design
and Developing Real Time Interactive IIUC Bus Tracking System Renewable Energy
Sector View project CIGS Solar cell modelling View project Design and Developing Real
Time Interactive IIUC Bus Tracking System. Journal of Innovation in Computer Science
and Engineering, 9(2), 2278–0947. https://doi.org/10.18535/ijecs/v6i2.22

Mehta, H., Kanani, P., & Lande, P. (2019). Google Maps. International Journal of
Computer Applications, 178(8), 41–46. https://doi.org/10.5120/ijca2019918791

The Algorithms Behind The Working Of Google Maps | CodeChef. (n.d.). Retrieved
February 13, 2022, from https://blog.codechef.com/2021/08/30/the-algorithms-behind-the-
working-of-google-maps-dijkstras-and-a-star-algorithm/

Dijkstra’s Algorithm - javatpoint. (n.d.). Retrieved February 14, 2022, from


https://www.javatpoint.com/dijkstras-algorithm

APPENDICES : ACCEPTANCE TESTING RESPONSE DATA


ANALYSIS

Professional How do you rate How do you How do you rate Did you
Background the functionality rate the the system in encounter any
of the system in graphical user terms of user- difficulty while
terms of interface friendliness? using the
performance? design of this system ?
system?

IT background Average Good Good No

IT background Good Average Good No

IT background Good Good Average Yes

107
IT background Average Excellent Good No

IT background Good Good Good No

Non IT Good Excellent Excellent No


background

Non IT Good Average Good No


background

Non IT Good Good Average No


background

Others Good Good Average Yes

Others Good Good Average No

APPENDICES : RESPONSE FORM

108
109

You might also like