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
- The core principles and driving motivations behind DDD.
- The role of ubiquitous language and collaboration with domain experts.
- Differentiating between core, supporting, and generic subdomains.
Strategic Design and Bounded Contexts
- Establishing bounded contexts and defining their specific responsibilities.
- Utilizing context mapping and integration patterns.
- Managing team structures, organizational boundaries, and data ownership.
Tactical Patterns — Core Components of the Domain Model
- Entities and managing object identity.
- Value objects and the principle of immutability.
- Aggregates and defining transaction boundaries.
Domain Services, Repositories, and Factories
- Determining when to apply domain services versus application services.
- Repository patterns and persistence strategies.
- Using factory patterns for the creation of complex objects.
Modeling Complex Behavior and Invariants
- Designing invariants and enforcing strict business rules.
- Event-driven modeling and the use of domain events.
- Consistency models, including eventual consistency and sagas.
Integrating DDD with Architectural and Engineering Standards
- Aligning DDD with microservices and modular monolith architectures.
- API design, anti-corruption layers, and integration strategies.
- Testing domain logic through unit, integration, and contract tests.
Implementing DDD in Teams and Organizations
- Facilitating domain discovery workshops and Event Storming sessions.
- Establishing and maintaining a ubiquitous language across multiple teams.
- Evaluating success metrics and iterating on the domain model.
Conclusion and Future Steps
Requirements
- Solid proficiency in object-oriented programming languages.
- A solid grasp of software architecture fundamentals.
- Working knowledge of Agile development methodologies.
Target Audience
- Senior developers.
- Software architects.
- Technical leads.
Testimonials (1)
That we could you real life examples