Scrum Framework Implementation for Building an Application of Monitoring and Booking E-Bus Based on QRCode

Abstract is a synopsis of the work containing the problems studied, research purpose, information and methods used to solve problems, and conclusions. Articles must be submitted in print-ready format and are limited to a minimum of ten (10) pages and a maximum of twelve (12) pages. Abstract is a synopsis of the work that contains the issues studied, the research purpose, the information and methods used to solve the problem, and the research conclusion. Abstracts are limited to 200 words and should not contain references, mathematic equations, figures, and tables. The font size for abstracts, keywords, and body of article is 11pt. Keywords are no more than six (6) words, but the minimum is three (3) words.


INTRODUCTION
Communication and information technology have expanded quickly worldwide, as well as in Indonesia. It has a positive influence on several industries, like event planning and software design. Currently, all social interactions involve the use of communications and information technology, which has caused many people to alter their communication patterns.
Public transportation plays a significant role in reducing traffic congestion and improving mobility within cities. In this regard, electric buses (e-buses) have emerged as a primary focus in Indonesia as an environmentally-friendly alternative in the public transportation system. The Indonesian government has shown support for e-buses, as evidenced by the launch of 30 units of electric buses during the G20 Summit in Bali in November 2022 [14]. Furthermore, the widespread use of smartphones, with a user base of 192.5 million in Indonesia [15], presents an opportunity to leverage communication and information technology to enhance public transportation services. From that news, we could conclude that government supported the public transportation.
However, despite the growing interest in public transportation, there are still challenges that need to be addressed. One of the key obstacles is the lack of comprehensive information and efficient booking systems for e-buses. This often leads to inconvenience and uncertainty for passengers, discouraging them from utilizing public transportation services. To tackle this problem, this research aims to propose an application that provides real-time information and booking functionality specifically for inner-city e-buses.
The proposed application, a web-based platform, will be accessible through electronic devices such as smartphones, tablets, laptops, and computers. Its main goal is to enable users to easily track and book e-buses, enhancing their overall experience with public transportation. To ensure a user-friendly interface and seamless interaction, the research will incorporate User Interface (UI) and User Experience (UX) design principles into the development process.
Projects of software developers use a variety of approaches. This includes the agile method. One of the most prevalent software development strategy techniques is called "agile," and firms may execute it in a number of ways [1]. Some of the most well-known agile approaches are Adaptive Software Development (ASD), Feature-driven development (FDD), Dynamic system development methodology (DSDM), Extreme Programming (XP), and Scrum [2]. Scrum is an agile methodology-adapting development approach that is centered on teamwork and efficiency. Scrum is one of the agile development techniques that has been approved for creating new goods and services. The Scrum framework applies to corporate values, concepts, and practices in addition to software development. The act of creating software itself serves as the basis of software engineering. The organization may use Scrum principles to create successful goods and services by implementing these three pillars. Scrum is an adaptable framework that can swiftly adapt to demands in companies with various features. [3] The Scrum framework can also serve as a starting point for the application of Agile methodologies in other areas, particularly in software development. By using Scrum, teams can become more adaptable and responsive to changing requirements, which is essential in today's rapidly changing business environment. The Scrum framework encourages continuous improvement and collaboration, which can lead to higher quality products that meet the user's needs. Japanese authors Takeuchi and Nonaka compared Scrum to a rugby match in which cooperation calls for greater work tempo, adaptability, communication, and team engagement. Their essay appeared in the Harvard Business School. [4]. In the early 1990s, Jeff Sutherland and his development team developed the Scrum methodology. Blount, Puntikov, Viktorov, and Sutherland [5]. The Scrum procedures follow the tenets of the Agile methodology. The agile approach's guiding principles are concentrated on: satisfying client requirements through the early delivery of valuable software; welcoming, changing requirements; collaboration between the developers and business people; working software (as a gauge of progress); keeping the design simple; and, at periodic intervals, needing teams to represent on the process of increasing their efficiency while the project is being evolved [6] [7].
Therefore, in this research, we propose implementing the Scrum Framework for creating web-based applications for e-bus in Indonesia, where users may book bus tickets and monitor the bus. Users may select their destination route and their bus seat from a menu within the application. This application can track the bus's location so that the user is constantly aware of how long it will take for a bus to arrive at its location. This application provides flexibility because it is website-based, which makes it easier for users because they do not have to install or download the application, instead, all they need to do is browse the website via a URL link, making it accessible from anywhere as long as the user's device is online. By addressing the current challenges in e-bus services and providing an innovative solution through the development of a comprehensive application, this research aims to improve the user experience and encourage more individuals to opt for public transportation over private vehicles within the city.
The implementation of the Scrum Framework in the e-bus application is intended to make it easier for people to monitor and order buses so they don't have to jostle and line to get on the bus, and it is also a starting point for the application of Agile methodologies in other areas, particularly in software development, where flexibility, adaptability, and collaboration are essential for success.
The paper is organized as follows. In Section 2, the relevant study methods will be covered. The results of this investigation's experiments will be described in Section 3. The result is described in Section 4, and the research's upcoming endeavors are discussed in Section 5.

