Escolar Documentos
Profissional Documentos
Cultura Documentos
Research Paper
E-Taxi System
Group: 5:
Long Penglay
Heng Soparinha
Chea Engkeat
Ngor Hyleang
Ly Leanghour
Khoeurn Rotha
Taxi is one of the most convenience and popular transportations which people like to
use all over the world. It is easy, safe, and comfortable for travelling, both long and short
journey. Although taxi pricing is relatively high as compared to other types of transportation,
namely public transportation like bus and train, the price of taking a taxi is actually quite
reasonable regarding the extensive benefits it provides to the riders. For such reasons, Taxi
became one of the most popular transportation all over the world.
Even though, Taxi is very popular, there are still many issues that any private taxis or
companies and customers alike need to deal with such as over pricing, over booking, or being
late, lack of taxis at peak hour or in rural area. This problem tends to drive customers, who
prefer reliable, fast, and reasonable priced transportation service, away from taking a taxi ever
again. Therefore, to solve these problems, we are conducting this research for an E-Taxi
System.
With this project, we provide the taxi booking services in the city, which could be
expanded to rural area with ease in the future, via a Web-based application. As for the
security, we also ensure that both customers and drivers will give a specific data by registering,
and also validations in a specific form which need to be done in an effective way.
This project is conducted using solely Waterfall Model along with several programming
languages such as ASP.NET, Html, JavaScript, and CSS to develop and qualitative method for
information gathering. USECASE and Data Flow Diagram (DFD), are also provided to help
developer and customer to understand more about the process of the E-Taxi System.
Furthermore, we also observe some of the most popular e-taxi system such as UBER, Grab Taxi,
Easy Taxi, and so on for further references.
II. Introduction
The E-Taxi System is built to maintain any records of both customers and drivers. It is a
system which allows users to input or specify their information such as name, email, or phone
number which will be required by the system. In order to use the E-Taxi System, user need to
register with email confirmation which are provided after the register process. By registering,
customers can access to taxi finding maps, pin to the location and the destination, and estimate
the distance and the cost in a single press. Moreover, driver also gains the ability to respond the
request from the customer. Furthermore, both customers and drivers can edit their profile,
which could be found in our menu interface such as password, phone number, email, and other
information. Last but not least, we also provide the optional payment system which the
customer can pay for the fee by credit card immediately after they place the order, or they
simply pay by cash directly to taxi drivers after reaching their destination. Detailed information
and algorithm on how our system handle all of these processes could be found in the next
sections of this paper.
Our aim is simply to design a system which could satisfy every user both driver and
customer by offering an easy-to-use system that customers can find Taxi quickly and easily,
minimizing the time needed for finding and waiting for taxi, while drivers can effortlessly
provide unparalleled taxi service to many customers.
The main objective of this project is to make a web-based application which user can
order or call the taxi. Other objectives include:
All members for gathering the information, and analyze the system requirement.
Heng Soparinha and Chea Engkeat responsible for interface designing which make the
web base application look simple and attractive by using programming language such
as JavaScript, Html, CSS, and C# ASP.NET.
Long Penglay and Ngor Hyleang are responsible for coding by using programming
language C# ASP.NET and JavaScript.
Ly Lenghour and Khoeurn Rotha are responsible for web hosting and web configuration.
All members are responsible for database analysis in order to make sure the database
work smoothly.
All members are responsible for testing the web- based application.
V. Literature reviews
In order to understand more about the project, we have to gather some the information
which had already been done by previous experts or researchers who also studied about this E-
Taxi system or similar topics. There are some definitions which are related to the project:
Use case – to identify, clarify, and organize system requirements, and understand
the interactions between a user and a system that enables the user to achieve a
goal. [1]
Data Flow Diagram is used to identify existing processes and it is a technique we
benefit from particularly before we go through business process re-engineering.
Data flow diagram shows about how data flows through a system such as how data
is processed by a system in terms of inputs and outputs. As its name indicates its
focus is on the flow of information, where data comes from, where it goes and how
it gets stored. [2]
VI. Finding
In order to develop this web based application, we started with software requirement
include description of a software system, functional and non-functional layout requirements, a
set of use case diagram and data flow diagram that describe the interaction between user and
software.
1. System Requirement
System requirements are all of the requirements at the system level that describe the
functions which the system as a whole should fulfill to satisfy the stakeholder’s needs and
requirements, and is expressed in an appropriate combination of textual statements, views,
and non-functional requirements. Functional requirements and non-functional requirements
that were included to make this project happened are:
Functional requirements:
Register Member
2. There will show error if customer didn’t fill all the fields. Must
Login
Pin Location
8. User can pin location on the map from where they want the
Must
driver to pick them up and destination.
Notification
10. Three nearest drivers will receive the notification. Must
12. After the driver accept and respond back, all of the other
Must
requests will be cancelled.
Payment
14. If Customer doesn’t have any Credit card linked to their account,
there will be a form for them to fill the payment information.
Must
However, they can choose to skip this part if they want to pay by
cash.
Non-functional requirements:
Usability
15. All people can use this system with internet connection. Must
Other
2. Use case diagram
The purpose of this diagram is to show what our application could do and who will use
it. It will be used by two kinds of users such as customer and driver. Customer can register
before login to the system, then the system will pop up the notification which includes location
and destination and will be seen by the driver. Moreover, costumer can checkout through
Credit card or pay directly to the driver. Besides, driver must register before login to the
system, to get order from customer, respond back to customer and get payment.
3. Data Flow Diagram
User Activities
User that is mentioned here is going to play an important role in this system. above diagram
shows user activities:
Driver Activities
Not only User, but also Driver that is important in this system as below:
4. User interface
A. Homepage Interface
In Homepage interface component menu of the application, it shows:
Profile Menu
Feature Menu
About Us Menu
Sign Up Menu
Sign In Menu
Under menu has a slide show for the website and Feature.
B. Sign Up Interface
In Sign Up interface, there are button sign up for driver and rider.
In this interface, user required to fill all information. After fill all required field, user can
click on Sign Up Button. If they don’t want to register, they can click on Cancel Button.
- Sign Up for Driver
User fill all required fill like register for rider, but in this interface have some different
fill. Then click on Submit to register.
C. Login Interface
After register, both driver and rider can login with username and password that have
registered.
User can check on Remember me to remember the username and password that had
login.
If they forget password, they can click on Forget Password to reset password.
D. User Profile Interface
After log in user can see their information in User Profile interface. They can also see their
history by clicking on history link.
Users can edit their information by click on Edit then edit all information.
E. Location Interface
- For Driver
After Login for driver, under the map you will see “I’m Available” Button
By default, driver’s status is busy. Click on this button will change their status to
available, so they can start receive customers now.
After click on I’m Available, this button will change to I’m Busy.
If there is a customer waiting, the following page will be shown.
Driver can click on response to accept this customer.
If another driver already response to that customer, when click response will show
following page.
After finished deliver customer to their destination, driver must can click “Finish Journey”
to finish order, otherwise their status will remain busy and they cannot receive any other
customers.
- For Rider
In the map will show the customer current location.
Customer can pick location by click on the map and drag the pin wherever they
want (Pin A for pick up place, Pin B for destination)
After pick the location, click “Confirm Location”
After click on “Confirm Location”, there will be a short description about the order.
Click “Proceed to Payment” to go to payment page.
In payment page, customer can select their card if they have linked Credit card with
their account. Or they can simply enter a new card information.
They can skip this page by click on Pay Later if they want to pay by cash instead.
- For adminstrator
After login as adminstrator the following page will show all the order information for
admin to monitor.
5. Coding and algorithm
A. Code to get user location
This block of Javascript code using HTML5 geolocation functionality to get user’s
location, and then display it on the map using Google Map API. User’s browser must support
HTML5 for this to work.
B. Get Pinned location coordinate and calcualte distance
Get customer’s coordinate from the databse and store it as “to” and “from” variable in
C# then pass them to Javascript.
D. Algorithm to get 3 nearest drivers
For performance concern, we use an algorithm to get only 2 nearest drivers in method
“TwoSmallestValue”, and then randomly select another available driver.
We calculate the distance between driver’s current location and customer’s pickup
place by using GetDistanceTo method in C# GeoCoordincate namespace.
References
Data Flow Diagram (DFD) Tutorial. (2012, January 27). Retrieved from Paradigm, Visual:
http://www.visual-paradigm.com/tutorials/data-flow-diagram-dfd.jsp [2]
Der, H, L., Hao, W., Ruey, C.,& Siew, T,. (2014). Transportation Research Record. Taxi Dispatch
System Based on Current Demands and Real-Time Traffic Conditions.[3]
Hai Yang, S.C Wong. (1998, May). Transportation Research Part B: Methodological. A Model of
network urban taxi services., 32(4), 235–246. [4]
Kevin, H., Kitty, W., & Ren, J. J.,. (2014). Transportation Research Record. Modeling Consumer
Preference for Global Positioning System-Based Taxi Dispatching Service: Case Study of
Taichung City, Taiwan.[5]
Learn ASP.NET web application framework. (n.d.). Retrieved from www.tutorialspoint.com [6]
Tao, C. (2007, September 25). Dynamic Taxi- Sharing Service Using Intelligent Transportation
System Technologies, 3209 - 3212 .[8]
Wong, K.I., Wong,S.C., & Yang, H. ( 2001, August 21). Transportation Research Part B:
Methodological. Modeling urban taxi services in congested road networks with elastic
demand, 35(9), 819–842.[9]