Logical Locking Software

In 2015, EmpireCLS needed a way to alleviate the physical locking issues that they were facing when users edited a reservation. The legacy Linux system was using a physical database lock that would stay active when a user attempted to edit a reservation, this lock would remain in effect until the user explicitly released it or their process was killed by an admin. Because killing the process became the normal procedure the user that had the lock would lose any in process edits. This problem directly impacted daily operations, automated booking feeds, and the IT staff.

We built a cross platform logical locking framework that would enforce the same edit semantics that the EmpireCLS staff had grown accustomed to but would allow supervisors to release locks without the need of killing a process and losing the in process changes for a user.

This implementation required both a Linux and Windows code base so we used C# / Mono to create the cross platform libraries.

Technologies… C#, C, Linux, asp.net, Mono

Chauffeur App 2.0

In 2013, EmpireCLS needed to revamp their mobile chauffeur application because the Windows Mobile 6 platform was to be deprecated. Windows Phone 8 was the platform of choice for this application that supported their 400+ mobile workforce.

A large amount of client code was re-used from the original mobile app, along with the entire back end.

Highlights…

  • Chauffeurs could notify central dispatch that they were awake and ready for work. Before this feature dispatchers would call chauffeurs on the phone to validate that they were ready and would make their first pickup of the day. This saved thousands of man-hours a year.
  • Was done using cross platform development patterns to allow other mobile platforms to be implemented. The goal of using Xamarin to create an IOS an Android app was taken into consideration way up front to cut down on overall cost of bringing up these 2 platforms at a later date.

Technologies… Windows Phone 8, c#, WCF, PCL

Cache Software

In 2008, EmpireCLS needed to have a real-time display of current reservation data for it’s new dispatch system. Because of the number of client applications and the frequency of reservation data changes the dispatch application could NOT poll the SQL Server database directly.

This service monitored the relevant reservation data and cached up to the minute changes for access by all dispatch applications. The decreased the load on SQL Server and allowed the dispatch application to operate as fast as possible by just getting diffs of the datasets that they were working with.

Technologies… C#, SQL Server

Dispatch Software

In 2008, EmpireCLS needed to replace their existing Linux dispatch application. The application was a console app that was extremely difficult to maintain. The goal was to rewrite as a GUI fat client on Windows.

This application allowed the dispatchers to see all chauffeurs in real-time throughout the day. If the chauffeur was picking up, dropping off, or just waiting for instructions, it was all visible within this application. Real-time shift visibility was also a requirement, this allowed dispatchers to cut down on overtime and increase safety by constantly adjusting the workforce.

By using this application EmpireCLS was able to achieve a significant cost reduction in their overall operational costs and increase customer satisfaction.

This application was to integrate directly with SQL Server but was to be used in parallel with the existing Linux reservation and accounting system.

Technologies… C#, WPF, SQL Server

Chauffeur App

In 2008 EmpireCLS needed to revamp their current pager strategy for communicating reservation information and statuses to and from their chauffeurs. We created a Windows Mobile 6 app to be deployed on Moto Q devices.

Once released the chauffeurs had constant real-time updates of reservations data and had the ability, via 1 or 2 taps, to notify dispatch of various statuses that occur when picking up and driving a customer to their destination.

This project required a backend web service implementation to communicate with the mobile device app. The backend web service in turn communicated with several Linux services via windows sockets.

Technologies… Windows Mobile 6, .net framework, WCF, asp.net, IIS