Advanced Legacy Code Recovery and Replacement

Many code bases become intractable over time. In this course we will do an in-depth dive into an arsenal of techniques that can be used to introduce test scaffolding, refactor, and optionally replace critical code that is hard to work with.

This class is structured as a set of lectures, discussions, and hands-on exercises.

View dates

Trainer

Michael Feathers

Michael Feathers is the Founder and Director of R7K Research & Conveyance, a company specializing in software and organization design. Prior to forming R7K, Michael was the Chief Scientist of Obtiva and a consultant with Object Mentor International. Over the past 20 years he has consulted with hundreds of organizations, supporting them with general software design issues, process change and code revitalization.

A frequent presenter at national and international conferences, Michael is also the author of the book Working Effectively with Legacy Code (Prentice Hall, 2004).

Agenda

  • Introduction / Testing as a Programmer’s tool
  • Seam identification
  • Breaking Dependencies – Sensing and Separation
  • Breaking Hidden and Manifest Dependencies
  • Characterization Testing
  • Refactoring Toward Understandability
  • Strategies for Getting Large Methods under Test
  • Dealing with Deeply Nested Conditionals
  • Planning Large-Scale Refactoring and Technical Debt Reduction
  • Domain Wrapping and Seam Injection
  • Patterns for Strategic Rewrite

Dates

Berlin

14 Oct – 15 Oct 2019 09 AM – 05 PM itemis AG
Tauentzienstr. 14
10789 Berlin
Germany