Skip to Content
Re-Engineering Legacy Software
book

Re-Engineering Legacy Software

by Chris Birchall
April 2016
Intermediate to advanced
232 pages
8h 3m
English
Manning Publications

Overview

As a developer, you may inherit projects built on existing codebases with design patterns, usage assumptions, infrastructure, and tooling from another time and another team. Fortunately, there are ways to breathe new life into legacy projects so you can maintain, improve, and scale them without fighting their limitations.

Re-Engineering Legacy Software is an experience-driven guide to revitalizing inherited projects. It covers refactoring, quality metrics, toolchain and workflow, continuous integration, infrastructure automation, and organizational culture. You'll learn techniques for introducing dependency injection for code modularity, quantitatively measuring quality, and automating infrastructure. You'll also develop practical processes for deciding whether to rewrite or refactor, organizing teams, and convincing management that quality matters. Core topics include deciphering and modularizing awkward code structures, integrating and automating tests, replacing outdated build systems, and using tools like Vagrant and Ansible for infrastructure automation.



About the Technology


About the Book


What's Inside
  • Refactoring legacy codebases
  • Continuous inspection and integration
  • Automating legacy infrastructure
  • New tests for old code
  • Modularizing monolithic projects


About the Reader

This book is written for developers and team leads comfortable with an OO language like Java or C#.



About the Author

Chris Birchall is a senior developer at the Guardian in London, working on the back-end services that power the website.



Quotes
A comprehensive guide to turning legacy software into modern, up-to-date projects!
- Jean-François Morin, Université Laval

I learn something new every time I read it.
- Lorrie MacKinnon, Treasury Board Secretariat Province of Ontario

The book I wanted to read years ago.
- Ferdinando Santacroce, 7Pixel

A very practical guide to one of the most difficult aspects of software development.
- William E. Wheeler, West Corporation

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Programming Microsoft® ASP.NET 3.5

Programming Microsoft® ASP.NET 3.5

Dino Esposito
Programming Microsoft® SQL Server® 2012

Programming Microsoft® SQL Server® 2012

Leonard Lobel and Andrew Brust
IBM Software for SAP Solutions

IBM Software for SAP Solutions

Yaro Dunchych, Peter Bahrs, Khirallah Birkler, Bernd Eberhardt, Navneet Goyal, James Hunter, Derek Jennings, Joe Kaczmarek, Michel Laaroussi, Michael Love, Stefan Momma, Nick Norris, Martin Oberhofer, Manfred Oevers, Paul Pacholski, Andrew Stalnecker, Jörg Stolzenberg, Pierre Valiquette
Software Mistakes and Tradeoffs

Software Mistakes and Tradeoffs

Tomasz Lelek, Jonathan Skeet

Publisher Resources

ISBN: 9781617292507Publisher SupportPublisher Website