This change series enables features to be implemented in the new and old system without additional cost. This additionally reduces the risk of replacement project never finishing.

Habit: Shell System

Organization ROI: Always remain shippable, reduce risk from partially-done work.

Engineer ROI: Migrate each feature into a working system, so you are done-done with a feature when you finish.

Habit: Explicit Dependencies

Organization ROI: Allow migrating features in any order, regardless of how entwined the code is with other features.

Engineer ROI: Dependencies in the old system become obvious so they can be handled differently in the new system.

Habit: Dual-Home Features

Organization ROI: Continue shipping new features without delaying the legacy rewrite.

Engineer ROI: Write new features once, in ways that work in both old and new systems.

Habit: Cross-System Sharing

Organization ROI: Reuse the good parts of your existing system even while creating a new system to replace the bad parts.

Engineer ROI: Re-use code between old and new systems.