This event has ended. View the official site or create your own event → Check it out
This event has ended. Create your own

Have a ticket for a workshop? It’s time to reserve the seat!

In addition to great guest speakers, this year we will host a ton of engaging and up-to-the-moment workshops on a whole range of topics.

There are 10 different workshops scheduled on Nov 19 & 20. In addition, on Nov 15 there is a bonus workshop arranged with Dan North - Originator of BDD.

If you are coming earlier, your Build Stuff workshop ticket is valid for the workshop on Nov 15 as well!

Don’t have a ticket for a workshop? There are still some seats available!


View analytic
Saturday, November 19 • 09:00 - 17:00
Michael Feathers - Working Effectively with Legacy Code
Test Driven Development and Refactoring are powerful tools. With them you can add new codeto systems and make existing code more maintainable. However, refactoring code withouthaving tests in place can be hazardous. This class presents a collection of dependencybreaking and test writing techniques that can be used to get existing code safely under test forrefactoring. These techniques can be used in conjunction with Test Driven Development tobreathe new life into large existing code bases. This class is structured as a set of lectures,discussions, and hands­on exercises.
By the end of this course, you will:
● Understand what legacy code is
● Understand how to break dependencies in legacy code
● Learn a variety of techniques for breaking external dependencies
● Learn a variety of techniques for breaking internal dependencies
● Understand when to employ each of the techniques
● Learn a variety of strategies for code refactoring
● Learn how to identify change points
● Learn how to find an inflection point
● Understand the concept of test coverage for inflection points
● Understand how to write effective tests for legacy codeOutline

Here is a brief course outline for the course:
● 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

avatar for Michael Feathers

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... Read More →

Saturday November 19, 2016 09:00 - 17:00