Legacy software: throw it overboard or keep it?

The term 'legacy software' annoys some IT professionals more than others. The temptation to discard old software is great, but is it always the best option? At Sweet Mustard, we don't just build new solutions – we believe added value also comes from expanding on solutions that are already available. When is this an interesting option and what is the best way to approach it? Mobile app expert Jeroen Crevits and Sweet Mustard founder Mike Seghers share their thoughts.

The advantages: knowledge is retained and you avoid resistance

If you had the choice, would you prefer to start things with a clean slate? You definitely won't be the only one. But when your software or application no longer works as it should, throwing everything overboard is not always the best approach. Jeroen explains: "If you decide to keep working with existing technology, you will retain the knowledge you have built up as a company over the years. Your employees can also continue to work in an environment that is familiar to them. Like when changing systems, it is not always easy to get everyone involved, especially when the technology is very different. Not only do you have to go through a major change with the technology itself, but your people are stuck with their old way of working. This is why it can be worthwhile to optimize what is available rather than starting from scratch."

“When changing systems, it is not always easy to get everyone involved, especially when the technology is very different.”

- Jeroen Crevits

The disadvantages: it is not cheaper or less challenging than new software

There is a flipside to this coin, says Mike. "Of course, there are also many challenges involved. Contrary to what you may think, optimizing what is already available is not necessarily cheaper and/or faster. You also need to move forward with the team that has worked on it so far."

SWMU24 Blog Legacy Apps 02

Throw it overboard or keep it: the checklist

Besides the cost involved and how your team is put together, there are many other things you should consider.

  • What about matching with other systems? If the old technology can no longer communicate with the new systems, it may be best to switch to a new one.
  • Availability in the market: Your application may still be working well, but there are no developers available who have experience with the technology in question.
  • Workload to maintain: If it is much quicker to set up a new system than maintaining an old one, then it is worth considering an upgrade.
  • Licensing vs. open source: For some companies, a license seems like a major and overly long-term commitment (with the corresponding price tag), while other companies are less keen on open-source applications.

Red flags: when is it better to abandon a legacy application?

Sometimes it is easy to decide to part ways with your existing technology. Jeroen: "If you stopped development on an application for years at a time, there is a good chance you will not be able to overhaul it. Also, if you no longer have access to the old code, it will be very difficult to make changes. But perhaps the most important thing is the user experience: If end users encounter too many obstacles, it is time to look at new solutions."

Mike: "Sometimes you may be looking at an end-of-life story, such as when new devices can no longer run on old software. Alternatively, if you are stuck with an old product with fixed licenses and no longer have internal IT staff who can work with it, making the switch is a no-brainer."

How does Sweet Mustard tackle it?

In addition to developing new applications, Sweet Mustard specializes in expanding on legacy technology. How do we do this? Mike explains. "We start with conducting a thorough analysis of what is already in place. We look at how old the code is, whether it is still supported, and whether the company still has access to and actually owns the code. If the code has been well documented over the years, it will be much easier for us to build on it."

We then focus on the product and what it should be able to do. Consider aspects such as architecture, infrastructure, roll-out, communication between systems and deployment. "Although this all sounds rather technical, it is a crucial step. We do not make any decisions on our own. We explain the advantages and disadvantages clearly, so you can make an informed decision about what is best for your organization. After all, the right technology can have a major impact on a company and its employees."

We then provide a high-level plan of action, or what we call our user story map. "We determine what the application should be able to do and create a prototype. The customer can then provide feedback based on the prototype. The question after that is simple: Do we continue the course or not? From then on, we work in the same way as with our other projects, i.e. in the form of sprints and regular meetings. These are daily or weekly depending on the project needs."

“The right technology can have a major impact on a company and its employees.”

- Mike Seghers
Sweet Mustard studio Mike LR

What about the human aspect?

Don't forget to explore how people interact with the available options. Look at what they like about the software and the issues it would cause if it was gone. If they could change something, what would it be? Focus on the improvements for the end user, but also include other stakeholders, such as the developers, decision-makers and the people who sign off on the budgets.

After all, getting employees on board is crucial when developing a new(er) digital product. Sweet Mustard supports its customers in the best possible way. Jeroen explains. "We are not a pure technology company, but we are not change managers either – we are somewhere in between. As a team, listen to feedback from users and employees and facilitate teamwork. What we hear helps determine whether we opt for a new or existing technology."

Mike: "Checking whether the team is on board is very important. Employees are sometimes pushed in a new direction due to management decisions, without being able to set out the guidelines themselves. We want to get them involved, because it is better to have everyone onboard earlier rather than later – or too late altogether."

To conclude: general tips

  • Do not just upgrade for the sake of upgrading. Check carefully whether you actually need to switch to a new system.
  • Consider the following before you start: map everything out, talk to everyone involved and do not be afraid to ask difficult questions. Be bold enough to address conflicts early, i.e. before being too far along in the development process.
  • Be prepared to fail quickly and be ready to make quick adjustments. If the end user is not enthusiastic about the product, you can quickly change direction without sustaining major losses.
  • Acknowledge when something is not working and be willing to change the course.

Do you need any help?

Did you know that Sweet Mustard was started partly out of frustration due to code that was used for years and then abruptly phased out? We think this is a shame and believe things can be done differently. Together with our customers, we look for the best digital solutions – from new software to improving existing applications and systems.

Do you have legacy technology that you don't know what to do with?

Contact us and we will be happy to help!