Rewriting or Refactoring a Legacy System

Copying the bunny without the cancer is every legacy rewrite project challenge.

These Change Series take you through the safest and fastest way to replace a legacy system: by using a crossover system during the transition. This is a three-step process.

  1. Start shipping from a crossover system, so you are effectively building one product that ships two ways.
  2. Refactor your one product until you are happy, while migrating collaborating systems to use the new system.
  3. Stop shipping the old system.

These same Change Series apply if you are refactoring a system in place. The teams just skip the crossover system step.

Once that baseline is established, the teams can take their pick of Change Series based on what they are facing. Each addresses one common design flaw, showing how to migrate the functionality without the flaw.