Berlin

November 4 & 5, 2024

New York

September 4 & 5, 2024

London

June 16 & 17, 2025

Legacy code: Big Rewrite or Progressive Rejuvenation?

If we want to renew a big legacy system we have to choose between a big rewrite or a progressive code rejuvenation.

Speakers: Uberto Barbini

Register or log in to access this video

Create an account to access our free engineering leadership content, free online events and to receive our weekly email newsletter. We will also keep you up to date with LeadDev events.

Register with google

We have linked your account and just need a few more details to complete your registration:

Terms and conditions

 

 

Enter your email address to reset your password.

 

A link has been emailed to you - check your inbox.



Don't have an account? Click here to register
January 27, 2021

If we want to renew a big legacy system we have to choose between a big rewrite or a progressive code rejuvenation. People love to complain about their legacy systems, but they are successful systems which deliver real value to the business, and this is definitely a good thing. Still, the usual approach to legacy pain is a kind of take on the chin. I think we can do better than this

The first step to improve legacy code seems a catch 22. You cannot refactor or rewrite without tests and you cannot test without refactoring first. We will explore how can we solve this deadlock. I’ll present my experience in working on a big system in the finance industry, how to choose between rewriting or rejuvenating and some refactoring techniques I developed specifically. The goal is to be able to work in a TDD fashion on a big legacy application without risky rewrites or big refactoring. Instead, we will see how to split the monolithic in modules easy to maintain and then disentangle small bits of code at time.