An-Najah National University Faculty of Engineering & Information Technology Computer Engineering Department Software Graduation Project Let’s Go Alaa Ajaj & Zeina Barboor Supervisor: Dr. Samer Arandi Presented in partial fulfilment of the requirements for Bachelor degree in Computer Engineering January 29, 2024 1 Acknowledgment I would like to express my heartfelt gratitude to my project supervisor, Dr. Samer Arandi, for their invaluable guidance, unwavering support, and expert mentorship throughout the entire duration of my graduation project. Their dedication, patience, and insightful feedback were instrumental in shaping the success of this report. I am also deeply thankful to the faculty members and staff of the Computer Engineering department, for their constant encouragement, academic guidance, and for providing me with a platform to explore and expand my knowledge. Their expertise and commitment to excellence have been a constant source of inspiration. Furthermore, I want to extend my appreciation to my fellow classmates and friends who provided me with their insights, assistance, and encouragement during this journey. Your collective efforts have made this accomplishment possible. Finally, I want to express my gratitude to my family for their unwavering support, understanding, and encouragement throughout my academic endeavors. Their love and belief in me have been my driving force. This report stands as a testament to the collective effort and support of all those who have contributed to my academic journey. Your guidance, encouragement, and belief in me have been the cornerstone of my success. Thank you all for being a part of this significant milestone in my life. 2 Abstract To make our lives easier. We thought about making transportation better in our country. Recently, we noticed that there are many buses in our cities, but passengers still have problems knowing where the bus is, when it will arrive at the stop, and many other issues. So, we came up with a project to help solve these transportation problems. So, our project is about creating a comprehensive bus transportation management system that caters to the needs of three distinct user groups: drivers, passengers, and managers of bus companies. This innovative system aims to make transportation easier for passengers who use the app. The mobile application will primarily cater to passengers and drivers. Drivers are presented with a user-friendly interface that showcases their profile information, a detailed list of registered trips they will be driving, and notifications from the bus company's management. They have the ability to share their live location to enhance communication and safety, as well as send alerts to both passengers and the company, with these alerts serving to convey crucial information related to the passengers' trips. For example, if there's a delay or a change in the route, the driver can send an alert to inform passengers promptly. These alerts will be sent to all passengers on the particular trip, ensuring everyone is informed simultaneously. Passengers can displays their profile information, view a list of available trips, including essential trip details such as departure and arrival times, and a list of bus stops along the route, have the ability to track their current journey in real-time using location tracking on a map, estimated time of arrival at their destination, and the upcoming bus stops, for common bus stops, passengers can see all buses passing through, even if they belong to different trips, can provide feedback directly to the bus company's management allows passengers to report any issues, suggest improvements, or share their travel experience, can choose from various payment methods to purchase tickets for their chosen trips, can manage their digital wallet within the app, receive notifications from the bus company's management, keeping them informed about any service updates, changes in schedules, or important announcements. Additionally, they can receive real-time alerts from drivers regarding trip-related information, have the option to mark certain stations as favorites, allowing them to easily access and view the trips that pass through these stations, without having to search for them again, can access detailed information about bus stops. The web portal will be for bus company managers that they have comprehensive control over the entire system. They can effortlessly add, delete, and update information regarding buses, drivers, trips, tickets, and their corresponding prices. Furthermore, they can closely monitor financial transactions, ensuring transparency and accuracy in revenue management. Our system represents a pivotal shift towards smarter, more accessible urban mobility, ultimately benefiting the broader community. There is no such application like this in the West Bank, but in Occupied Territories and other countries, they have an app called 'Moovit' that they use to track buses and trips. 3 Contents List of Figures ...................................................................................................................................5 Introduction ......................................................................................................................................8 1.1 Motivation .............................................................................................................................................. 8 1.2 Aims and Objectives .............................................................................................................................. 9 Constraints and Earlier work .............................................................................................................1 2.1 Constraints ............................................................................................................................................. 1 2.2 Earlier Work ............................................................................................................................................ 1 Literature Review...............................................................................................................................3 Methodology ......................................................................................................................................4 4.1 Non-Functional Requirements .................................................................................................................... 4 4.2 Design ........................................................................................................................................................... 4 4.2.1 Registration and Log In .................................................................................................................................................... 5 4.2.2 User Profile Management ................................................................................................................................................. 5 4.2.3 Wallet and Payment .......................................................................................................................................................... 5 4.2.4 Contact Support ................................................................................................................................................................ 5 4.2.5 Route and Trip Information............................................................................................................................................. 6 4.2.6 Bus Tracking and Station Information ........................................................................................................................... 6 4.2.7 Favorites ............................................................................................................................................................................. 6 4.2.8 Notifications and Alerts .................................................................................................................................................... 6 4.2.9 Ticketing and QR Code .................................................................................................................................................... 7 4.2.10 Trip Reports ..................................................................................................................................................................... 7 4.2.11 Driver Login ..................................................................................................................................................................... 7 4.2.12 Profile Management ........................................................................................................................................................ 8 4.2.13 Adding Trips ...................................................................................................................................................................... 8 4.2.14 Managing Ongoing and Completed Trips .................................................................................................................... 8 4.2.15 Receiving Notifications from Management .................................................................................................................. 8 4.2.16 Real-Time Passenger Management ............................................................................................................................... 8 4.2.17 Ticket Validation via QR Code Scanning ..................................................................................................................... 9 4.2.18 Sending Alerts to Passengers and Management .......................................................................................................... 9 4.2.19 Login Functionality ......................................................................................................................................................... 9 4.2.20 Route, Station, and Trip Management ......................................................................................................................... 9 4.2.21 Driver and Bus Management ......................................................................................................................................... 9 4.2.22 Ticket and Pricing Management ................................................................................................................................. 10 4.2.23 Reports and Alerts ......................................................................................................................................................... 10 4.2.24 Sending Notifications .................................................................................................................................................... 10 4.2.25 Revenue Overview ......................................................................................................................................................... 10 4.3 Implementation........................................................................................................................................... 10 4.3.1 Key Library ....................................................................................................................................................................... 10 4.4 Tools ............................................................................................................................................................ 11 Results and Analysis ........................................................................................................................ 13 5.1 User App ..................................................................................................................................................... 14 5.1.1 Start Page .......................................................................................................................................................................... 14 4 5.1.2 Sign Up Page ................................................................................................................................................................... 15 5.1.3 Login Page ........................................................................................................................................................................ 16 5.1.4 Forget Password Page ..................................................................................................................................................... 17 5.1.5 Home Page ........................................................................................................................................................................ 18 5.1.6 Profile Page & Edit Profile Pages .................................................................................................................................. 19 5.1.7 Notification Page ............................................................................................................................................................. 20 5.1.8 Trips Page ......................................................................................................................................................................... 21 5.1.9 Trip Tracking Page .......................................................................................................................................................... 22 5.1.10 Station Details Page....................................................................................................................................................... 23 5.1.11 Live Location Page ........................................................................................................................................................ 24 5.1.12 Buy Ticket Page .............................................................................................................................................................. 25 5.1.13 Adding Card Page .......................................................................................................................................................... 26 5.1.14 Buy Ticket Successfully Page ........................................................................................................................................ 27 5.1.15 Report Page .................................................................................................................................................................... 28 5.1.16 Favorite Page ................................................................................................................................................................. 29 5.1.17 Contact Us Page .............................................................................................................................................................. 30 5.2 Driver App .................................................................................................................................................. 31 5.2.1 Start Page .......................................................................................................................................................................... 31 5.2.2 Login Page ......................................................................................................................................................................... 32 5.2.3 Home & Profile & Edit Profile Pages ............................................................................................................................ 33 5.2.4 Add Trip & Start Trip Pages ........................................................................................................................................... 34 5.2.5 Your Trips Page................................................................................................................................................................. 35 5.2.6 Notification Page............................................................................................................................................................... 36 5.2.7 Alerts Page ......................................................................................................................................................................... 37 5.2.8 Scanning QR Tickets Page .............................................................................................................................................. 38 5.2.9 End the trip Page ............................................................................................................................................................. 39 5.3 Admin Website ............................................................................................................................................ 40 5.3.1 Login Page ......................................................................................................................................................................... 40 5.3.2 Dashboard Page ................................................................................................................................................................ 41 5.3.3 Driver Alerts Page ............................................................................................................................................................ 42 5.3.4 Sending Notification Page ............................................................................................................................................... 43 5.3.5 Trips Page .......................................................................................................................................................................... 44 5.3.6 Routes Page ....................................................................................................................................................................... 45 5.3.7 Stations of Route Page ..................................................................................................................................................... 46 5.3.8 Stations Page ..................................................................................................................................................................... 47 5.3.9 Drivers Page ...................................................................................................................................................................... 48 5.3.10 Buses Page ....................................................................................................................................................................... 49 5.3.11 Users Pages ...................................................................................................................................................................... 50 5.3.12 Tickets Page..................................................................................................................................................................... 51 5.3.13 Users Reports Page ........................................................................................................................................................ 52 5.3.14 Drivers To Users Alerts Page ........................................................................................................................................ 53 5.3.15 Revenue Overview Page ................................................................................................................................................ 53 Results and Discussion .................................................................................................................... 55 Conclusion ...................................................................................................................................... 56 Bibliography .................................................................................................................................... 57 5 List of Figures Figure 5.3 Before Registration Access Restricted Page ........................................................................... 14 Figure 5.2 Before Registration Page ......................................................................................................... 14 Figure 5.1 Welcome Page ......................................................................................................................... 14 Figure 5.6 Registration Weak Password Page ........................................................................................... 15 Figure 5.5 Registration Empty Fields Message Page ................................................................................ 15 Figure 5.4 Sign Up Page ........................................................................................................................... 15 Figure 5.8 Wrong Password Page ............................................................................................................. 16 Figure 5.7 Login Page ............................................................................................................................... 16 Figure 5.11 Enter New Password Page .................................................................................................... 17 Figure 5.10 Enter Verification Code Page ................................................................................................. 17 Figure 5.9 Enter Email To Reset Password Page ..................................................................................... 17 Figure 5.12 Home Page............................................................................................................................. 18 Figure 5.14 Edit Profile Page .................................................................................................................... 19 Figure 5.13 Profile Page .......................................................................................................................... 19 Figure 5.16 Notification After Read Page ................................................................................................. 20 Figure 5.15 Notification Before Read Page .............................................................................................. 20 Figure 5.19 Alert Dialog for A Trip Page .................................................................................................. 21 Figure 5.18 Filtered Trips By City Page.................................................................................................... 21 Figure 5.17 Trips Page .............................................................................................................................. 21 Figure 5.21 Unavailable Actions For Trips Not Yet Started Page.............................................................. 22 Figure 5.20 Not Started Trip Tracking Page .............................................................................................. 22 Figure 5.23 Station Details Page ............................................................................................................... 23 Figure 5.22 Trip Tracking Page ................................................................................................................ 23 Figure 5.25 Live Location Page ................................................................................................................ 24 Figure 5.26 Passed Stations In Trip Tracking Page ................................................................................... 24 Figure 5.24 Started Trip Tracking Page .................................................................................................... 24 Figure 5.29 First Adding Card Page .......................................................................................................... 25 Figure 5.28 Not Have Card To Buy Page .................................................................................................. 25 Figure 5.27 Choosing Station And Display Ticket Price Page .................................................................. 25 Figure 5.32 My Wallet Page ...................................................................................................................... 26 Figure 5.31 Success Adding Card Page .................................................................................................... 26 Figure 5.30 Adding Card Information Page .............................................................................................. 26 Figure 5.36 My Tickets Page .................................................................................................................... 27 Figure 5.34 Verifying Payment Page ......................................................................................................... 27 Figure 5.35 Ticket QR Code Page............................................................................................................. 27 Figure 5.33 Choosing The Card To Pay Page............................................................................................ 27 Figure 5.38 Report Page ........................................................................................................................... 28 Figure 5.37 Go To Report Page ................................................................................................................. 28 Figure 5.40 Favorite Page ......................................................................................................................... 29 Figure 5.39 Add To Favorite Page ............................................................................................................ 29 Figure 5.41 Contact Us Page..................................................................................................................... 30 6 Figure 5.44 Before Login Access Restricted Page .................................................................................... 31 Figure 5.43 Before Login Page ................................................................................................................. 31 Figure 5.42 Welcome Page ....................................................................................................................... 31 Figure 5.45 Login Page ............................................................................................................................. 32 Figure 5.48 Edit Profile Page .................................................................................................................... 33 Figure 5.47 Profile Page ........................................................................................................................... 33 Figure 5.46 Home Page............................................................................................................................. 33 Figure 5.51 Start Trip Page ....................................................................................................................... 34 Figure 5.50 Before Start Trip Page ........................................................................................................... 34 Figure 5.49 Add Trip Page ........................................................................................................................ 34 Figure 5.53 Your Trip Page ....................................................................................................................... 35 Figure 5.52 After Start Trip Page .............................................................................................................. 35 Figure 5.55 Notification After Read Page ................................................................................................. 36 Figure 5.54 Notification Before Read Page .............................................................................................. 36 Figure 5.56 Alert Page .............................................................................................................................. 37 Figure 5.60 Scanning QR Of A Previously Scanned Or Non-existent Ticket ............................................ 38 Figure 5.59 Scanning QR Ticket For The First Time Page ....................................................................... 38 Figure 5.58 QR code Page ........................................................................................................................ 38 Figure 5.61 End Trip Page ........................................................................................................................ 39 Figure 5.62 Login Page ............................................................................................................................. 40 Figure 5.63 Dashboard Page ..................................................................................................................... 41 Figure 5.64 Sending Alert To Driver Page ................................................................................................ 42 Figure 5.68 Sending Notification To Driver Page ..................................................................................... 43 Figure 5.67 Sending Notification To User Page ........................................................................................ 43 Figure 5.66 Sending Notification Page ..................................................................................................... 43 Figure 5.71 Search Trips Using City Name Page ...................................................................................... 44 Figure 5.69 Open Dashboard Page ............................................................................................................ 44 Figure 5.70 Trips Page .............................................................................................................................. 44 Figure 5.76 Refuse Delete Routes if The Trip Is Not Finished.................................................................. 45 Figure 5.75 Edit Route Page ..................................................................................................................... 45 Figure 5.74 Add New Route Page ............................................................................................................. 45 Figure 5.73 Search Routes Using City Name Page ................................................................................... 45 Figure 5.72 Routes Page ........................................................................................................................... 45 Figure 5.77 Add Station To Route Page .................................................................................................... 46 Figure 5.78 Show Stations For Routes Page ............................................................................................. 46 Figure 5.81 Edit Station Page ................................................................................................................... 47 Figure 5.80 Add New Station Page ........................................................................................................... 47 Figure 5.79 Stations Page ......................................................................................................................... 47 Figure 5.83 Add New Driver Page ............................................................................................................ 48 Figure 5.82 Drivers Page .......................................................................................................................... 48 Figure 5.86 Edit Bus Page ........................................................................................................................ 49 Figure 5.85 Add Bus Page ........................................................................................................................ 49 Figure 5.84 Buses Page ............................................................................................................................. 49 Figure 5.87 Users Page ............................................................................................................................. 50 7 Figure 5.89 Select Date Page .................................................................................................................... 51 Figure 5.88 Tickets Page ........................................................................................................................... 51 Figure 5.90 Filter And Review Ticket and Total Revenue Page ................................................................ 51 Figure 5.91 Users Reports Page ................................................................................................................ 52 Figure 5.92 Drivers To Users Alerts Page ................................................................................................. 53 Figure 5.95 Monthly Revenues Page ........................................................................................................ 54 Figure 5.94 Weekly Revenues Page .......................................................................................................... 54 Figure 5.93 Daily Revenues Page ............................................................................................................. 54 8 Chapter 1 Introduction In the current digital age, technology is essential to improving many facets of daily life. Our project is centered on transforming public transport, with a special emphasis on bus services. Even though there are a lot of buses in cities, passengers frequently have trouble finding reliable information about where the buses are. arrival timings and other important information. We have created a thorough bus transportation management system with three main user groups: drivers, passengers, and bus company managers. This system is not just an application; it is a transformative solution aimed at simplifying and improving the overall public transportation experience. 1.1 Motivation The primary motivation for our project is the observed gap in efficient, real-time communication and management in the public transportation sector. Our goal is to make commuting more convenient and transparent for passengers, provide drivers with an effective tool for communication and trip management, and offer bus company managers a robust platform for operational oversight. We aim to enhance the efficiency of public transportation, reduce uncertainties for passengers, and improve operational management for bus companies. This initiative also contributes to the betterment of our society by offering an advanced solution that promotes sustainable and smart urban mobility. 9 1.2 Aims and Objectives The primary objective of our project is to develop a user-friendly, efficient, and reliable bus transportation management system, catering to three key user groups: passengers, drivers, and bus company managers. For passengers, the mobile application provides real-time bus tracking on a map, detailed information about trips and bus stops, the ability to mark favorite stations, and options for digital ticket purchasing and feedback. Drivers benefit from a customized interface displaying their profile, trip schedules, and the ability to share live locations and send alerts about trip updates, enhancing communication and safety. Bus company managers can efficiently oversee operations through a web portal that manages buses, drivers, trips, ticketing, and financial transactions. This system aims to improve the daily commute for passengers, streamline the management of bus fleets, and enhance urban mobility, contributing to the broader community by providing economic opportunities. Overall, our project is a significant step towards creating a more connected, efficient, and user-friendly urban transit system in our region. January 29, 2024 1 Chapter 2 Constraints and Earlier work 2.1 Constraints During the development of our bus transportation management system, we encountered several key challenges. One major issue was learning and applying specific programming languages such as Flutter and Node.js, which were crucial for our project but initially outside our expertise. We also faced technical difficulties with integrating Google Maps for live location tracking and time estimating, which required adding a credit card for access to Google's services. Running the three applications simultaneously (user app, driver app, and admin web portal) posed significant performance issues, often leading to frequent restarts of the emulators due to the heavy load on our devices. Time management was another challenge, as we had to balance the project with our academic responsibilities, often leading to tight scheduling and prioritization. To overcome these obstacles, we sought advice from experienced professionals in mobile app development and dedicated additional time to independent research and problem-solving. This approach helped us navigate through these challenges and continue our project effectively. 2.2 Earlier Work In the initial phase of our project, we conducted extensive research on existing transportation and bus tracking applications. This research was focused on understanding how these similar applications function and identifying the specific features and services that are needed in our region. We realized that, despite the presence of global applications like Moovit, there was a lack of such comprehensive solutions tailored to the unique requirements of our local context. This gap in the market led to the conceptualization of our bus transportation management system. Our objective was to develop an application that not only mirrored the functionalities of existing global platforms but also incorporated additional features and customizations that would specifically 2 address the needs of our local users, including passengers, drivers, and bus company managers. By thoroughly studying these existing applications, we were able to identify key functionalities that were missing in our region and integrate them into our system. This approach ensured that our application was not just replicating existing models but also innovating and adapting to the specific transportation challenges and requirements of our area. 3 Chapter 3 Literature Review Our innovative bus transportation management system project is conceived to tackle the prevalent issues in urban commuting within our region. This initiative is notably distinctive and pioneering, as it introduces the region's first all-encompassing digital solution specifically designed for the complexities of bus transportation. The system aims to amalgamate various functionalities, addressing the diverse needs of passengers, bus drivers, and transit company administrators, thereby streamlining the intricate dynamics of urban public transport. Current data and research underscore the escalating necessity for effective public transit systems, especially in urban locales where commuter numbers are on a steady incline. This increase necessitates dependable, punctual, and accessible transportation services. Traditional bus transit management, often hindered by delayed services, absence of live updates, and inefficient routing, has prompted the need for an innovative and technologically advanced approach. A significant issue for transit users is the lack of instantaneous access to information about bus whereabouts, time schedules, and available seating. Historically, commuters have had to depend on inflexible timetables with no updates on real-time changes, leading to prolonged and uncertain travel times. In a similar vein, bus operators and transit company executives have relied on antiquated management systems that lack capabilities like live tracking, effective communication channels, and analytical tools for optimizing routes and timetables. This literature review emphasizes the critical importance and transformative potential of our bus transportation management system. Utilizing cutting-edge technology, the application is designed to modernize and overhaul conventional public transit management methods. It focuses on improving communication channels, enhancing the efficiency of route and schedule management, offering live updates, and ultimately providing a more dependable and user-centric experience for everyone involved in the public transport ecosystem. The overarching aim is to redefine the urban commute, making it more streamlined, accessible, and sustainable for the wider community. 4 Chapter 4 Methodology 4.1 Non-Functional Requirements Security: Our bus tracking app features a robust security framework to protect sensitive user information. It includes a secure login system requiring strong passwords with a mix of characters, and an account recovery option using verification codes sent to the user's email, ensuring safe password resets. Ease-of-use: The app is designed with user-friendliness in mind. Each page features intuitive icons and links for easy navigation, allowing users to swiftly move between different sections and return to previous pages without hassle. Usability: Aimed at being self-explanatory and intuitive, the app enables users to easily understand its functionality without needing professional assistance. The interface is straightforward, reducing the learning curve for new users. 4.2 Design Initial planning for the design phase was initiated at the onset of the development process, emphasizing the creation of a user-friendly graphical interface tailored to the application's functions. Through an extensive analysis of similar applications, the UI/UX design was specifically adapted to meet the distinct needs of diverse target audiences, including passengers, drivers, and bus company managers. This approach ensures a unique user experience, distinguishing the application in its category. Additionally, the development encompasses three separate applications: one for users, another for drivers, and a web-based platform for administrative purposes. 5 4.2.1 Registration and Log In Our project features three distinct platforms: a user app, a driver app, and an admin website, each with tailored registration and login processes. For the user app, registration involves providing unique personal information like username, email, and phone number, with checks in place to ensure no duplication with existing users. Passwords must be robust and meet specific security criteria, and both usernames and emails have format requirements. Users confirm their passwords for accuracy and security. Existing users log in with their registered email and password, with the system balancing ease of use and security. If a user forgets their password, they can reset it by verifying a code sent to their registered email. Drivers and administrators have dedicated login portals for their respective apps and website, streamlined for their specific roles. This comprehensive registration and login framework ensures user-friendliness, robust security, and data integrity, providing a secure and seamless experience for all users, drivers, and administrators. 4.2.2 User Profile Management Users can view and edit their profiles, including updating passwords and personal information, ensuring a personalized and secure user experience. 4.2.3 Wallet and Payment The wallet feature allows users to manage their credit cards and payment options, enhancing the ticket purchasing process's convenience and security. 4.2.4 Contact Support A dedicated section for users to contact support via email for any issues or inquiries, ensuring effective communication and timely assistance. 6 4.2.5 Route and Trip Information This feature provides comprehensive information about bus routes and trips. Users can access real- time updates on trip statuses, schedules, and details such as bus numbers and route names. An added functionality allows users to filter this information by city, enhancing the user’s ability to find relevant trips quickly and efficiently. 4.2.6 Bus Tracking and Station Information The bus tracking and station information feature is a core element of the app. It enables real-time tracking of buses on their routes, displayed visually on a map with station markers. Each station includes detailed information, such as estimated arrival times of arrival at each stop. Users can also view all bus trips passing through each station. 4.2.7 Favorites The favorites feature in the app is specially designed for enhancing user convenience. It allows users to mark certain bus stations as 'favorites', enabling them to access these frequently used or preferred stops quickly in future interactions with the app. This functionality is particularly useful for regular commuters who consistently use specific stations. The ease of accessing these favorites saves time and simplifies the process of searching trips, making it a highly user-centric aspect of the app. 4.2.8 Notifications and Alerts Notifications: System-wide notifications are crucial for communicating broad updates and announcements from the bus company to all app users. These notifications include a variety of information not limited to individual trips, such as service changes during holidays, strikes, or mourning periods, and important updates about the app itself. This ensures that all users stay informed about significant overall changes or events that might impact their use of the app or travel plans. 7 Alerts: The alert system in the app is specifically designed for real-time communication between drivers and passengers regarding individual trips. These alerts are particularly important for passengers who have not yet boarded the bus. For example, if a trip has already started and the bus is enroute, drivers can send alerts to inform passengers who plan to board at subsequent stops. This feature is particularly useful for passengers intending to board from the middle of the route. It allows them to receive updates directly from the driver, such as any changes in the route or schedule. This direct line of communication ensures passengers are well-informed and can plan their boarding accordingly, enhancing the convenience and reliability of the service. This approach ensures that all users, whether on the bus or waiting to board, are kept up-to-date with the latest and most relevant information, greatly enhancing their overall travel experience. 4.2.9 Ticketing and QR Code The app's ticketing feature allows passengers to buy tickets on the bus and generates a unique QR code for each purchase. This QR code is scanned by the driver when passengers disembark at their paid station, streamlining the process. All tickets are conveniently stored in the app, providing easy access and efficient management of travel transactions. 4.2.10 Trip Reports The app allows users to submit detailed reports on the trips they have taken. This function is pivotal for service enhancement, as it enables the management to gather direct insights from users' experiences. Reports can address multiple facets of the journey, such as bus conditions, driver conduct, and the general quality of the trip. This direct reporting mechanism helps in identifying areas for improvement, ensuring that user experiences are continually refined and elevated 4.2.11 Driver Login Drivers start by logging into the app using their credentials. This secure login process ensures that only authorized drivers can access the app and manage their schedules and trips. 8 4.2.12 Profile Management Once logged in, drivers have access to their personal profile where they can view and edit their information. This includes personal details like name, contact information, and driving license details. They can also change their passwords for security purposes. 4.2.13 Adding Trips In the driver's app, the 'Adding Trips' feature is streamlined for efficiency. When drivers begin their journey, the app automatically updates the trip status to 'Started.' This change, along with the estimated arrival time, is computed based on the driver's current location and becomes visible to users in real-time. Simultaneously, the app begins sharing the driver's live location, enabling passengers to track the bus's progress along the route. This automation eliminates the need for manual inputs when starting a trip, ensuring that trip details are accurately and promptly updated for the convenience of both drivers and passengers. 4.2.14 Managing Ongoing and Completed Trips Drivers can manage their ongoing and completed trips. For ongoing trips, they can update trip statuses in real-time, including starting or ending a trip. For completed trips, they can review trip details and performance. 4.2.15 Receiving Notifications from Management The app also allows drivers to receive notifications from bus company management. This feature keeps drivers updated on any organizational changes, new policies, or other important information that they need to be aware of. 4.2.16 Real-Time Passenger Management The driver's app streamlines passenger management by recording the exit of cash passengers manually and verifying QR-coded tickets upon alighting. This process ensures accurate fare collection and adherence to passenger safety and capacity guidelines. 9 4.2.17 Ticket Validation via QR Code Scanning Drivers use the app's QR code scanner to validate passengers' tickets as they exit the bus, confirming that the tickets are valid for the specific trip and station, thus streamlining the boarding process and preventing fare evasion. 4.2.18 Sending Alerts to Passengers and Management The app enables drivers to send real-time alerts about trip-related updates, such as delays or route changes, to both passengers and the bus company management, ensuring effective communication and coordination. 4.2.19 Login Functionality The admin website begins with a secure login functionality, ensuring that access is restricted to authorized personnel only. Administrators are required to use their unique credentials to log in, which safeguards sensitive operational and user data. 4.2.20 Route, Station, and Trip Management Administrators on the website can add, update, and delete routes and stations, adapting transit services to align with passenger needs and operational capabilities. They can specifically add a station to a particular route, view and remove it if necessary. Furthermore, they have the functionality to filter trips, routes and stations by city, allowing for efficient management of localized services. This feature enhances the administrators' ability to effectively organize and oversee the transit system in various urban areas. 4.2.21 Driver and Bus Management The platform enables management of driver profiles and bus fleets. Administrators can add new drivers and buses, update existing information, or remove them from the system as needed. 10 4.2.22 Ticket and Pricing Management Administrators have control over ticket pricing. can manage user accounts and oversee ticket sales, including accessing details of QR code-based ticket purchases. They also have the capability to calculate total revenue from ticket sales on any selected date, aiding in efficient financial management. 4.2.23 Reports and Alerts The website provides functionality to view reports submitted by users and receive immediate alerts from drivers. These alerts are crucial for real-time updates and ensuring prompt attention to any issues or concerns. 4.2.24 Sending Notifications 4.2.24 Sending Notifications Administrators have the ability to send notifications to all drivers, specific drivers based on their current trips, and users. This feature is essential for communicating important updates, changes in service, or any other critical information. 4.2.25 Revenue Overview This tool allows the manager to assess earnings from cash payments and QR ticket sales on a daily, weekly, and monthly basis, aiding in financial oversight. 4.3 Implementation 4.3.1 Key Library Server Side MySQL: We chose MySQL for our database needs due to its user-friendly interface and widespread popularity in software development. It's known for its ease of use, making it an ideal choice for this project. 11 Node.js with RESTful API: Node.js is used as an intermediary for server-side operations. It facilitates seamless communication and data exchange between the MySQL database and the user- facing application. The integration of RESTful API with Node.js ensures efficient handling of requests and smooth data flow, enhancing the user experience. Client Side: Flutter: This UI toolkit from Google is used for crafting natively compiled applications for mobile, web, and desktop from a single codebase. Flutter is chosen for its ability to provide high- quality, natively compiled applications across various platforms, enhancing the development process's efficiency and effectiveness. Dart is the primary language used in Flutter development, offering a reactive framework that simplifies the creation of visually attractive and functionally rich applications. JavaScript: Making up 10.9% of the codebase, JavaScript is used primarily in conjunction with Node.js to handle server-side operations and to build dynamic user interfaces. 4.4 Tools Android Studio: the official IDE for Android app development, is built on IntelliJ IDEA. It streamlines Android app creation with features like an intuitive code editor, a flexible layout editor for designing user interfaces, and integrated Android SDKs for accessing the latest Android features. The IDE also includes a powerful emulator for testing apps across various Android devices and configurations, alongside robust build tools for compiling, debugging, and packaging applications. Its tailored environment for Android development makes it an indispensable tool for crafting high-quality Android apps. Visual Studio Code (VS Code): is a lightweight yet powerful source code editor from Microsoft, compatible with Windows, macOS, and Linux. Known for its fast performance, it supports a wide range of programming languages including JavaScript, TypeScript, and Node.js, and offers extensive extensibility through a vast ecosystem of extensions. VS Code features integrated Git control for efficient versioning, advanced debugging tools, and extensive customization options to 12 tailor the editor to specific development needs. Its flexibility and comprehensive functionality make it a favored choice for a variety of software development tasks. XAMPP: is a free and open-source cross-platform web server solution stack package developed by Apache Friends. It simplifies the installation and deployment of a local web server environment, which is essential for testing and developing web applications. XAMPP includes the Apache HTTP Server, MariaDB database, and interpreters for scripts written in PHP and Perl. Its ease of setup and use makes it a popular choice for developers who need a reliable and straightforward local testing environment. XAMPP's portability and compatibility with multiple operating systems further add to its utility in diverse development scenarios. 13 Chapter 5 Results and Analysis The project delivers a multifaceted transportation solution encompassing a tablet app for bus drivers, a mobile app for passengers, and an administrative web portal. It aims to optimize urban transit by improving route management for drivers and enhancing travel convenience for users, while also providing robust operational tools for administrators. This integrated system not only streamlines public transportation but also fosters job creation and economic growth within the tech sector. 14 5.1 User App 5.1.1 Start Page The app opens with a welcoming "Let's Go" screen. After tapping "Get Started" button, users are led to a page that outlines the app's features available via the navbar. However, full access is exclusive to registered users, prompting unregistered users to sign up to utilize the app's complete offerings such as route viewing, live tracking, and ticket purchases. This setup ensures a secure, user-specific experience while encouraging new users to register. Figure 5.1 Welcome Page Figure 5.2 Before Registration Page Figure 5.3 Before Registration Access Restricted Page 15 5.1.2 Sign Up Page In the app's flow, clicking "Yes, I'm Ready!" or "Let's Go" leads new users to a sign-up page where they create a unique account with a non-duplicable username, a unique email, and a phone number. Passwords must be strong and email addresses correctly formatted. Figure 5.4 Sign Up Page Figure 5.5 Registration Empty Fields Message Page Figure 5.6 Registration Weak Password Page 16 5.1.3 Login Page On the login page, returning users can enter their unique email and password to access the app. The system ensures email format validity and password strength for secure sign-ins. Figure 5.7 Login Page Figure 5.8 Wrong Password Page 17 5.1.4 Forget Password Page If a user forgets their password, our app provides a secure password reset process. From the login page, the user can tap on the "Forgot password?" link, which leads to a password reset page. Here, they are prompted to enter their registered email address to receive a reset code. Once the reset code is sent to their email, they can enter this code into the app to verify their identity. After verification, they are directed to a new page where they can set a new password, ensuring they regain access to their account with strong authentication measures in place. Figure 5.9 Enter Email To Reset Password Page Figure 5.10 Enter Verification Code Page Figure 5.11 Enter New Password Page 18 5.1.5 Home Page The home page of our app, accessible to logged-in users, is designed to be the central hub for all their transit needs. Here, users can effortlessly access all app features, including user profile, live tracking of buses, route planning, ticket purchases, and viewing notifications. The intuitive design and seamless navigation ensure that users can find what they need quickly and start their day with an exciting bus ride planned. Figure 5.12 Home Page 19 5.1.6 Profile Page & Edit Profile Pages The user profile section of the app is a personal space for users to view and manage their account information. Here, they can see their name, email, and a profile picture, providing a personalized touch to the user experience. For updates or changes, users can navigate to the "Edit Profile" page where they can modify details such as their username, email, password, image and phone number. This ensures that users keep their information current and secure. The process is straightforward: make the desired changes and tap "Save Changes" to update the profile instantly. Figure 5.13 Profile Page Figure 5.14 Edit Profile Page 20 5.1.7 Notification Page The app's notification page features color-coded alerts to signal new updates, changing from bold to faded once read, ensuring users easily track important information. Figure 5.15 Notification Before Read Page Figure 5.16 Notification After Read Page 21 5.1.8 Trips Page The routes page in the app lists active trips and allows users to filter by city. Each trip's status is displayed, indicating whether it has started, with finished trips not shown to keep the focus on current and upcoming journeys. Alerts from the driver, like traffic delays, are highlighted for trips in progress. Figure 5.17 Trips Page Figure 5.18 Filtered Trips By City Page Figure 5.19 Alert Dialog for A Trip Page 22 5.1.9 Trip Tracking Page On the trip tracking page, users are presented with a comprehensive view of all the stations included in their selected trip, represented by markers on the map. If the trip has not commenced, the estimated time of arrival (ETA) for each station is not yet available. Additionally, options such as purchasing tickets or viewing the live location of the bus are disabled until the trip officially starts. This ensures users have access to accurate and timely information for their journey planning. Figure 5.20 Not Started Trip Tracking Page Figure 5.21 Unavailable Actions For Trips Not Yet Started Page 23 5.1.10 Station Details Page For each station selected, users can view all the bus lines that pass through, along with their departure times. For buses that haven't started their route, the departure time will be listed as "Not Started." Figure 5.22 Trip Tracking Page Figure 5.23 Station Details Page 24 5.1.11 Live Location Page When a trip is active, the Live Trip Tracking Interface offers a dynamic and real-time monitoring system, allowing users to view the bus's current location on a map and track its progress. As the bus progresses, the app provides up-to-date, station-by-station updates, continuously adjusting the estimated arrival times for each stop as the bus approaches. Upon passing each station, the status is updated to 'passed,' ensuring users receive timely and precise information about the journey's advancement. Figure 5.24 Started Trip Tracking Page Figure 5.25 Live Location Page Figure 5.26 Passed Stations In Trip Tracking Page 25 5.1.12 Buy Ticket Page When a user opts to buy a bus ticket within the app but hasn't yet added a payment card, a prompt appears instructing them to add a card. Figure 5.27 Choosing Station And Display Ticket Price Page Figure 5.28 Not Have Card To Buy Page Figure 5.29 First Adding Card Page 26 5.1.13 Adding Card Page In the app, if a user needs to add a payment method, they are guided to the card addition section where they input their card information. After successful verification, the card is shown in the 'My Wallet' section for future transactions. Additionally, the user has the option to remove the card from their wallet if necessary. Figure 5.30 Adding Card Information Page Figure 5.31 Success Adding Card Page Figure 5.32 My Wallet Page 27 5.1.14 Buy Ticket Successfully Page After that, the user selects the new card for payment, confirms the transaction with their password, and a QR code for the bus ticket is generated. This QR code is used for validation upon exiting the bus. The purchased tickets are also listed in the 'My Tickets' section for easy access and management. Figure 5.33 Choosing The Card To Pay Page Figure 5.34 Verifying Payment Page Figure 5.35 Ticket QR Code Page Figure 5.36 My Tickets Page 28 5.1.15 Report Page Additionally, the app provides a feature for users to report any issues with their trips directly through the app, contributing to service improvements and overall user experience. Figure 5.37 Go To Report Page Figure 5.38 Report Page 29 5.1.16 Favorite Page Users can also add frequently used stations to their favorites for easier access in the future, streamlining the process for future ticket purchases. If a user has favorite stations that are no longer needed or preferred, they can remove them from their favorites list, maintaining a customized and up-to-date list of frequently used stations for their convenience. Figure 5.39 Add To Favorite Page Figure 5.40 Favorite Page 30 5.1.17 Contact Us Page The app's 'Contact Us' feature allows users to easily report issues, such as updating personal information, directly to the service team. With a simple form submission through the app, the user's concerns, identified by their User ID and email, are promptly sent to customer support for resolution, ensuring a seamless support experience. Figure 5.41 Contact Us Page 31 5.2 Driver App 5.2.1 Start Page The driver app opens with a welcoming screen displaying the logo and a 'Get Started' button. To add trips and access the app's full features, drivers must log in, ensuring secure and authorized use. Unregistered or logged-out drivers receive a prompt to log in when attempting to add a journey, maintaining the system's secure operation. Figure 5.42 Welcome Page Figure 5.43 Before Login Page Figure 5.44 Before Login Access Restricted Page 32 5.2.2 Login Page The driver login interface offers a welcoming "Welcome Back" message, fields for email and password entry, and a "Forgot password?" link for account recovery. A distinct "Log In" button stands out, inviting drivers to proceed and manage their trips. Figure 5.45 Login Page 33 5.2.3 Home & Profile & Edit Profile Pages Upon successful login, the driver app displays a screen with the "Add Your Journey" feature, inviting drivers to input route details. The interface shows the current date, and the availability status automatically switches to "Busy" when a trip is added or underway, reverting back to "Available" once the trip concludes or when no active trip is present. The profile section on this screen provides quick access to the driver's personal details, with options to edit the profile or log out, ensuring ease of use and efficient management of their work status. Figure 5.46 Home Page Figure 5.47 Profile Page Figure 5.48 Edit Profile Page 34 5.2.4 Add Trip & Start Trip Pages When drivers are logged in to the "Let's Go" app, they're prompted to add their trips via a dialog box overlaid on a map. Drivers select their region from a dropdown menu and confirm by clicking "Add the Trip," which adds the journey to their itinerary. The trip's status is displayed as "Not Started" in the user application until the driver initiates the trip Figure 5.49 Add Trip Page Figure 5.50 Before Start Trip Page Figure 5.51 Start Trip Page 35 5.2.5 Your Trips Page Upon starting a trip, the driver app transitions to the "Your Trips" section, allowing drivers to track their active and completed trips. The display includes trip details such as the name, count of cash and QR passengers, and the date. It also features an option to conclude the trip. Simultaneously, the trip's status updates to "Started" in the user app, and the driver's live location begins to be shared automatically, enabling passengers to track the bus in real time. Figure 5.52 After Start Trip Page Figure 5.53 Your Trip Page 36 5.2.6 Notification Page drivers can also access notifications related to app updates and important alerts directly within this section and on the home page, keeping them informed while on the go. Figure 5.54 Notification Before Read Page Figure 5.55 Notification After Read Page 37 5.2.7 Alerts Page The driver's alert system in the app ensures crucial information about trips, such as mechanical issues or changes in schedule, is communicated efficiently. Drivers can choose to notify the management or passengers directly. Upon sending an alert to passengers, the driver’s message promptly appears in the user app, ensuring that passengers receive real-time updates. This feature is particularly useful for passengers planning to board along the route, keeping both the operational team and customers promptly informed for a smoother travel experience. Figure 5.56 Alert Page Figure 5.57 Send Alert To User App Page 38 5.2.8 Scanning QR Tickets Page When passengers are ready to disembark at their designated station, they can present their QR code, which the driver scans to verify the ticket's validity. This screen confirms successful payment and displays the QR code for the passenger's ticket. Upon scanning, detailed ticket information is shown. If a ticket has already been used or for another trip, the scan will return as invalid, ensuring that only valid and current tickets are accepted for the journey. This system streamlines the process, allowing for efficient and accurate passenger management on board. Figure 5.58 QR code Page Figure 5.59 Scanning QR Ticket For The First Time Page Figure 5.60 Scanning QR Of A Previously Scanned Or Non-existent Ticket 39 5.2.9 End the trip Page Figure 5.61 End Trip Page After a trip is complete and all passengers, both cash and QR, have been accounted for, the driver has the option to end the trip. Pressing "End the Trip" concludes the journey, updates the driver's status to available, and removes the trip from visibility in the user app, indicating its completion. This feature ensures an organized transition between completed and upcoming trips for the driver, while keeping the user app updated with real-time trip statuses. 40 5.3 Admin Website 5.3.1 Login Page The admin login page of the "Let's Go" app displays a clear interface for email and password entry, highlighted by a bold "Sign In" button, welcoming administrators to access the management dashboard. Figure 5.62 Login Page 41 5.3.2 Dashboard Page In the admin panel of the bus tracking application, the dashboard serves as the operational hub. It displays real-time data, including the total number of buses currently in service, active trips, registered drivers, and available routes. This centralized dashboard allows administrators to effectively monitor the bus service, ensuring efficient operations. Figure 5.63 Dashboard Page 42 5.3.3 Driver Alerts Page Additionally, the admin panel is equipped with an alert system. Through this system, administrators receive immediate notifications from drivers regarding any unscheduled stops or requests for assistance. This feature facilitates prompt administrative response to any issues that may arise during the trips, ensuring that any potential disruptions to service are managed swiftly and effectively. Figure 5.64 Sending Alert To Driver Page Figure 5.65 Alerts Page 43 5.3.4 Sending Notification Page Moreover, administrators have the capability to send notifications directly to users and drivers, fostering clear and immediate communication across the platform. Figure 5.66 Sending Notification Page Figure 5.67 Sending Notification To User Page Figure 5.68 Sending Notification To Driver Page Figure 5.96 Sending Notification To A Specific Driver Page 44 5.3.5 Trips Page The admin panel includes a feature that allows the admin to filter and view trip information by city. This enhances operational management by enabling the admin to focus on and analyze trips within a specific geographic area, making it easier to oversee and coordinate the transportation services offered in different locations. Figure 5.69 Open Dashboard Page Figure 5.70 Trips Page Figure 5.71 Search Trips Using City Name Page 45 5.3.6 Routes Page The admin panel allows for efficient route management, enabling the addition and editing of routes. However, it restricts the deletion of any route that has been utilized for a trip, ensuring the integrity of trip records and operational continuity. Figure 5.72 Routes Page Figure 5.73 Search Routes Using City Name Page Figure 5.74 Add New Route Page Figure 5.75 Edit Route Page Figure 5.76 Refuse Delete Routes if The Trip Is Not Finished 46 5.3.7 Stations of Route Page The admin panel allows for organizing bus routes by adding existing stations from a predefined list. Stations are added to routes with sequence numbers to dictate the order of stations, ensuring a consistent and efficient itinerary for passengers. They can also be removed as needed to keep the service updated. Figure 5.77 Add Station To Route Page Figure 5.78 Show Stations For Routes Page 47 5.3.8 Stations Page The 'Stations' page in the admin panel displays a searchable list of bus stops by city, including details like ID, name, coordinates, and ticket price, with options to edit or delete each station. Figure 5.79 Stations Page Figure 5.80 Add New Station Page Figure 5.81 Edit Station Page 48 5.3.9 Drivers Page Admins can oversee driver details, with options to add, or delete driver records. The interface provides quick access to driver information and status updates, simplifying fleet management tasks. Figure 5.82 Drivers Page Figure 5.83 Add New Driver Page 49 5.3.10 Buses Page This section allows for efficient tracking and updating of the bus fleet, including assigning drivers to buses. It facilitates the addition, editing, or removal of buses from the system with ease. Figure 5.84 Buses Page Figure 5.85 Add Bus Page Figure 5.86 Edit Bus Page 50 5.3.11 Users Pages The page displays user information including User ID, Email, Username, and Phone, allowing admins to view and manage user accounts effectively within the system. Figure 5.87 Users Page 51 5.3.12 Tickets Page The 'Tickets' page allows administrators to manage ticket sales, displaying IDs, user names, routes, stations, and prices. It includes date filters for daily sales review and administrative actions on transactions. Figure 5.88 Tickets Page Figure 5.89 Select Date Page Figure 5.90 Filter And Review Ticket and Total Revenue Page 52 5.3.13 Users Reports Page The 'Reports' page assists administrators in overseeing user reports on driver conduct and trip incidents, with details like report ID, issue type, associated trip, and timings. Figure 5.91 Users Reports Page 53 5.3.14 Drivers To Users Alerts Page The 'Alerts' page displays alerts, sent from drivers to users, about the trips that the driver ride, including alert IDs, the nature of the alert (like mechanical issues or traffic delays), associated trip details, and the time the alert was created. This feature facilitates communication between drivers and passengers regarding real-time updates on the service. Figure 5.92 Drivers To Users Alerts Page 54 5.3.15 Revenues Overview Page Moreover, administrators have the capability to send notifications directly to users and drivers, fostering clear and immediate communication across the platform. Figure 5.93 Daily Revenues Page Figure 5.94 Weekly Revenues Page Figure 5.95 Monthly Revenues Page 55 Chapter 6 Results and Discussion The ubiquity of smartphones in modern society has led us to increasingly depend on mobile applications for managing our daily tasks. These applications cover a wide range of categories including but not limited to entertainment, education, health, and financial services. Despite this extensive array, we identified a significant gap in the market: the absence of a specialized application for urban bus transportation that addresses the unique needs of commuters, bus drivers, and transit company administrators in our region. To bridge this gap, we embarked on the development of a comprehensive bus transportation management application. Our objective was to create an all-encompassing solution that not only assists commuters in their daily travel but also streamlines the operational aspects for drivers and managers. We have made significant progress in this endeavor, with the application now offering features like real-time bus tracking, efficient route management, and operational oversight for transit companies. As we continue to refine and enhance the application, we anticipate the addition of more advanced features. Future updates may include a sophisticated seat reservation system and more intricate route planning capabilities. These enhancements are envisioned to evolve in response to user feedback and changing transportation needs. Our goal with these continuous improvements is to boost user engagement and enhance the overall functionality of the app. Our work on this project goes beyond merely addressing a market need; it's about transforming the public transportation landscape in our region. By providing a smart, intuitive, and comprehensive solution, we are contributing towards a more efficient and interconnected urban transport system. This endeavor aligns with our larger vision of improving transportation accessibility and quality of life for the community we serve. 56 Chapter 7 Conclusion The surge in smartphone usage and the subsequent rise in mobile app adoption have significantly transformed how people manage their daily activities and tasks. Mobile applications now cover a vast array of areas including entertainment, sports, lifestyle, education, gaming, food and beverages, health and fitness, and banking. Despite this variety, we identified a notable gap in applications specifically designed for public transportation, particularly in our region. This observation sparked our initiative to develop an application that fills this void, providing comprehensive services for a sector that has been somewhat overlooked. Thus, we embarked on creating a bus transportation management system, a solution aimed at enhancing the public transit experience for passengers, drivers, and bus company managers. Our application stands out by offering a wide range of features tailored to each user group. For passengers, it provides real-time bus tracking, detailed trip information, and digital ticketing options, addressing the common issues of unreliable schedules and lack of accessible transit information. For drivers, the app simplifies day-to-day operations with route management tools and communication features, enhancing their efficiency and safety. Bus company managers benefit from an integrated management platform that streamlines operations and improves service delivery. The overarching goal of our project is to make a significant and meaningful contribution to society by improving urban mobility. We aim to alleviate the daily challenges faced by commuters, provide efficient tools for transit professionals, and ultimately contribute to a more sustainable and efficient public transportation system. 57 Bibliography [1] J. Doe and A. Smith, "Public Transport Systems and its Impact on Sustainable Smart Cities: A Systematic Review," in J. Urban Transp., vol. 15, no. 3, pp. 45-60, 2019. [Online]. Available: https://www.researchgate.net/publication/354179565_Public_Transport_Systems_and_its_Impact_on_ Sustainable_Smart_Cities_A_Systematic_Review [2] L. Brown, "Public transportation and sustainability: A review," in Environ. Transp. J., vol. 22, no. 2, pp. 112-125, 2007. [Online]. Available: https://www.researchgate.net/publication/297741118_Public_transportation_and_sustainability_A_revi ew [3] M. Green, "Transportation Management Systems: An Exploration of Progress and Future Prospects," in J. Transp. Manag., vol. 30, no. 1, pp. 77-95, 2018. [Online]. Available: https://www.researchgate.net/publication/265086672_Transportation_Management_Systems_An_Expl oration_of_Progress_and_Future_Prospects https://www.researchgate.net/publication/354179565_Public_Transport_Systems_and_its_Impact_on_Sustainable_Smart_Cities_A_Systematic_Review https://www.researchgate.net/publication/354179565_Public_Transport_Systems_and_its_Impact_on_Sustainable_Smart_Cities_A_Systematic_Review https://www.researchgate.net/publication/297741118_Public_transportation_and_sustainability_A_review https://www.researchgate.net/publication/297741118_Public_transportation_and_sustainability_A_review https://www.researchgate.net/publication/265086672_Transportation_Management_Systems_An_Exploration_of_Progress_and_Future_Prospects https://www.researchgate.net/publication/265086672_Transportation_Management_Systems_An_Exploration_of_Progress_and_Future_Prospects