Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Duration 21 hours
Course Outline
Foundations of Domain-Driven Design
- Core principles and the rationale behind DDD
- Establishing ubiquitous language and collaborating with domain experts
- Differentiating between core, supporting, and generic subdomains
Strategic Design and Bounded Contexts
- Defining bounded contexts and clarifying their responsibilities
- Mapping contexts and applying integration patterns
- Managing team structures, organizational boundaries, and data ownership
Tactical Patterns — Building Blocks of the Domain Model
- Entities and managing identity
- Value objects and the principle of immutability
- Aggregates and defining transaction boundaries
Domain Services, Repositories, and Factories
- Distinguishing between domain services and application services
- Repository patterns and persistence strategies
- Using factory patterns for complex object creation
Modeling Complex Behavior and Invariants
- Designing invariants and enforcing business rules
- Event-driven modeling and the use of domain events
- Consistency models, including eventual consistency and sagas
Integrating DDD with Architecture and Engineering Practices
- Aligning DDD with microservices and modular monoliths
- API design, anti-corruption layers, and integration strategies
- Testing domain logic through unit, integration, and contract tests
Adopting DDD in Teams and Organizations
- Facilitating domain discovery workshops and Event Storming sessions
- Creating and managing a ubiquitous language across teams
- Measuring success and iterating on the domain model
Summary and Next Steps
Requirements
- Solid programming proficiency in object-oriented languages
- A clear understanding of software architecture principles
- Experience with Agile development methodologies
Audience
- Senior developers
- Software architects
- Technical leads
Testimonials (1)
That we could you real life examples