A. Method
This study discusses the implementation scrum framework for developing an application for monitoring and booking e-bus based QRcode. Scrum is a framework for getting work done by collaborating with each others as team in a structured way and strengthen team communication [8]. The application development process uses the scrum method as shown in figure 1. Figure 1. Stages of the scrum method [9].
The development process using SCRUM can explain each job for each stage as follows: 1. Product backlog is the stage of collecting requirements from stakeholders in software development or specified requirements for software changes by making an ordered list of all that is needed [10]. The product backlog is a key artifact in the Scrum framework that is used to manage the requirements for a software development project. It is a dynamic, ordered list of all the work that is needed to be done on the project. The product backlog contains user stories, which are short descriptions of a feature or functionality that a user requires. The product backlog is managed by the product owner, who is responsible for prioritizing the items in the backlog based on the value they provide to the users and the business. It is an essential tool in Agile software development because it enables the team to remain flexible and responsive to changing requirements. By creating a prioritized list of requirements, the product backlog ensures that the development team is working on the most valuable items first, delivering incremental value to the users and the business. 2. Sprint planning is an activity where the process of fulfilling needs is carried out in accordance with the list of needs according to the wishes of stakeholders that have been made in the product backlog phase such as determining sprint goals and determining details, task priorities, and timescales in the sprint backlog [12,13]. Sprint backlog is the product backlog list (PBI) that will be worked on in the sprint. The goal of sprint planning is to define the sprint goal and select the items from the product backlog that the development team will work on during the sprint. The sprint planning process is a collaborative effort that involves the entire Scrum team, including the product owner, Scrum master, and the development team. During sprint planning, the product owner presents the highestpriority items from the product backlog, which have been refined and updated based on feedback from stakeholders. The development team reviews the items and asks questions to gain a better understanding of the requirements. 3. Sprint is a period of time in software development to complete the product backlog and sprint is declared complete when the goals have been achieved. Sprints are typically 1-4 weeks long, with 2 weeks being the most common length. The length of the sprint is determined by the development team, in consultation with the product owner. During the sprint, the development team works on the items in the sprint backlog, collaborating closely with the product owner and the Scrum master to ensure that they are delivering value to the users and the business. At the end of the sprint, the development team presents the completed work to the product owner and the stakeholders during the sprint review. If the sprint goal was achieved and the stakeholders are satisfied with the work, the sprint is considered complete. If the goal was not achieved, the team and product owner collaborate to determine the best course of action. They may decide to extend the sprint, re-prioritize the product backlog, or adjust the sprint goal. 4. Sprint reviews are usually carried out by way of meetings between Scrum team members including Scrum masters, product owners, developers (development team) including programmer and ui/ux designer. The main purpose of the sprint review is to assess the product and possible completion date. This is also to determine the initial product according to customer needs and stakeholder expectations. Sprint review is conducted at the end of the sprint, where participants examine product improvements and adapt the product backlog and roadmap. All stakeholders will discuss and access if any changes are needed at the next sprint, and decisions may impact product backlog orders [11]. During the sprint review, the development team demonstrates the work they have completed during the sprint, including any new features or improvements to existing features. This provides stakeholders with a clear understanding of the progress that has been made and allows them to offer feedback and suggestions for future sprints.
Another key objective of the sprint review is to gather feedback from stakeholders on the product and its features. This feedback is used to refine the product backlog and ensure that the development team is working on the most valuable items in the next sprint. 5. The Sprint Retrospective is conducted at the last meeting of the sprint after the sprint review. The actual scope of improvement is discussed regarding people and relationships, processes and practices, and Definition of Done. This stage aims to overcome obstacles and problems that exist in the sprint and fix them [11]. By conducting a Sprint Retrospective, the Scrum team can identify areas for improvement and make adjustments to their process to improve efficiency and productivity in future sprints. This helps to ensure that the team is delivering a highquality product that meets the needs of stakeholders.
In the development of the e-bus application, the implementation of the Scrum framework involves a well-defined sprint planning process, clear sprint goals, and effective progress tracking and evaluation. During sprint planning, the development team, along with the product owner, collaboratively determines the scope of work to be accomplished in the upcoming sprint. This includes selecting the items from the product backlog that will contribute to achieving the sprint goals. The sprint goals are specific objectives set for each sprint, outlining what the team aims to deliver and accomplish within the defined timeframe.
To ensure efficient progress tracking and evaluation, the team utilizes various Scrum artifacts and practices. Daily stand-up meetings are conducted, where team members share updates on their work, discuss any challenges or dependencies, and synchronize their efforts. These meetings foster effective collaboration and enable the team to address issues promptly. Additionally, the team employs visual tools such as sprint boards and burndown charts to track the progress of tasks and monitor the remaining work.
Collaboration and communication play vital roles throughout the different stages of the Scrum framework. The development team works closely with the product owner, engaging in regular discussions and feedback sessions to ensure alignment with stakeholder requirements and expectations. Clear communication channels are established to facilitate timely information exchange and decision-making. The team leverages their diverse skills and expertise through cross-functional collaboration, enabling them to collectively tackle challenges and deliver high-quality outcomes.
Moreover, the Scrum framework encourages continuous collaboration and engagement with stakeholders. Sprint reviews provide an opportunity for the development team to showcase their completed work, gather feedback, and refine the product backlog. The team also conducts sprint retrospectives to reflect on their performance, identify areas for improvement, and implement changes in subsequent sprints. These feedback loops foster a culture of continuous learning and improvement within the development team. By following the Scrum framework's principles and practices, the development team ensures a structured approach to sprint planning, goal definition, progress tracking, and collaboration. This enables them to effectively manage their work, adapt to evolving requirements, and deliver valuable increments of the e-bus application in a timely manner.

