Updating Legacy Systems to Keep Our Armed Forces in Readiness

We take on a wide variety of projects, but a common problem we’re often asked to solve comes under the general heading of “updating legacy systems”.  In an earlier post, The Hazards of Updating Legacy Systems, we discussed the challenges involved in this process (the fact that in solving one set of problems you may create others elsewhere in the system) and how to overcome them.  In this one we thought we’d share with you a real life project where we had to put all this into practice.

The speed of technological change means that systems date very quickly.  Suddenly you find that the language in which the software was written is no longer supported and that you cannot replace the hardware (when the only place you can find spare parts is eBay you know you’ve got a problem!).

Action Stations

Some time ago we were approached by a company that found itself in this uncomfortable situation.  They have a contract with the MoD to provide what is known as high-end mission rehearsal – simulating a variety of attacks, from communications jamming to false target generation, so that military personnel can practice for real life situations where they have to defend themselves against incoming missiles.

This involves fitting planes with a number of different electronic systems to simulate attacks on military units.  The planes are also fitted with a system to control all these different units, enabling an operator to set up and manage the scenarios required in that particular exercise.

Coming to the End of its Life

This system was written in Borland C++ which is no longer supported.  This means it would be difficult to further develop the application to allow enhancement of the training schedule.  When the multi-million pound contract was recently renewed for a further 10 years, it was decided that the software was approaching a point where it required rewriting in an entirely different language.

They came to us and we were able to provide an effective and reliable solution.  By porting the software over into a current language (C# .NET), one that will remain in use for many years, we were able to retain much of the core application code.  In the process we also fixed a number of bugs that had either become apparent over time or which we discovered once we set to work.  This approach is much more cost effective than a complete re-write and has successfully extended the life of this legacy system and made future enhancements a lot easier.

More From The Blog

IR35, Here it Comes Again…

IR35, Here it Comes Again…

IR35, Here it Comes Again...In 2021 the reform to IR35 Off-Payroll rules is to be rolled out to the private sector. As before the reform will only affect companies that do not meet the following attributes: an annual turnover below £10m fewer than 50 employees or a...

Solving the Resource Conundrum

Solving the Resource Conundrum

Solving the Resource ConundrumPicture this. One minute all is fine and dandy, you have access to all the resources you could possibly need, then bam an unexpected challenge arises. Suddenly you find yourself lacking the capacity to meet the new need. What are your...

Quality – An Aid to Produce Consistent Rubbish

Quality – An Aid to Produce Consistent Rubbish

Quality - An Aid to Produce Consistent RubbishAnother year has passed, and myself and a colleague have hosted a BSI auditor for our annual ISO9001/TickITplus check-up, and in fact this was more than the regular check, in that it was our 3-year re-certification audit,...

The Hazards of Legacy Systems

The Hazards of Legacy Systems

The Hazards of Legacy SystemsBeing the owner of a software system with a dedicated customer base sounds like the kind of position one would like to find themselves in. At least until it gets superseded and you have to face dealing with a legacy system. Many developers...

How to Test Without Access to The Test Environment

How to Test Without Access to The Test Environment

How to Test Without Access to The Test EnvironmentIn many of our previous articles, we have expressed the importance of achieving a high standard of testing. Potentially blocking this achievement, several factors can come together to affect the quality of your...

The Technical Workshop – How To Make Them Work For You

The Technical Workshop – How To Make Them Work For You

The Technical Workshop - How To Make Them Work For YouAnyone experienced in product design will understand just how valuable a facilitated workshop can be. Bringing together a project's key stakeholders into a single space allows for the exploration of diverse...

Developing Software for Safety Related Systems

Developing Software for Safety Related Systems

Developing Software for Safety Related SystemsSoftware systems should always be both robust and reliable, however the moment you introduce a safety element, this need for reliability increases significantly. The level of safety required is governed by the severity and...

How to Choose an Outsourcing Partner

How to Choose an Outsourcing Partner

How to Choose an Outsourcing PartnerHaving recognised a need to outsource, and worked your way through the initial preparations, you are now in a strong position to seek out a suitable partner. Choosing an outsourcing partner is no trivial affair, so taking the time...