Modernising legacy software - the real deal

On the face of it, modernising your IT estate sounds simple - take something that works well and that everyone understands and bring it up to date with modern tech. The reality is often very different; it’s a journey filled with unexpected turns. Here are 5 things that you need to keep in mind.

Modernising legacy software - the real deal

1. Requirements - the unseen hurdles

So, you think just because you have an existing system, the requirements are clear, right? Wrong.

Even with an existing system, don’t assume you (or anyone in your team) know everything. You need lots of analysis capacity to uncover the real tech requirements and not just the business requirements. Let’s not forget the infamous tech debt, the little bits of unusual validation no one has dared question or the seemingly innocuous calculation that leads nowhere—or so you thought! Tech debt is the silent killer in every legacy codebase, waiting to trip up your modernisation journey.

2. Architecture - pragmatism over fashion

Engineers love shiny new tech. They’ve worked on your legacy system for years, so who would blame them for wanting to explore the latest and greatest? But here’s the catch: blindly applying today’s fashionable architectures and tools rarely works for greenfield projects, never mind brownfield projects. For legacy systems, you need a big dose of pragmatism. Think of it as renovating an old house—you’ve got to be sympathetic to the existing architecture.

3. Keeping the lights on - celebrate the old

Your system is still around because it’s been successful; it does its job, so give it the respect it deserves. Business as Usual (BAU) customer demands need to be prioritised, and resources should be allocated accordingly. Some duplication of improvements will unfortunately be par for the course during any transition period. Think of it like keeping your old car running while you save to buy your new one; every so often, some of those savings need to be redirected to the old one.

4. Lift and shift - the great fallacy

The idea that you can simply re-architect your existing system as it is today is a fairy tale. Life moves quickly, so does your business, and your solution will have to adapt to customer demands throughout the modernisation effort. Prepare for a bit of "while we’re at it, let’s also do this" from your Product Owners too. Good scope management is crucial. Set your "North Star" for improvements and stick to it.

5. Time - patience is key

Modernising an IT solution is a marathon, not a sprint. Manage your expectations and those of everyone involved. It’s going to take a while, so buckle up and enjoy the ride.

Conclusion

In conclusion, modernising IT solutions is a complex but rewarding process. Embrace the quirks of your legacy system, be realistic about what’s achievable, and don’t get seduced by every new tech trend. With the right approach, your old system can be transformed into a sleek, modern powerhouse. Remember, enjoy the journey - solving these kinds of problems is what brought us all to Software Engineering!

Article By
blog author

Colin Pattison

Chief Commercial Officer

Comments...