B. Scrum Teams
Apart from the scrum stage before, scrum must have at least 4 members in the development process. In this project, we have 1 product owner, 1 scrum master, and 2 development teams consisting of 1 UI/UX designer and 1 programmer. This is the job description for scrum roles in this project: 1. Product Owner: • Create product backlog and priority product backlog in each sprint. • Create a user story for each item to be understood by the development team. • Evaluating product development progress in each iteration. • Ensuring the application is in accordance with the wishes of the client 2. Scrum Master: • Assist the development team and product owner to work collaboratively within the Scrum process framework. • Help the team in understanding the Scrum framework. • Take control within the team (become a team facilitator).

UI/UX Designer (Development Team):
• Collaboration with product owner for evaluation of user requirements. • Conduct user research and competitor analysis related to UI/UX design. • Create UI/UX for an application of monitoring and booking e-bus using web application called figma. .4. Programmers (Development Team): • Implementation of visual elements application based on the UI design from the UI/UX Designer. • Manage database and create API for the functionality of the application. • Testing and fixing bugs application.

C. Data Collection
The data collection process for this research involved multiple steps to gather relevant information and insights. Firstly, a comprehensive review of existing literature and studies on e-bus services in Indonesia was conducted to understand the current state and identify key challenges. This review helped inform the development of the proposed application and its features.
Furthermore, qualitative data was collected through interviews and focus group discussions with stakeholders involved in the ebus industry, including government officials, transportation authorities, e-bus operators, and potential users. These interviews and discussions provided valuable insights into the specific needs and preferences of different user groups, as well as the operational requirements and constraints of the e-bus system.

