What is needed is a set of techniques and processes to replace parts of a legacy system while keeping the old parts running smoothly alongside the new. As an indication of an idea whose time has come, in the Summer of '04, Martin Fowler published an entry to his "bliki" proposing an approach called, vividly, "StranglerApplication?" (http://www.martinfowler.com/bliki/StranglerApplication.html). At a very high level, Fowler described how a new system can grow "around the edges of the old", eventually overtaking and replacing it.
The presenter's team had started piecewise-rewriting a legacy Java application months before Fowler published the StranglerApplication? article. Since that time, the team has found the metaphor to be very appropriate. This session is a case study in strangling this production application.
Strangling a legacy application requires more than just a few development techniques. It requires attention to processes and careful decision-making. Accordingly, this session covers reasons to strangle, team philosophies, methodology, strangling techniques, lessons learned, and success indicators. In this session you'll learn pragmatic approaches to strangling legacy code from a practitioner who's been there, is doing that.