Modernizing a global transportation application

Our global transportation client needed to upgrade their track signal programming application, along with its associated graphical simulator. The version of the application they were using was tedious to use and leveraged old technology that posed security concerns. 

We teamed up with our client to modernize their application, allow easy access for daily users, and mitigate security concerns.

Desktop

What We Did

Desktop Development, Technical Assessment, Agile, Automated Testing, Forecasting/Estimation, Scope Control, Migration

Tech Stack

C++, MFC, Windows

Opportunity

Our global transportation client offers a comprehensive range of equipment and services, including high-speed trains, metros, integrated systems, and signalling solutions. Their Signalling group needed to upgrade their signal processing and logic application, along with its associated graphical simulator.

Our client’s Application Engineers use the signal processing tool to design train signal logic that runs on their (track) wayside embedded processors and input/output devices. The application uses a collection of signals to ensure that requests (such as ‘change tracks’ and ‘increase speed’) sent from an office location to the embedded processors and devices are safe to take and fail safely. 

The existing application was built with outdated technology that created security concerns and compatibility problems on modern operating systems, making it difficult to use. Not only was this a pain for our client’s IT department and internal users, but it also affected some of their end customers.

The primary goal was to move this tool from Windows 7 to Windows 10. We teamed up with our client to modernize their application, allow easy access for daily users, and mitigate security concerns.

Solution

We began by tackling the main challenges of upgrading the tool: 

  • The existing version of the application had a dated tech stack, which made it difficult to integrate with modern systems. It was written primarily in MFC C++, with other components developed in a mix of C++ with some Fortran.
  • Our work also needed to integrate with other work in progress by an offshore developer. 
  • Our client had a short timeline that we needed to accommodate while satisfying corporate operating procedures.

An offshore team had worked on this product before, and our client didn’t know much about the technical specifics. We investigated the application, identified what needed to be done, and shared our insights.

We upgraded the tool, its infrastructure, and its associated graphical simulator to support installation on Windows 10. We performed hardware testing, created automated tests, added feature enhancements, and cleaned up documentation. We also improved their in-application help files to be supported by the help system available in Windows 10.

In the course of our work, we helped our client implement Agile methodology. We mapped Agile processes to our client’s world, tailored those processes as we worked together, and ran scrum sprint reviews.

Results

We were delighted to deliver a new and improved version of their application. Daily users can now use the application with ease and our client no longer has security concerns. Our client feels confident in the integrity of the new version of the application and its compatibility with current and future operating systems.

Recent Case Studies

Using Collaboration to Build a Better Product

Read More

Supporting Ag Dealers in Customer Service

We leveled up our ag client’s Agile development and product ownership chops and added key features to their dealer web app.
Read More

Scaling Woven’s hiring assessments with AI

We improved Woven's product automation so they could scale up and secure their next round of funding.
Read More

Let’s develop something special.

Reach out today to talk about how we can work together to shake up your industry.