D. Participant Selection
The participants for the interviews and focus group discussions were selected based on their expertise, roles, and involvement in the ebus industry. Government officials and transportation authorities provided insights into policy and regulatory aspects, while e-bus operators shared their operational experiences and challenges. Additionally, potential users were included to gather feedback on their expectations and requirements for an effective e-bus monitoring and booking application. Ebus users will also play an important role as participants. This is not limited in terms of age, occupation, and others.

RESULTS AND DISCUSSION
This section will discuss about several process in scrum. We also provide the design and prototype for e-bus application.
A. Discussion

User Stories
In this section we would like to describe the user expectation for the e-bus application. In our case, the subject in our user stories are passenger and administrator. As passenger, I want to register to get user access for application.

2.
As passenger, I want to login with my email to access the application.

3.
As passenger, I want to login to access the application.

5.
As passenger, I want to have home menu to search bus route, see bus schedule, and book the bus seat.

6.
As passenger, I want to have account menu to change and view my profile, as well as logout my account from the application.

7.
As passenger, I want to have ticket menu to see list of my ticket, check detail information of ticket reservation, and print the ticket.

8.
As administrator, I want to login with authorization to manage the ticketing system as a administrator.

9.
As administrator, I want to have user management dashboard to manage user account.
10. As administrator, I want to have schedule management dashboard to manage the bus schedule.
11. As administrator, I want to have bus route management dashboard to determine the bus departure location and destination.
12. As administrator, I want to logout my account from the application.

Backlog
In this section, we have divide the backlog into two parts, that are product backlog and sprint backlog. The backlog has been created based on user stories. The product backlog is consisted of all of feature that developer wants to build. In the sprint backlog, product owner will select the product backlog that should be finished by developer and make that selected backlog to be priority. The backlog could be seen in Figure 2 and Figure 3.

Definition of Done
The definition of done will be used to make the backlog measurable. The definition of done is consisted of several aspects, such as: a.

Daily Scrum
In the daily scrum, we are usually discuss about three main aspects: 1. What did you do yesterday. 2. What the development team task for today. 3. Is there any impediment.
The meeting is usually held every day, at the same time and place, and it typically lasts for no more than 15 minutes, so that the daily scrum needs to be effective. The daily scum could improve the team communication and give scum team the important information if there is a problem or something that the development should solve. The Daily Scrum helps the team to improve their communication, coordination, and collaboration. It also allows the team to identify and address any issues or impediments quickly, before they become larger problems. By holding the meeting every day, the team can adapt to changing requirements and stay focused on their sprint goal.

Sprint Review
In the sprint review, the scrum team should check the sprint backlog and what the team did in the current sprint. In this section, the developer could demonstrate their work, and the product owner will check and confirm that the work is properly and well done. the sprint review is an important opportunity for the development team to showcase their progress and receive feedback from stakeholders, and for the product owner to ensure that the product is being developed according to their vision and needs.

Sprint Retrospective
In the sprint retrospective, there are several questions that the team should answer: 1) What went well 2) What did not go so well 3) What actions need to improve the development process The sprint retrospective should be planned by the scrum master. The sprint retrospective is not only about discussing development progress in a technical way. In this section, the main topic is mostly teamwork and relationships.

