Bus Ticketing System with Multiple Routes Suggestion

An important part of the bus ticket booking system is the route. Online bus tickets are systems that integrate all the different bus organization routes. However, the existing online system only provides direct transportation to destinations. In many cases, customers will need to take some connecting buses before reaching their desired destination. Therefore, a multiple routes suggestion for bus ticketing system is introduced using an advance route generation algorithm. In addition to the basic features of the existing online system, the developed system offers recommended routes if the desired destination does not have a direct bus. The recommended route will be at several different bus operators and waiting time for the next route. The development of this system is expected to provide convenience for the customer to find multiple routes suggestion.


Introduction
Recently as the times change, technological growth is accelerating and advancing. This has led to dramatic changes in the business industry over the past 40 years (Khan & Judge, 2013). One of the groups of business applications affected by computer technology and the Internet is electronic commerce. It brings many benefits for people to do business activities such as shopping, booking movie tickets, ordering food and so on which are done online. For business-people, they can use software or applications such as advanced technology as well as the internet to increase profits and reduce costs.
Bus transportation services are companies or enterprises that provide services such as moving people from one place to another by using bus transport. The movement can be done in the short or long distance according to the wishes of the customer. To take the bus, people need to buy bus tickets from the counter or online. The growth of this technology has led to competition among bus companies as they want to attract customers to buy their bus tickets (Kieu, et al., 2019;Mahfouz et al., 2020). As more and more customers board buses, the demand for bus tickets and bus operators is increasing. E-tickets have been introduced which helps the interaction between the company and the customer which facilitates the customer (Ibrahim and Ta"a, 2015; Liu, 2001). For example, customers can buy tickets online easily, and this saves time, energy, and work because people no longer have to wait long to get the tickets they need.
For some small bus operators, they may not have their own online bus ticket booking system. The important part of a bus ticket booking system is the routes. Online bus ticket is a system that integrate all of the routes of different bus organizations (Oloyede et al., 2014;Rahmat, 2005). Hence, it is convenient for customers to search their desired routes. As the demand of bus ticket increases, the number of bus operator also increase. In the result, the online bus ticket booking application also increase (Amarpreet, 2017;Park et al., 2019). The basic features of these bus online ticket system are searching routes features even different bus operator, display the prices, check the availability of bus ticket, different type of online payment method, gallery images and information of the bus operators.
The process of buying existing bus tickets can be done in two ways through the ticket counter and online ticket booking system (Jakimavičius et al., 2016). There are some problems with both methods, from some observations. For the method of buying tickets through the bus ticket counter, passengers may have to wait a long time to get information on the route of their choice or purchase a bus ticket. Not only wasting time but also wasting their car fuel. This will be fixed by the existing bus ticket booking system but there are still some problems (V. Geetha, et al, 2020). For example, when arriving at a destination, it does not have a road proposal that requires bus transportation. In other words, if customers are unable to book a direct bus, they may need to find a transfer bus or take some connecting buses to get to their chosen destination.This could also be due to the lack of bus tickets during certain festive seasons.However, other transportation such as trains, flights and so on may be more expensive than taking a bus. This problem is currently facing users, as this search feature is not supported by existing systems. Also, some passengers may have problems, such as having to reschedule their bus tickets or cancelling tickets, for example. In this case, if the online bus ticket booking application does not support the rescheduling feature, then existing tickets that have been purchased should be discarded. This will be detrimental to the customer, and even make it difficult for them to find other solutions. Therefore, the multiple-route suggestion module is developed in conjunction with the Bus Ticket System. The feature proposed to produce these various routes is very important for customers before making a ticket purchase to make it easier for them to reach their chosen destination using the service chosen based on their needs. Findings from generations of various routes will help customers to make the best decisions about their planned trip. This project will focus on the development of search features that can show the route or destination route even though it may need to move many buses. For example, if the user wants to go from A to destination C, some routes that can reach the destination will appear based on the waiting time for the next bus trip. The system will display routes such as A to B, B to C, others possible routes from A to D, D to C between different bus operators. The paper is arranged in five main sections. Part 1 introduces the study and Part 2 describes the related work. Part 3 describes the methodology and Section 4 shows its implementation. Section 5 provides a conclusion.

Related Work
Before the online bus ticket system was introduced, bus operators sold their bus tickets over the counter [3]. All tasks are per-formed manually as recorded in the booklet. After online bus ticket systems were introduced, customers can buy tickets anywhere, anytime. In addition to using websites, most people will choose to use mobile application. This is because mobile application become the current trend. The payment method can made via online transfer such as online banking, e-wallet, and credit card. The customer will receive a summary of the order that serves as the email upon confirmation of payment. It will be used as an entry pass to take the bus.
In the online ticket system, there are many features to provide convenience to customers. However, each system has its own problems that customers may encounter when booking a bus ticket online. Based on research and observation, some issues need to be addressed. Finding a route is an important part of online bus tickets. This is because the search engine is not working properly, the customer will not find the desired route and they will need to find other means of transportation to reach the destination. Other transportation such as flights may be more expensive than taking a bus. Fig. 1 shows the concept to find routes of indirect bus.

Figure 1.Concept to Find Routes of Indirect Bus
On the other hand, the existing system could not find the route needed to transfer the bus. If the desired customer route does not have a direct bus, the system can only produce results such as "not found". Customers have to search many times on the internet or ask others to find the real way to get to the destination. This will cause difficulties on the part of the customer, especially when they really need to go to the desired place for various matters. Hence, the proposed multiple route suggestion strategy described in Fig. 1 is able to address the limitation by searching all the routes stored in the database and showing the proposed route to the customer. Therefore, a functional search engine is very important. It not only makes it easier for customers, but also increases the number of customers to use the software. Indirectly, the profits of the software company also increased.
Looking into this, a multiple routes generation function is needed. This is because in some cases, customers may need to transfer several buses to arrive destination. This could also be due to the lack of bus tickets during certain festive seasons. In this case, users will need to get other connecting bus services. Hence, the function is needed in order to provide better service to customers. In development of this proposed system, e-commerce, e ticketing, mobile application concept were used to sales bus tickets. This is because customers buy tickets using the Internet and the transactions using online transfer money. The SQL command also used to provide the suggestion routes for customer. The concept of using SLQ directives first gets the ID of the 2 stations that the customer wants. Then find the route compilation of 2 stations accessible by direct bus. The following step is the intersection of the station and it is the required transfer station. Finally, an indirect bus route was found.

Methodology
Software Development Life Cycle is utilized in this software development project to plan and control the work process. System analysis and design is based on the object-oriented approach in which UML diagrams are generated. Requirements analysis is performed to determine the client requirements for the software to be developed.
Use case diagram in Fig. 3 represents the overall activity of the Bus Ticketing System with the Multiple Routes Suggestion. It determines the communication be-tween the system and the actor. There are two external entities or actor in the proposed system, namely customers and administrators. Each of them needs to sign up before doing any activities. While administrator do not need to register. Customers can find the route they want to book. The system provides the route information available after the customer enters the route details. If it does not have a direct bus, the system will generate a recommended alternative route.
Customers can choose the road proposal generated by the system to continue booking. After the customer confirms the order, the payment process is done. Administrators can manage information about bus routes such as adding, deleting, and editing information. In addition to managing bus route information, administrators can arrange a booking schedule after a customer requests to cancel it. The latest information will be stored and displayed on the website.

Figure 2.System"s Use Case Diagram
Matrix Reliability Requirements (RTM) is prepared tocollect all the customer's recommended requirements and new system specifications. It is used to determine whether system requirements are met. Therefore, any system features will not be missed during testing. Table 1 summarizes the performance matrix of the new system requirements. Users sign into the system with valid information SRS_REQ_103 System display error message if login is invalid SRS_REQ_104 Customers register with input personal data SRS_REQ_105 System display error message if the registration is not successful.

SRS_REQ_106
System store user information in database once registration successful Customer Profile SRS_REQ_200

SRS_REQ_201
Customers edit profile

SRS_REQ_202
Customers change password SRS_REQ_203 Customers view the history bookings SRS_REQ_204 Customers manage bookings SRS_REQ_205 System store updated information of in database Searching SRS_REQ_300

SRS_REQ_301
Customers search their desired routes SRS_REQ_302 System display bus routes SRS_REQ_303 System generate multiple routes suggestion if the routes do not have direct bus SRS_REQ_304 System display the recommended routes based on waiting time for next route Booking SRS_REQ_400

SRS_REQ_401
Customers book their desired bus ticket SRS_REQ_402 Customers select their desired seats SRS_REQ_403 System calculate total prices of bus tickets SRS_REQ_404 Customers checkout if confirm booking SRS_REQ_405 Customer make an payment SRS_REQ_406 System update booking status in database once payment confirm.

SRS_REQ_501
Customers reschedule their booking in some terms and condition SRS_REQ_502 Administrator handle the rescheduled booking SRS_REQ_503 System update booking status in database once customers rescheduled their booking SRS_REQ_504 System display latest seats available in websites Administrative SRS_REQ_600

SRS_REQ_601
System display bus station information SRS_REQ_602 System display bus routes information SRS_REQ_603 System display bus operator information SRS_REQ_604 System display timetable of bus routes SRS_REQ_605 System display information of reschedule booking SRS_REQ_606 Administrator create, update and delete bus station SRS_REQ_607 Administrator create, update and delete bus routes SRS_REQ_608 Administrator create, update and delete timetable of bus routes SRS_REQ_609 Administrator create, update and delete bus operator SRS_REQ_610 Administrator approve or decline the cancel requesting SRS_REQ_611 System store all the updated information in database.

SRS_REQ_612
System display error message if create, update and delete is not successful View Report SRS_REQ_800

SRS_REQ_701
System display feedback from customers SRS_REQ_702 System display cancelled booking details SRS_REQ_703 System display booking details Advanced route generation algorithm is developed to implement multiple route generation. The pseudo code for multi-route generation is as follows: IF "DEPARTURE" is set and not null Set variable "DEPARTURE" Set variable "DESTINATION" Set variable "DATE" Set variable "TIME" SQL statement = " 1. INNER JOIN table of timetable, bus_routes, bus_operator over the route_id and operator_id respectively AS "T1" WHERE departure"s date = variable "DATE" AND departure = variable "DEPARTURE" AND subtracting between time now and departure"s time > 2 hours 2. INNER JOIN table of timetable, bus_routes, bus_operator over the route_id and operator_id respectively AS "T2" WHERE departure"s date = variable "DATE" AND destination = variable "DESTINATION" 3. INNER JOIN "T1" and "T2" ON T1.destination = T2.departure AND 0 < waiting time for next route < variable "TIME" 4. Restrict the result of that JOIN to Trip Detail " Set variable "RESULT" = after execute SQL statement END IF The proposed routes that will be displayed on the user display will also follow the price and waiting time for the next route. This is to provide the best route and other criteria that are useful for customers, even if the bus ticket crosses different bus operators. The efficiency of search engines with such functions can provide a variety of options to users and help them make decisions based on the needs or resources available.

Implementation
To design an application that provide better user experience for users, some existing system had been study. From the observations, these online bus ticket systems have the basic functions of searching, booking and payment. However, the proposed system will provide the advanced searching for users that is provide suggestion routes if there is no direct bus. The bus ticket system with various route suggestions was developed using Android Studio brackets and software. The users of this system consist of two users, namely the customer and the administrator. Fig. 3 shows the customer registration and login interface. Before booking any bus ticket, customers need to be registered with the system.

Figure 3.Interface of Registration and Login Customer
In the search module, the system provides basic search and advanced search for customers to find the desired bus route. For basic search, customers only need to enter departure, destination and date. While for advanced search, customers need to enter another bus route detail waiting for the next route. Therefore, the system will provide various suggestions for bus routes using SQL statements and based on advanced route algorithms. This system will provide the bus routes available in the database only. Fig. 4 shows the basic search and advanced search interfaces while the basic search and advanced search interfaces are shown in Fig. 5. The basic search and advanced search code segments are shown in Fig. 6 and Fig. 7 respectively.    Customer can select the seat after selecting their desired bus routes. The system only provides one payment method only which is PayPal. Customer can proceed the payment by login with their PayPal account after select the seat and check the booking details. Fig. 8 shows the interface.

Figure 8. Code Segment of Advanced Search
In the administrator module, there is a Station Management module that allows administrators to manage bus station information. Fig. 9 shows the interface. The "Management" function has a selection of functions such as bus operator management, bus routes, timetables and rescheduling of bookings.

Conclusion
In conclusion, the Bus Ticketing System with Multiple Routes Suggestion was designed and built it successfully. The developed system had achieved its objective based on the system requirements and scope. The simple Software Development Life Cycle (SDLC) is used to develop this system. The requirements, workflow and interface of the system is designed in the analysis and design phase. This system gives the bigger convenience to customers. This is because the system provides suggested routes to customers if not have directly bus. The suggested routes are based on the lower prices and the time consume to arrive destination and across the different bus operator. Apart from that, the proposed system allows customers to reschedule booking so they can cancel their schedule of booking. The convenience of the proposed system that give to customers can increase the number of users to using this system. It can increase the income of that owners of this proposed system.