Feature Enhancement
Mobile
Logistic
B2B
Designing for a Disconnected World via Offline Mode
Quick Overview (1 minute)
This is a feature enhancement for the Cartrack Delivery Mobile app.
The Cartrack Delivery app is designed to instantly sync job data between the driver’s mobile and web apps, requiring WIFI or cellular data. However, drivers may not always have access to these.
If there's no internet connection, the Offline mode feature allows drivers to continue working, saving data locally, and syncing it later when a connection is available.
A unique aspect of this feature is that it smartly turns on/off based on the connection’s status. The syncing process happens automatically, and all job progress, including status, photos, signatures, etc., is safely stored on the local device until it's successfully synced to the back office. There's no data loss.
Previously, without an internet connection, drivers had to manually take photos on their devices and remember to update the job later.
With the redesign, drivers can continue their job without an internet connection, and all progress will be seamlessly synced later when a connection is available.
Recorded demo for offline mode
We initially built this feature for drivers with temporary internet access issues, but it has proven useful in a variety of situations, saving users from potentially problematic circumstances.
Curious about how we did it? Let's dive in!
Highlighted Problems and Solutions
Clients have requested the ability for drivers to update jobs at the end of the day, long after the job has been completed, and choose whichever photos they wish to upload.
💡Currently, the delivery mobile app only allows drivers to update jobs on the spot.
While this is technically possible and other competitors are already offering it, I foresee potential issues if we allow post-updates:
- Inaccurate delivery timestamps
- Fabricated proof of delivery, signatures, etc.
- Drivers potentially uploading incorrect photos when too many deliveries have been made
- Drivers may forget to update after a long day, leading to lost information
After further investigation, I discovered that the main reason for this request is due to inconsistent internet connections at the drivers' locations, making it necessary for jobs to be updated later.
💡Understanding the drivers' needs and the reasons behind their requests allowed us to identify the real problem, which may be different from the initial issue. This understanding is crucial in maintaining our product's focus.
My proposed solution is to add an offline mode that allows drivers to continue jobs even without an internet connection:
- The system will automatically detect internet issues
- The app will switch to offline mode
- The app will securely save all job progress and files
- The app will automatically sync when a stable internet connection is reestablished
Offline mode turn on
Offline data syncing
Before the new design, drivers had to remember to update jobs later if there was no internet connection. This led to issues like lost or inaccurate delivery information.
After the new design, drivers can continue the workflow regardless of internet connection. The system will intelligently handle such situations and ensure no data is lost.
💡This feature has undergone rigorous testing by drivers and has proven to be intuitive and effective in solving the data connection issue.
Bonus point: Additionally, this feature has brought unexpected benefits. For instance, during a couple of server outages in Singapore and Thailand, this feature allowed drivers to continue their jobs seamlessly. All data was automatically synced once the server issues were resolved, preventing any data loss.
Clients have frequently asked about the monthly cellular data consumption per driver. They appreciate the instant updates provided by the system but are concerned about the cost.
💡The majority of data consumption comes from uploading images (proof of delivery, signature, etc). It depends on how many jobs and images need to be synced.
To reduce cellular usage, I propose adding a low-data mode:
- Initially, only small images and job statuses will be synced when using cellular data (in low-data mode)
- Larger images will be automatically synced later when a WIFI connection is detected
Low-data mode turned on
Before the new design, jobs containing a large amount of images or files could consume significant cellular data.
After the new design, with low-data mode on, cellular data usage in these situations is significantly reduced, all without losing the instant update functionality.
💡This is one of the most complex features in the delivery mobile app. Many smart system design details were implemented gradually to handle various edge cases.
System Flowchart
Created by Ning via Lucidchart
Debug Mode
Created by Ning via Sketch