What is Legacy Software?

What is Legacy Software?

  • It is no longer be receiving regular updates or scheduled maintenance from the software developers.
  • The original developers are not be involved anymore, in fact it is common that it has been through several developers since it was first installed.
  • Software maintenance will be ad hoc, fixing critical bugs, just enough to keep it working.
  • It will be running on out of date platforms, such as older versions of software languages and libraries and no longer supported operating systems.
  • The hardware it runs on may no longer be upgradeable.
  • Very few people in the company, if any understand how it works. It has become a black box that does a job but the knowledge about how it does it has been lost.



Why do companies still use Legacy Software?

  • IT WORKS!

The biggest reason is that it still works for the company. Even if it's not perfect the limitations have not yet become bigger than hassle and cost of trying to update to something more modern.

  • COST

The cost of replacing legacy systems can involve a large upfront investment in money and time. Although the cost of maintaining legacy software can be very high, the payment profile is smaller regular amounts that fit in better with most companies cashflow.

  • FEAR

Change is hard, especially when it involves software that is widely used by an organisation. The "if it isn't broke, don't fix it" approach is easier.

  • AVAILABILITY

It is often the case that a direct off the shelf replacement is not available. Even the leap to the most current version of the software in use might be involve losing critical functionality.



What are the risks in using Legacy Software?

  • Maintenance

Firstly, as technology stack gets older so does the availability of developers that can maintain the software. Some of the highest paid developers are those who can still code in very out of date languages.

Secondly, the maintenance is often just to stand still, to keep software working as it does. This is often dead money: no progress is being made.

  • Security

Every part of the technology stack that is legacy and no longer getting security patches is a risk and that risk increases over time. For example, of the software can only run windows XP, then no matter what the state of the security patches of the actual software, Windows XP becomes the weak point.

  • Performance

Performance of unmaintained software tends to degrade over time. The gap to modern software will also widen as new technologies in the software stack often improve performance.

  • Improvements

It is hard to justify spending money on legacy software if there is any plan in the future to upgrade.

  • Integration

Technically we will often say that legacy software is a data silo when it is not practical to keep it integrated with other bits of software. The data is in one place (a risk), that can only be manually transferred to and from other bits of software (human error risk and inefficient).



The 4 Options You Have

Do nothing:

It works for now, so just keep your fingers crossed!


Maintain:

Keep it all working as best you can by bug fixing as and when they come up. Accept that maintenance costs are going to be high, that the money spent is probably wasted in the long term and that there will be a day when this is just nor possible to continue with.


Start Again:

Start from scratch with a modern tech stack taking the best bits from the legacy software and building new functionality that you need at the same time. Although this tends to be intensive for both cashflow and time in the short term it is a very valid route to take.


Incremental Improvements:

The hybrid approach between maintain and start again. Keep the current legacy software working and incrementally redevelop parts of it into modern standards. Therefore, over time the whole software gets updated. this requires a specialised development team who can deal with both the legacy code but also develop to modern standards with modern technologies.



Conclusion

Which should you choose? Well, we really like the incremental improvements approach and would class ourselves as experts in doing just that. It is, however not always the right answer. For example if you no longer have access to the underlying code, and that is where we would recommend starting the development from scratch. The "do nothing" and "maintain" options are just too short term to be valid ways to approach legacy software.

In the next post we will cover 'how to start from scratch', approach. In the meantime; if you need any help with your legacy software, then please contact us!

+44 (0) 1604 663690 | [email protected] | Unit 2 Basset Court, Grange Park, Northampton, NN4 5EZ



Grady Andersen

No-Code App Development for Creative Change Makers

1 年

Ah, the good old Legacy Software - it's like finding an ancient artifact in the digital world.

Justin Cross

Passionate about the advancement of digital technologies.

1 年

Commodore PET. The one and only computer we had in high school. That or punched cards. Yes we did play games on it.

Gary Holmes

Customised holidays around the World. I plan the experience, and you make the memories.

1 年

I suspect this will go down well

要查看或添加评论,请登录

Ben Thomson的更多文章

  • How Much Does Bespoke Software Cost?

    How Much Does Bespoke Software Cost?

    Before we start, this Newsletter is written in late November 2024, the numbers used reflect prices at the time of…

  • What is Bespoke Software?

    What is Bespoke Software?

    This seems like a relatively easy question to answer right? In fact, in many ways, it is: Bespoke Software is software…

    24 条评论
  • Software Maintenance FAQ

    Software Maintenance FAQ

    Over the last few posts, we have covered many common questions we are usually asked when it comes to Software…

    19 条评论
  • How Much Does Software Maintenance Cost?

    How Much Does Software Maintenance Cost?

    In this series of posts about Software Maintenance, we have covered a lot of topics including; What is Software…

    25 条评论
  • Software Maintenance Best Practices

    Software Maintenance Best Practices

    In our last post we took a look at The 4 Types of Software Maintenance, In this post we are going to dive into what…

  • The 4 Types of Software Maintenance

    The 4 Types of Software Maintenance

    In this post we are continuing our deeper dive into the questions that we get about software maintenance. In our…

  • Why is software maintenance important?

    Why is software maintenance important?

    In the last instalment of our Newsletter series we discussed 'What is Software Maintenance?' Now that we understand the…

    2 条评论
  • What is Software Maintenance?

    What is Software Maintenance?

    In the last series of posts we discussed 'Legacy Software', now let's dive deep into what software maintenance. Our…

    2 条评论
  • Outsourcing Versus In-House Software Development

    Outsourcing Versus In-House Software Development

    The demand for software development has grown massively over the last 5 years. So much so we have consistent flow of…

    4 条评论
  • Legacy Software - Love It!

    Legacy Software - Love It!

    As we usher in the new, lets just take a moment to talk about the "old", and why we love it like it's new. Because in…

社区洞察

其他会员也浏览了