Simplified tracking solution for Mumbai bus system, primarily for mass transit systems; allowing real-time schedule tracking.
Lead UI/UX Developer
Mumbai, the financial capital of India, has a population of more than 12.5 million people with roughly 40% of the population relying on B.E.S.T. buses for transport. Overcrowded buses are common, and citizens often end up waiting for hours at the bus stop.
As a technology enthusiast, I came up with a technological solution to this problem. I designed and developed an android application for live bus tracking called BUS-TED. In the user app, the user checks the app to check the exact position of the bus and adjusts his schedule accordingly. In the driver app, the driver switches on his GPS to send his location to the user app. According to our calculations, this would reduce congestion in Mumbai buses by 27%.
The pain points were:
1. People had to wait for long times on bus stops for the bus stop, hence wastage of time
2. This usually resulted in overcrowding of the buses
To overcome these issues, my team and I designed an app for addressing these pain points.
We interviewed and surveyed regular bus commuters and bus drivers to understand their perspective of the problem. We conducted contextual inquiries with employees at the B.E.S.T. office in Mumbai to study the feasibility of our idea. Some of the insights gained included:
1. People who have wait too long, end up using an alternative mode of transport since they have no idea about how long the bus would take to arrive. This affects profitability.
2. People hesitate to get into crowded buses.
Establishing our painpoints from the research, we brainstormed different ways to tackle the painpoints. Pitching our ideas to our stakeholders and evaluating we finalized on developing a mobile application as it would offer scalability and more functionality. We conducted a competitive analysis of a similar mobile application that was being used in other countries.
Being the sole UX designer for the project, I had the freedom to experiment and apply my design knowledge. I went through multiple iterations incorporating the feedback I received from team members and stakeholders.
We designed two apps- one for the user and one for the drivers. Technologies. tools and programming languages used include Android Studio, Figma, Java, MySQL.
1. Developed using Android Studio, with a database in phpmyadmin, this app receives the GPS coordinates of the bus from the bus drivers app and tracks the bus accordingly.
2. The database includes data about all the various sources and destinations, as well as the bus routes and timings of various buses. Based on the input, our code returns those buses who’s route matches with the input.
3. The app uses the async function in java to get the GPS coordinates from the driver’s app and automatically feeds it into the location parameter.
4. Based on the location of the user and the bus, the app calculates the approximate time the bus would take to reach the desired bus stop
The driver’s app is primarily built for sending the location of the bus to the user app. Whenever the bus driver logs into the bus, he can switch on the location on this app and the tracking side. The GPS coordinates are sent to the user app.
We tested our app with a local bus service called Sharmas. The app was a success with good accuracy and happy customers. However, we were unable to get the government of Mumbai to implement our idea.
The app delivers efficient bus tracking solutions with above average accuracy and commuter satisfaction.
Working on a real-world problem has always been my desire. I was introduced to different approaches of conducting user research and leveraging the insights to enhance user experience, that helped me develop my skills.
Working on a project of this scale was a challenge with many deliverables and deadlines to meet. It put to test my ability of working in cross-functional teams and collaborating with different stakeholders. We had to take into consideration different laws, privacy policies, media while working which was again a first for me.