B. Result
In software development, a prototype is a preliminary version of a product or application that is used to test and evaluate its design, functionality, and user experience. The prototype is usually created in the early stages of development and can be revised and refined as the development process progresses. In this section, we would like to show the prototype of the e-bus ticketing application. In the case of the e-bus ticketing application, a UI prototype has been developed using the Figma platform. The UI prototype consists of several screens, including the Home screen, Ticketing screen, Scheduling screen, and login screen. The Home screen serves as the main screen of the application, where users can access various features and functionalities, such as buying tickets, viewing schedules, and managing their account. The Ticketing screen allows users to purchase tickets for a specific route and date, and the Scheduling screen displays the schedule for different routes and times. The login screen is the initial screen that users encounter when they first access the application. Here, users can log in to their account or create a new account if they don't have one already. Overall, the UI prototype provides a visual representation of the e-bus ticketing application and allows developers and stakeholders to test and evaluate its design and functionality before proceeding with the actual development process. This helps to ensure that the application meets the needs and expectations of users and stakeholders. The UI could be seen and described in several Figures below. In software applications, user registration is a process that allows users to create an account by providing their personal information, such as name, email address, username, and password. The purpose of user registration is to authenticate users and provide them with access to certain features and functionalities within the application. In the case of the e-bus ticketing application, users are required to register before they can access the app and book their e-bus tickets. The registration process requires users to provide their email address, username, and password. The email address is used to identify and authenticate the user and is also used to communicate important information related to their e-bus booking, such as confirmation details and any changes to the schedule. The username is a unique identifier that the user can choose for themselves, and the password is a secret combination of characters that the user creates to protect their account. Once the user has completed the registration process, their information is recorded in the app's database, and they can log in to their account using their email address and password. This allows them to access the features and functionalities of the app, such as viewing schedules, booking e-bus tickets, and managing their account settings. The login screen is the first screen that users will see when they open the e-bus ticketing application. This screen allows users to authenticate themselves and access their account information and features. In the login screen, there are several features provided based on user stories, including the ability to register a new account, sign in with an email address, or sign in with a previously registered account. These options provide users with the flexibility to choose how they want to access the app, depending on their preferences. If a user logs in to the app successfully, the app will automatically redirect them to the home screen. The home screen is the main screen of the app and provides users with an overview of their ebus bookings and other important information. The home screen includes several features, such as the ability to view upcoming e-bus schedules, search for available e-bus tickets, and view past e-bus bookings. Users can also access their account settings from the home screen, where they can manage their personal information, payment methods, and other preferences. The home screen could be seen in the Figure 6. The home screen of the e-bus ticketing application provides users with an overview of their upcoming bus bookings and several important features. In the bottom menu of the home screen, there are three options available for users: Ticketing, Scheduling, and Account. The Ticketing option allows users to book a seat and purchase tickets for their preferred e-bus schedule. By selecting this option, users can view available e-bus schedules and select the one that best fits their needs. Users can also choose the number of seats they need and purchase tickets directly from the app. The Scheduling option allows users to check the availability of e-buses and plan their travel accordingly. By selecting this option, users can view upcoming e-bus schedules and check the availability of seats for their preferred dates and times. In the home screen, users can also see an information card that provides an overview of their booked bus information, such as the source and destination of the bus, the date of travel, the number of passengers, and the status of the bus (whether it is waiting or ready). This information card provides users with quick access to their booking information and allows them to stay up-to-date on their upcoming travel plans. Lastly, the Account option allows users to edit their personal information and manage their preferences and settings. By selecting this option, users can update their name, email address, and other information, as well as manage their payment methods and other preferences. The ticketing screen and Scheduling could be seen in Figure 9 and Figure  7. In the scheduling screen we could get some information that related to bus schedule. The information is consisted of location, price, and departure time. If user click the schedule, they will open the seat booking screen to choose the available seat and they could book the selected seat. The booking screen could be seen in Figure 8. To further explain, the list ticket screen is a screen that displays all the tickets that have been booked by the user. Each ticket is represented as a card containing the information mentioned above, including the QR Code. The QR Code is a type of barcode that contains the ticket information and can be easily scanned by the bus driver to verify the ticket's validity. The user can also tap on each ticket card to see more details or cancel the ticket if needed. The ticket list screen provides a convenient way for the user to keep track of all their booked tickets in one place. When the user finished to book the seat, they could check their ticket on the list ticket screen. In the ticket screen, they could check some information, such as: 1) bus status; 2) source; 3) destination; 4) ticket date; 5) qrcode. The QR Code could be used for printing the real ticket on the bus or just show it to the bus driver. The ticketing screen could be seen in the Figure 9. The implementation of the Scrum Framework in the development process of the ebus monitoring and booking application yielded valuable results. However, several challenges were encountered during the implementation, which required proactive measures to overcome. One of the challenges faced was the coordination and collaboration between the UI/UX design and development teams. As both teams worked simultaneously on different aspects of the application, ensuring seamless integration and synchronization posed a significant challenge. To address this, regular communication channels were established, and frequent meetings were held to share progress, clarify requirements, and resolve any conflicts or bottlenecks. By fostering a culture of collaboration and open communication, the teams were able to align their efforts and achieve a cohesive outcome.
Another challenge was the evolving nature of user requirements and expectations. As the development process progressed, feedback from stakeholders and potential users prompted the need for adjustments and refinements to the application features. This required flexibility and adaptability within the Scrum team. Regular sprint reviews and retrospectives were conducted to gather feedback and identify areas for improvement. The team iteratively incorporated these insights into subsequent sprints, resulting in an application that better met the user's needs. Despite the successful implementation of the Scrum Framework, it is important to acknowledge the limitations of the proposed approach. One limitation is the dependency on stakeholder availability and engagement. The active involvement of stakeholders, including government officials, transportation authorities, and e-bus operators, is crucial for the success of the application. Ensuring their continued participation throughout the development process may present challenges due to other competing priorities or limited resources. Efforts were made to mitigate this limitation by establishing clear communication channels and emphasizing the importance of stakeholder involvement.

