However, creating multiple models can be hard. When we begin gaining insight from our domain, we suffer a lot from cognitive biases that get in our way to gain new insights. We need these insights before we even start thinking about modeling. Tools like EventStorming can help us to deliberate discover and battle these biases. They help you quickly gain insight into the problem space.
In this training, you will learn the basics of EventStorming to help you gain the necessary insights you need to design and model quality software. With your newly acquired domain knowledge, you can start shaping multiple models for the same problem with the Domain Driven Design tactical design patterns. This way of visualizing enables you to quickly iterate over the different models and figure out which will be the best to use. You will use this model to start implementing this in code and get fast feedback if your model works.
Is Tactical Domain-Driven Design (DDD) Foundation training right for me?
- Yes - if you are new to Software Development
- Yes - if you are a Software Developer
- Yes - if you are a Software Architect
What will I achieve by completing this training?
You will learn:
- What a design and what a model is
- The basics of EventStorming
- The Domain-Driven Design tactical design patterns
- The building blocks of Model-Driven design
You will gain hands-on experience in:
- Modeling a bounded context with EventStorming
- How to use the tactical design patterns in a bounded context
- Implementing tactical design patterns
You will develop the skills to:
- Design and model quality software
- Quickly iterate over multiple models to find the best one
- Use Test-Driven Development (TDD) to implement a design
What else should I know?
- Advanced reading of ‘Domain-Driven Design Distilled’ by Vaughn Vernon or ‘Domain-Driven Design’ by Eric Evans is recommended but not required
- Ability to properly remove a sticky note
- Read the free ebook The Anatomy Of Domain-Driven Design
- Bring your personal laptop with your favorite IDE and programming language