Domain-Driven Transformation - How to Bring (Back) Sustainable Architecture to Legacy Software and Monoliths
Today we know very well how to start a new project on a greenfield site and how to build good architecture. But most of us work in projects that have been around for a long time and whose architecture is not all that nice (to say the least). "Monolith" and "Big Ball of Mud" are the unflattering names for such systems.
In this talk, I will present our methodology of domain-based transformation. It has emerged from our experience of improving legacy systems over the last few years. Four steps lead from the assessment of the current state to the domain-oriented vision of the architecture. We present a catalogue of refactorings that help heal BBOM architectures, anaemic domain models and poorly organised teams.
Finally, I go into our thoughts on the influence of certain properties of domains on decomposition into subdomains.