Phase 1: Learn Domain A accesses Domain B's data in the legacy directly
Phase 2: Migrate The concept is validated, so migrate required logic to Domain B, create an interface, and migrate Domain A's dependency on the legacy to the new interface.
Legacy-leveraged learning phase is the name I use for a pattern we've been using at PayFit in a few places recently.
This pattern is controversial because it violates my most important modernization principle: respect domain boundaries.
1/4
#legacyModernization #dddDesign