Course · Training · Workshop
Master Domain-Driven Design
Two- to three-day workshop on strategic and tactical Domain-Driven Design: apply Event Storming, Bounded Contexts, Context Maps, and Aggregates to real-world examples.
A two or three-day workshop where we explore both worlds of Domain-Driven Design. The strategic part focuses on subdomains, classification, domain roles, communication, bounded contexts, and context maps. The tactical part dives into aggregates, entities, and value objects, providing hands-on experience and practical applications. Through interactive sessions, real-world examples, and collaborative exercises, you'll understand how to design and implement effective software systems that align with business goals. Bridge the gap between theory and practice, and shift your approach to software development towards business.
Trainers
What participants say
Even though our company is already highly product-oriented, "DDD, EventStorming and CleanCode" course has provided us with valuable tools to take our approach to the next level, by ensuring that our technical models truly reflect the core domain.
Engineering Manager, Migros Online






These customers booked courses in the same topic cluster.More customers →
Content
The workshop is divided into two comprehensive parts, each designed to provide in-depth knowledge and practical skills in Domain-Driven Design:
Strategic Part:
- Event Storming: Learn the Big Picture and Process Level techniques to visualize and understand complex business processes
- Subdomains: Explore the concept of subdomains and their critical role in organizing and managing business logic
- Bounded Context Canvas: Use the Bounded Context Canvas to map out and define the boundaries of different contexts within your domain
- Core Domain Charts: Learn how to forecast the fluctuation of subdomains and bounded contexts
- Context Map: Create context map to visualize the interactions and relationship between different bounded contexts and teams. Learn about upstream, downstream and patterns like anti-corruption layer or conformist
- Modularization: Discover how to leverage bounded contexts to define modules in your solution architecture
Tactical Part:
- Event Storming: Leverage Design Level technique to find aggregates
- Aggregates: Learn how to design and manage aggregates to ensure consistency
- Entities: Understand the role of entities in Domain-Driven Design and how to model them effectively.
- Value Objects: Explore the concept of value objects and their importance in creating a rich, expressive domain model.
The actual course content may differ from the above depending on the trainer, delivery, duration and the composition of participants.
Request this course in-house
Request a public date
No suitable public date? Register without obligation — once there is enough interest we schedule a new public date and let you know first.
More about Domain-Driven Design
Domain-Driven Design (DDD) is a software development approach that places the complexity of business domains at its core. Developed by Eric Evans, DDD combines strategic and tactical design to build software that is closely aligned with business reality. Concepts such as Bounded Contexts, Ubiquitous Language, and Aggregates help teams model complex domains in a structured way.Further resources:
History
Domain-Driven Design was established by Eric Evans, who published the groundbreaking book "Domain-Driven Design: Tackling Complexity in the Heart of Software" in 2003. Evans described patterns and practices that bring developers and domain experts together to create a shared model of business reality — known as the Ubiquitous Language.
In the years following its publication, DDD was further developed by authors such as Vaughn Vernon and a growing community. Today, DDD is a central concept in modern system architecture, particularly in the context of microservices and event-driven architecture, and is applied in large software projects worldwide.
