This change series fixes duplication and semi-duplication in the old system, making it easy to understand what to move to the new system.

Habit: Whole Values 1 — Fix Primitive Obsession

Organization ROI: Reduce bugs that arise from miscommunciation. Create classes to unwind many common design problems.

Engineer ROI: Create missing classes by following existing code.

Habit: Names Expose Duplication

Organization ROI: Find opportunities to reduce duplication without introducing coupling bugs.

Engineer ROI: Honest names distinguish intentional from accidental near-duplication.

Habit: Whole Values 2 — Collect Behaviors

Organization ROI: Decrease duplicate code and God Classes, reducing testing, implementation, and bug costs.

Engineer ROI: Move code onto whole value classes from procedures that use God Classes.

Habit: Split God Classes 3 — Break Inbound Dependencies

Organization ROI: Prevent bugs due to data sharing between remote parts of the code. Update remote parts of the code separately.

Engineer ROI: Split one set of code that works with the God Class to use something simpler.