The customer needed an application that would cover a full order processing and shipment tracking cycle.
Altoros developed the system that consists of several components. The application server stores the data, such as orders, load carriers' routes, destinations, etc. Another component, the desktop client, enables staff at logistic companies to manage this data€"add routes, track orders, etc. One more component of the system is the mobile client and the application installed on the mobile device. It enables carriers to view the information on orders and destinations. This component also tracks routes through a GPS module and exchanges position data with the server to enable the desktop client to display the routes on the visual map.
Data exchange between mobile devices was the first challenge 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 vehicle positions in real-time and sending the 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.
To solve the issue with data exchange between mobile devices the team developed the synchronization module that manages connection and data exchange tasks. It restores the connection 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 normal.
To solve the issue with tracking vehicles positions, the team decided to apply settings that enable the mobile client to save only those coordinates that comply with certain criteria:
These settings helped 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 the visual map correctly, and calculate the exact distance covered by the vehicle.
The created .NET application supports full cycle order processing: booking, planning, execution, tracking, and billing. The app is designed as a modular system. Most of modules can 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. The application is designed to be able to connect to the existing systems. Import/Export to the existing systems can be added for real-time data synchronization.
The solution is highly customizable and supports various languages. It features customer-specific fields and filtered data views can be added without recompilation.
The solution proved to be beneficial not only from the technical side. Providing accurate data from the mobile device allows calculating the distance passed by the vehicle more precisely. This has enabled logistics companies to calculate fuel costs and drivers' salary correctly, without under- or overpaying.
Altoros developed the system that consists of several components. The application server stores the data, such as orders, load carriers' routes, destinations, etc. Another component, the desktop client, enables staff at logistic companies to manage this data€"add routes, track orders, etc. One more component of the system is the mobile client and the application installed on the mobile device. It enables carriers to view the information on orders and destinations. This component also tracks routes through a GPS module and exchanges position data with the server to enable the desktop client to display the routes on the visual map.
Data exchange between mobile devices was the first challenge 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 vehicle positions in real-time and sending the 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.
To solve the issue with data exchange between mobile devices the team developed the synchronization module that manages connection and data exchange tasks. It restores the connection 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 normal.
To solve the issue with tracking vehicles 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.
- We wanted the position data to be accurate 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 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 the visual map correctly, and calculate the exact distance covered by the vehicle.
The created .NET application supports full cycle order processing: booking, planning, execution, tracking, and billing. The app is designed as a modular system. Most of modules can 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. The application is designed to be able to connect to the existing systems. Import/Export to the existing systems can be added for real-time data synchronization.
The solution is highly customizable and supports various languages. It features customer-specific fields and filtered data views can be added without recompilation.
The solution proved to be beneficial not only from the technical side. Providing accurate data from the mobile device allows calculating the distance passed by the vehicle more precisely. This has enabled logistics companies to calculate fuel costs and drivers' salary correctly, without under- or overpaying.
SHARE