Legacy software and maintenance
Looking after software that is already in service: when to keep it, when to replace it, what a support agreement should cover and how to keep an older system dependable.
If you own business software that someone else built and that is now older than anyone likes to admit, this topic is for you. The decision it covers is the one every owner of an older system faces sooner or later: keep it running, modernise it in stages, or replace it. The articles here cover that decision and the practical work around it, from what a support agreement should commit to, to what moving off an unsupported server involves.
Where to start
- What is a legacy system? answers the first question: what the term actually means, and whether the system you have counts.
- When should you replace legacy software, and when should you keep it? gives you a way to decide between keeping, modernising and replacing without reading any code.
- What is software maintenance? explains the four kinds of work a maintained system needs, so you can tell what you are paying for.
- Why a service level agreement is a good idea for software support sets out what a support agreement should state and how to judge a draft.
What people get wrong
The first mistake is treating the word legacy as a verdict. A system that still does its job, that staff know and that holds years of your data is an asset. It becomes a problem when nobody can change it safely, or when the platform it runs on falls out of support. Both can be fixed without a rewrite, and the one person who understood the system leaving is the usual trigger for finding out which applies to you.
The second is thinking of maintenance as fixing bugs. Most maintenance on a mature system is keeping it in step with everything around it: the version of SQL Server or Windows Server it runs on, the .NET version it was built with, the browsers staff use and the other systems it exchanges data with. Technical debt, the subject of one of the articles here, is what builds up when that work is postponed. It shows up as small changes taking longer each year, not as a single failure.
The third is waiting until the developer has gone before asking where the source code is, whether it can still be built and who holds the hosting and domain accounts. Those questions cost nothing while the developer is still answering the phone, and a great deal afterwards.
How this connects to our work
Taking over, maintaining and modernising software that someone else built is the centre of what CodeFirst does. A software takeover starts with an assessment that proves the system can be built from its source code, released in a controlled way and restored from a backup, because until those things are true no change to it is safe. After that, software maintenance runs on a monthly plan, and the source code, accounts and documentation stay yours, kept in a state another team could pick up.
Articles on legacy software and maintenance
- 2 October 2026 The 4 best support ticket systems, and how to choose one
Four software support ticket systems worth shortlisting in 2026, what each suits, how we chose them and the checks to make before you commit to one of them.
- 2 October 2026 5 most common software problems, and how to avoid them
The five most common software development problems, how each one starts, the early signs to watch for and what the person paying for the work can do about it.
- 2 October 2026 .NET Framework to .NET 10 migration: what it involves
What moving a .NET Framework application to .NET 10 involves: whether you need to, what has no equivalent, Microsoft's current tools and the order of the work.
- 2 October 2026 When to replace legacy software, and when to keep it
A legacy system that still does its job is an asset. Here is how to tell when to keep maintaining it, when to modernise it in stages and when to replace it.
- 2 October 2026 Choosing a software partner: delivery and support matter
Why to choose a software partner that practises continuous delivery, what it means for fixes and support, and the questions that show whether a supplier does.
- 2 October 2026 Spreadsheet or database: when to move, and how to do it
A spreadsheet is a grid anyone can edit freely; a database holds structured records with rules. Here is how to tell when to move and how to do it.
- 2 October 2026 Business process automation (BPA) and where to start
Business process automation (BPA) uses software to carry out the routine steps of a process. What it means, which processes suit it and how to start with one.
- 2 October 2026 How to upgrade SQL Server 2016 to SQL Server 2022 or 2025
Step-by-step guide to moving a business database from SQL Server 2016 to 2022 or 2025: upgrade paths, compatibility level, cutover, rollback and common faults.
- 2 October 2026 What is a legacy system? Meaning, examples and next steps
A legacy system is software still in use that has become hard to change, support or connect. Here is what the term means, with examples and your options.
- 2 October 2026 What is software maintenance? The four types explained
Software maintenance is the work that keeps software working, secure and useful after it goes live. The four types explained, with examples and checks to make.
- 2 October 2026 What is system integration? Methods and examples
System integration connects separate software systems so data entered in one reaches the rest without re-typing. The methods, the key decisions and an example.
- 2 October 2026 What is technical debt? A plain-English guide for buyers
Technical debt is the future cost of shortcuts and postponed upkeep in software. Here is how to recognise it without reading code and how to pay it down.
- 2 October 2026 Why a service level agreement is a good idea for support
A service level agreement sets how fast a software supplier responds, in which hours and what happens if it does not. Why to have one and how to judge a draft.
- 2 October 2026 Windows Server 2016 end of support in 2027: how to upgrade
Windows Server 2016 support ends on 12 January 2027. Which versions you can upgrade to in one step, in-place or new server, what to check first and the stopgap.
Tell us about your system
Say what it does, what it is built on and what is worrying you. We will reply with what we would look at first and whether we are the right people to help.