Want to build better business software by aligning your code with your culture? Join DDD expert and business software artist Marco Heimeshoff for this intensive workshop exploring the technical relationship between code, culture and architecture and learn how to model and implement software from a business perspective.
You will learn how to scale your application so that any number of queries can be handled, while also maintaining a behaviour rich domain model that can deal with complex scenarios. Discover how Event Sourcing enables you to build highly cohesive and decoupled modules and changes the way you write and communicate about tests forever.
These patterns will help you to put your energy where the business value is, by letting you partition your team by their expertise and outsource the busy work. Drawing from Domain-driven design concepts, write code with Command Query Response Segregation and learn how Event Sourcing tells a story in domain terms.
Keep your software system design in line with your organisation's needs, improve readability, and strengthen your communication with key stakeholders.
Learn how to:
Understand Domain-driven design (DDD) and when it applies
Model the problem domain and explore multiple options of solutions
Align your design with your business needs using CQRS and DDD
Build scalable and decoupled applications with Event Sourcing
- Domain-driven Design overview: Essential ideas and language
- Why, how and when to apply Domain-driven Design
- Introducing the domain
- Modelling Value types and Entities
- Theory on aggregates in Domain-driven Design
- Modelling Aggregates
- Capturing user intention instead of editing data
- Applying Event Sourcing
- Testing with Domain Events using Behaviour Driven Development
- Dealing with trade offs / heuristics around using events
- CQRS Theory
- Coding: Separating Write model from Readmodel in our domain
- Implementing read models with poly structured data
- Dealing with eventual consistency
- Building distributed systems with Pub/Sub
- Strategies for long lived, evolving Event Sourced systems
- Benefits, risks and socio-technical implications of CQRS and Event Sourcing
- Design APIs of Event Sourced systems depending on socio-technical relationships
- Case studies and review of exercises
- Application of CQRS & Event Sourcing in front-end development
- Discussions and final Q&A
If you are an Architect or Senior Developer with a strong interest in Domain Driven Design and modern message-driven architectures then this DDD, CQRS & Event Sourcing course is for you.
To benefit from this DDD, CQRS & Event Sourcing course, you should have existing professional software development experience. Some prior knowledge about DDD, CQRS and Event Sourcing is helpful, but this is not a prerequisite.