Applying DDD and EventStorming in Modern Architecture
This training is the perfect match for those who attended the “Implementing Modern Architecture” training and would like to know more about how Domain-Driven Design works in real life.
During 2 days, we will primarily focus on Domain-Driven Design (DDD) and EventStorming. Those tools help to align software architecture with business needs and increase the chances of an architecture being successful.
By being a part of the series of hands-on workshops, participants will learn how to understand business needs, discover bounded contexts, and design working models using EventStorming. The training covers strategic and tactical DDD, including designing aggregates and value objects, ensuring invariants, working with domain events, accessing entities using repositories, and more. It’s ideal for IT specialists who would like to build software systems that solve business problems and are well-designed from a technical perspective.
50% workshop /
50% lecture
Architects, Team Leads, Developers
- Big-Picture and Process-Modelling EventStorming
- Discovering Bounded Contexts
- Tactical DDD: entities, value objects, aggregates
- Ensuring invariants, modelling state transitions
- Repositories, domain services, factories, and domain events
Day 1
- •Domain-Driven Design
- ○What is DDD and why use it?
- ○Strategic DDD
- ○How to discover a Bounded Context?
- •Introduction to EventStorming
- ○What is EventStorming and why use it?
- ○Preparation for an EventStorming workshop
- •Big Picture EventStorming workshop
- ○Discovering events, systems, and actors
- •Process Modeling with EventStorming workshop
- ○Discovering Commands, Policies, and Read Models
- •Discovering Bounded Contexts workshop
Day 2
- •Essentials of Tactical DDD
- ○Value Objects
- ○Entities
- ○Aggregates
- •Discovering Aggregates workshop
- •Applying Tactical DDD in real code
- ○Designing Aggregates and Value Objects
- ○Ensuring Invariants in a Domain Model
- ○References in Object Graphs
- ○Choosing ID type
- ○Application, Domain, Infrastructure, and Presentation layers
- ○Implementing complex scenarios using Domain Services
- ○State transitions in Aggregates
- ○Working with Events in a Domain Model
- ○Managing Aggregates using Factory, Repository, and Memento
- ○Implementing Concurrency
Ready to Get Started?
Contact us to discuss your training needs, schedule, and how we can customize this program for your team.





