Loading

Order Management and Logistics Case Study

Developing a Comprehensive Order Management and Logistic Solution

A case study of developing full-featured business solution for a US-based mobile automotive service provider

TESTIMONIAL:

Backendless is a top-notch team we are happy to have chosen to implement our crucial project… They also have a stupendous backend product that speeds up your development and makes the whole thing a great deal less expensive. Backend-wise, you get for free half of what you’d normally pay for… They’ve been doing an awesome job and we are delighted to continue our cooperation with them.

The client is a major US-based mobile automotive service provider. With a business presence in 15 US states, the client offers on-the-spot mobile installation services to both companies and individual customers regardless of where the customer’s vehicle or vehicle fleet is found within the company’s area of operation. The company runs a fleet of mobile installation vans, outfitted with top-notch mounting and balancing equipment that allows one to ensure the same quality result as at a brick-and-mortar store.

At the time the customer approached Backendless for assistance, they were looking to replace their legacy installation management application. Their existing application could no longer efficiently support the company’s service provision and hampered their business expansion. This system had rather limited functionality, leaving some of the installation-related business processes unautomated. For instance, customer’s employees had to enter all customer orders into the system manually, taking them over the phone. 

Keeping track of order fulfillment and calculating the installation fees that varied in each specific case due to the varying distance to the customer’s vehicle was difficult and time-consuming. The company needed to develop a comprehensive installation management solution to consolidate and automate their numerous business processes. They also sought to minimize employee involvement and the required resources, and improve the overall quality of the company’s service. Backendless was engaged by the customer to develop the backend and web applications of their solution from the ground up and in their entirety.

To implement the project, Backendless initially put together a project team that consisted of 1 Project Manager, 2 backend software developers, 2 frontend software developers, and 1 QA engineer. Over time, this team has been augmented to include 1 more backend developer and 1 more QA  engineer. The project has been managed jointly by one of the client’s Executives and our Project  Manager. As no technical specification or solid artifacts the project team could use existed, they started  with collecting the requirements for the solution. For this purpose, we established a very close working  relationship with the Client, involving frequent daily interactions with them during the requirements  gathering stage.  

As the Client’s solution is a complex system with a wide array of sophisticated functionality, collecting a sufficient amount of information and consolidating this disparate information  proved to be quite challenging. Our team also needed to deliver the system against a very tight  deadline. It had taken us less than a year to develop the vast bulk of the system’s functionality before the solution went live in June of 2021. The system we have delivered efficiently consolidates and automates the full  array of the Client’s business processes. 

Additionally, the backend of the system fully supports the Client’s mobile driver application that they use for interactions with their  mobile technicians. This mobile  application has now become an integral part of the company’s installation management solution. The web application of the Client system consists of a customer support portal and Scheduler functionality. In the Scheduler, the customer enters their ZIP code, name, surname, address, vehicle  model, and card details, and then selects the day that the installation is to be performed. 

After this information is submitted into the system, the system assigns one of the predefined activity types to the  order. The Customer support portal displays a list of all existing orders as a calendar, indicating their status and  highlighting those that have not been fulfilled in time. It is possible for customer service employees to  edit orders manually if any problems arise. For example, they may have to edit an order if, upon their  arrival on the spot, the technician has found the vehicle locked in a garage, a traffic accident has occurred,  or the vehicle was parked too close to a wall and could be approached from only one side. It is also  possible to indicate that an order has been fulfilled only in part, or shift its fulfillment to another date and  time. 

The Client system performs all the required order fulfillment-related calculations automatically, taking  into account such parameters as the distance to the spot where the customer’s vehicle is found and the  time of day when the order fulfillment takes place (morning, noon, or evening). If an order has been  fulfilled only in part, the customer’s charges are automatically adjusted by the system accordingly. In addition, the system’s web application groups the existing orders by state, calculates the most optimal  and cost-effective routes to fulfill them, bundles together the orders it is expedient to fulfill consecutively  together, and assigns them to a free technician. 

Some of the more important and advanced functional capabilities the Client’s system provides also include:   

  • Sending the customer an email that contains the customer-provided order information and a link that can be used to re-schedule the installation in case of need.  
  • Sending the customer a SMS right after the order is made and 24 hours prior to the installation. Sending the customer а questionnaire after the installation.   
  • Adding and removing technicians.  
  • Sending the customer an inquiry about whether they would like to tip the technician. 
  • Editing the technicians’ schedule and creating National holidays in it.   
  • Editing locations.   
  • Creating free-of-charge orders.  
  • Cancelling and re-scheduling orders.  
  • Adding discounts to a specific order.  
  • Creating tasks and use cases.    

The Client’s mobile application we have created the backend for allows a mobile technician to accept a customer order and notify the company’s customer support about it. After the technician accepts an order, the mobile app displays a map with a route they need to follow. The application calculates the approximate time of the technician’s arrival and informs the customer accordingly. Simultaneously, the  customer receives a link they can use to follow the technician’s progress and see their current location. Upon arriving on the scene, the technician notifies customer support about their arrival with just one  click. 

They take one or more snapshots of the customer’s vehicle, and, after they are through with the  installation procedure, use the application to specify the number of items they have replaced, calculate the cost, and bill the customer. Although Backendless’ project team has only been engaged in creating the backend functionality for  the mobile app and not its mobile functionality as such, we have helped the Client optimize the latter as  well.    At the present time, our project team is adding functionality that will automate customer’s business  processes associated with entire vehicle fleets. Since the product’s delivery in the summer of 2021, we  have also been supporting the Client’s rapid business expansion, adding 5-6 new service locations per month. 

Our technical solution for the project included the following technologies and tools:

  • Frontend: Backendless’ UI Builder & Codeless
  • Backend: Backendless Pro (JavaScript), NodeJS 
  • Testing: Mocha & Chai, Pytest
  • Integrations: Multiple Telematics, Route Optimization, and Tax software applications
  • Platform: The Backendless Pro Nocode platform 

Two significant technical challenges we have encountered while implementing the project were the  need to ensure a high processing speed for a large number of concurrent users from the company’s  many locations, and implementing complex, data-intensive calculations. 

Within a record time and with the minimum possible cost to the Client, we have consolidated and automated the bulk of the customer’s business processes, reducing the time spent by their employees on  the corresponding tasks by at least a factor of 2. The customer has been able to optimize their costs and  received the technical means to expand their business both vertically and horizontally.