To prepare legacy software for the future, it's essential to modernize it. Domain-Driven Transformation provides an effective approach for transforming large legacy systems—either by breaking them into microservices or by converting them into maintainable modular monoliths.
In this guide, Carola Lilienthal and Henning Schwentner present their method, a comprehensive approach for transforming architecturally eroded software systems at the strategic, technical, and team organizational levels. You'll learn how to analyze business processes, break them down into bounded contexts, and apply domain-driven refactorings within Agile teams. Finally, this book offers guidance on designing the transformation process based on the current state of the existing architecture.
Packed with real-world examples and case-driven insights, you'll uncover the tools you need to build systems that scale, support business agility, and remain resilient over time.
Assess your system's modularity and architectural health with the Modularity Maturity Index (MMI) Apply strategic and tactical domain-driven design (DDD) to manage complexity Reorganize and align your teams with Team Topologies Use EventStorming, domain storytelling, and Scenario Casting to clarify design Refactor incrementally with patterns that reduce risk while delivering value
I read the German edition of this book. If you are looking to transform a legacy system into a future-proof, high-quality architecture aligned with solid Domain-Driven Design principles, this book provides an excellent framework for doing so.
Rather than promoting a big-bang rewrite or abstract theory, it offers a structured, step-by-step approach with clearly defined priorities. The focus is on reducing risk, improving quality incrementally, and making deliberate architectural decisions grounded in the business domain.
What I particularly appreciated is its practicality. The guidance is actionable and realistic for real-world legacy systems, not idealized greenfield projects. It helps you understand where to start, what to address first, and how to evolve the system safely while keeping it running.
This book fills a long-standing gap in the DDD books ecosystem.
A highly valuable resource for anyone responsible for modernizing complex legacy software with a long-term, quality-driven mindset.