1

Developing a Full-Cycle Order Management System for Logistics

A highly customizable order processing and tracking system helps managers and field workers to speed up transportation and logistics workflows.

Logistics and Transportation
Supply chain
.NET
C#
WPF
MS SQL

Summary

The system supports the full cycle of order processing: from booking, planning, and execution to tracking and billing. The application is designed as a modular system, enabling the components to be added and removed from the deployment.

The mobile client can be customized for different workflows in order to change the sequence of execution procedures. Real-time data synchronization can be facilitated with import/export to existing systems. The application is highly customizable, featuring customer-specific fields, while filtered data views can be added without recompilation.

The need

The customer, a developer of software for logistics located in the Nordic region, needed an application that would cover a full order processing and shipment tracking cycle. The company wanted to pay extra attention to the issues related to real-time data synchronization, GPS tracking, etc.

The challenges

Data exchange between mobile devices was one of the challenges the team faced during this project. The mobile applications are connected via GPRS, which is a type of connection that fails very often (e.g., the truck passes under the bridge or gets too far away from the mobile operator base station). The connection is constantly interrupted, which makes it difficult to record position data and track routes.

Another challenge was tracking vehicles’ positions in real time and sending accurate data to the server. The mobile client often switches to the offline mode, sometimes there are not enough satellites to detect its position, etc. In addition, there are natural inaccuracies in getting coordinates through GPS, which affects both the route displayed on the map and the database load.

The solution

To solve the issue with data exchange between mobile devices, the team developed the synchronization module that manages connection and related tasks. It restores connectivity whenever it is interrupted, collects all necessary data that was recorded in the offline mode, and sends it to the server when the connection is back.

To solve the issue with tracking vehicle positions, the team decided to apply settings that enable the mobile client to save only those coordinates that comply with certain criteria:

  • Coordinates should be recorded every 30 seconds, provided that the location of the cargo has changed over 100 meters during this period of time. Otherwise, the mobile client should wait for another 30 seconds.
  • One of the goals was to achieve the accuracy of position data within 50 meters. That’s why the position is not recorded if it was captured with less than three satellites. In this case, the coordinates cannot be detected with a given accuracy.

These settings helped to minimize the amount of coordinates recorded by the device. Now, only the data that has been filtered out by the mobile client will be sent to the server. This allowed the application to reduce data redundancy and traffic load, display the route on a visual map correctly, and calculate the exact distance covered by the vehicle.

The outcome

Providing accurate data from the mobile device enables managers to measure the distance passed by a vehicle more precisely. With this, logistics companies can calculate fuel costs and drivers’ salary correctly, without under- or overpaying.

The system consists of several components, following the n-layer architecture principles and guidelines—for proper deployment, operation, and maintenance. The application server stores orders, load carrier routes, destinations, etc. The desktop client enables staff at logistic companies to manage this data—add routes, track orders, etc. A mobile client and its instances installed on mobile devices enable carriers to view the information on orders and destinations. This component also tracks routes through a GPS module, exchanging position data with the server to enable the desktop client to display the routes on a visual map.

Technology stack

Server platforms

Windows 2008 Server

Programming language

C#

Frameworks and tools

.NET Framework 3.5, WPF, WCF, WinForms, Custom developed ORM, GPS API, GPRS

Databases

MS SQL Server 2005

Seeking a solution like this?
Contact us and get a quote within 24 hours

Preloader
Photo
Alex Tsimashenka
Business Development Director
a.tsimashenka@altoroslabs.com
Headquarters
+1 (650) 419-3379
Toll-Free
1-855-ALTOROS