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 software architects, developers, and project managers who would like to build software systems that solve business problems and are well-designed from a technical perspective.
Architects, Team Leads, Senior Developers
• Domain-Driven Design
o What is DDD and why use it?
o Strategic DDD
o How to discover a Bounded Context?
• Discovering Bounded Contexts with EventStorming
o What is EventStorming and why use it?
o Preparation for an EventStorming workshop
o Running a Big Picture EventStorming workshop
• Process modeling with EventStorming workshop
o Discovering Commands, Policies, and Read Models
• Essentials of Tactical DDD
o Value Objects
• Discovering Aggregates workshop
• Applying Tactical DDD in real code
o Designing Aggregates and Value Objects
o Ensuring Invariants in a Domain Model
o References in Object Graphs
o Choosing ID type
o Application, Domain, Infrastructure, and Presentation layers
o Implementing complex scenarios using Domain Services
o State transitions in Aggregates
o Working with Events in a Domain Model
o Managing Aggregates using Factory, Repository, and Memento
o Implementing Concurrency
50% workshop / 50% lecture
Day 1: Domain-Driven Design, Discovering Bounded Contexts with EventStorming, Process modeling with EventStorming workshop
Day 2: Essentials of Tactical DDD, Discovering Aggregates workshop, Applying Tactical DDD in real code
PS: BRING YOUR OWN COMPUTER