🎯 Objective
The objective of this whole exercise is to help the marshals with their daily activities and facilitate a better experience for our end users (passengers)
👥 Target Customer Segment
🔍 Identification
As stated, our main users for the app are the bus marshals who are managing the bus operated by Zingbus. These people generally would be employed with the bus operator directly similar to our drivers. These would generally be men in the age of 30-55 earning around 0.3 LPA, putting them and their family in BPL. But the penetration of smartphones in India is pretty huge. So it will be a fair assumption that the app will accessible to our target customers
🥅 Goals
There primary goal is trip management but we can bucket tasks into the following set -
Ticket checking of onboarding passengers Informing passengers for incoming deboarding stops Marking onboarding & deboarding passenger - Ensure all the onboarded passengers have been dropped off to their respective stops Luggage Management - To deposit left off luggage at collection center near the last stop Maintaining hygiene protocols - Setup covid related hygiene protocols and martial makes sure that everyone follows them Ensuring no one is left behind at rest stops Informing passengers of incoming rest stops - Intercity buses take rest stops. Preparing passengers 10 mins before will save time Chaos Reduction - This can be regarding ticket confusion or just disagreement among passengers Bus Navigation - This has become obsolete with google maps and in app navigation for drivers 📱Familiar Apps
Here we list down apps that our customers will be most familiar with. This helps us understand what interactions are part of their daily life and when included in app would not lead to a huge learning curve. So here are some examples → Whatsapp - Chats, Paytm - QR based payment apps, Candy Crush - Simple tile games, Youtube - Video streaming platform
➡️ User Flow vs Feature Set
Here we can divide the whole user flow into 3 major chunks along the line of a Bus trip-
🛫 Departure from Origin City
This involves the part of the trip from the start of the trip to the very last onboarding stop on route in this city. Here is the flow
This flow continues till we reach the last onboarding stop. Now here is the feature set for each of the step involved in the following flow
Phone Number based Login + Trip start - Similar to uber login enter number to get OTP and login → the screen shows you your incoming trip as a card with some general info - Bus registry number, Driver name, Trip Timing, origin & destination→ tap on card a dialogue box appears asking if the trip has started → punch in yes and wait for the driver to punch yes to move onto the next screen Bus Layout Screen - Similar to the select seat layout currently present in the app without price filters but with the upper birth lower birth filter. The color schema that the layout will follow is - Gray ⚪ - Seats that are not booked Blue 🔵 - Seats that are booked but passengers are not onboarded Green 🟢 - Seats that have onboarded passengers travelling Red 🔴 - Passengers that had to be dropped off due to unfortunate reasons Yellow 🟡 - Passengers that have completed their journey Onboarding stop notification - We have the current location data of marshal’s phone from which we notify them when the next onboarding stop is arriving in next 5 minutes. The notification will have the bus bell ‘Ting’ sound. This is also present with the timeline of the trip as a seperate tab parallel to seat layout Checking Ticket - Marshal manually checks the ticket → taps the seat on layout → dialogue box appears with following info - passenger’s name, drop & pick up points and 2 options onboard or dismiss(in case of unfortunate events). The marshal after verifying all these details can onboard the user QR code scan - Rather than manually checking each ticket we can attach a QR code with the ticket that when scanned by martial this opens a dialogue box with a tick mark, all the info of passenger, the seat number and same 2 options onboard/dismiss. If same QR code is scanned twice this time the dialogue box gives a red cross stating fault in play. If by any chance the QR scanning is not working we will have the old manual way of updating the onboarded passenger 🚏Mid Trip Stop
In this case the flow can be seen as two different instances that can result in mid trip stops - need for rest/unrest in passengers. Here is the flow
So the feature sets with respect to given set of flows are -
Rest stop notification - As stated app notifies martial and even passengers that rest stop is arriving. But, this is possible only if the location is pre-fed or the location is picked up by historical data. By whatever case the rest stop appears in the timeline tab Rest ending callouts - Once the rest period ends just 5 mins before restart of trip, an in-app button that is present just beside the rest stop dot in the timeline tab can be pressed that recalls Individual Dismissal - As explained there can be multiple reasons for dismissal. With regards to dismissal flow. It can be easily done from the bus seat layout. Just tap on the seat → dialogue comes up with passenger details & 2 options(dismiss/deboard) → Choose dismiss → Questionare to choose the reason for dismissal 🛬 Arrival to Destination City
Now finally once you arrive in the destination city the following flow takes place -
Deboarding stop notification - Similar to the onboarding stop notification it helps save time by preparing everyone. In this case the notification opens up to the timeline tab with the coming stop at the center of it Timeline tab - As mentioned earlier this needs to be built parallel to bus seat layout (eg status and chats tab in whatsapp). Now this is different from the timeline already in the app. Each stop has a section of it own with these info - bus stop name, arrival time, list of all seat tiles (similar to bus layout eg - U7, L5, L3) that are going to dropoff there, number of tiles & button deboard all. The upcoming stop is highlighted. Thus marshal deboard all individually via tiles or all together with button Missing Luggage Tab - Built parallel to timeline and layout tabs, this is to finally check and report any missing luggage. There will be a form with following section - Type of luggage, seat number it was found at & photos. In this tab itself you can end the ride 📊 Metrics to be Measured
Total Time Spent Onboarding per trip/Number of Passengers per trip - This relates to time wasted on checking user’s ticket s. This will now be done via QR scan and will lead to decrease in the time wasted Total Rest Stop Time/ Number of trips - As we’re able to cut corners by preparing and calling users from rest stops this metric will also be reduced Total Time Dropping of User per trip/Number of Passengers per trip - This relates to time wasted by unprepared passengers when their drop point comes Total Number of Luggages Recovered/ Number of Trips - Using our tech we’re able to better facilitate lost & found thus increasing our NPS