Last Updated on Sep 29, 2022

Domain-driven Design is a set of tools that assist you in designing and implementing software that delivers high value, both strategically and tactically.

Strategic development tools help development teams make pragmatic, effective software design choices, that match the business and its maturity. Deciding the most appropriate Bounded Contexts and differentiating between the core domain and the subdomains, mapping the relationships between the domains, and expressing all of these aspects in a Ubiquitous Language, are all part of Strategic Design.

Tactical development tools help teams design useful software that accurately models the business operations. Designing Aggregates and their underlying Entities and Value Objects, exposing domain functionality through Application Services, and integrating different Bounded Contexts through Domain Events - these aspects are part of DDD's Tactical Design toolkit.

© 2022 Ambitious Systems. All Rights Reserved.