CONCLUSION
The prototype of the Monitoring and Booking E-Bus application based on QR Code was built using the Scrum methodology. This approach is suitable for software development projects, particularly when the requirements may change frequently, and customer feedback is needed.
The prototype consists of four main menus: Home Menu provides an overview of the user's activities, including their booked bus information. The user can access the ticketing, scheduling, and user menus from this screen. Ticketing Menu used to book a seat and purchase a ticket. The user can select the source and destination, date, and number of passengers. After selecting these options, the user can proceed to payment and receive a QR code for their ticket. Scheduling Menu allows the user to check the availability of the bus. They can view the schedule of available buses for a specific date and time.User Menu provides options to view and edit the user's personal information, including their email, username, and password.
By using Scrum methodology in the sprint review, development team could collaborate with the stakeholders and gather feedback regularly, ensuring that the application meets the users needs and more responsive to change in user requirements. With a sprint retrospective stage that analyzes the performance results during the sprint by correcting poor performance in the next sprint, it will help increase the quality product. But the challenge of using scrum is scrum teams must have access to users (internal organization) or user analytics (outside the organization) and each task must be well defined, as this can affect the estimated cost and time of the project. If it is not well defined then all of these things will not be accurate. In cases like this, tasks can usually be spread over several sprints. The prototype is designed to simplify the process of booking and monitoring e-buses and make it more convenient for the users.
Future research can focus on implement the design system into a real application, it is important to further refine and develop the prototype based on user feedback and needs. This includes conducting usability testing to ensure that the application is user-friendly and easy to use. Usability testing can also help to identify any issues or bugs in the application that need to be fixed before the final release. In addition, it is important to consider the scalability and maintenance of the application. This includes developing a robust and scalable backend infrastructure to support the application and ensuring that the application is easily maintainable and upgradable over time.
To measure the success level of the application, it is important to define key performance indicators (KPIs) that align with the goals and objectives of the application. This could include metrics such as user engagement, user satisfaction, and conversion rates. By regularly monitoring these metrics, it is possible to identify areas for improvement and make datadriven decisions to optimize the application.Furthermore, it is important to continue gathering feedback from users even after the application is released to ensure that it continues to meet their needs and expectations. This can be done through surveys, user testing, and monitoring user feedback through social media or other channels. Implementing the design system into a real application requires a combination of user feedback, technical expertise, and continuous improvement to ensure the success of the application in Monitoring and Booking E-Bus Based on QR Code.