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.
Course Outline
Introduction to Domain-Driven Design
- Core principles and the rationale behind DDD
- Developing a ubiquitous language and collaborating effectively with domain experts
- Differentiating between core, supporting, and generic subdomains
Strategic Design and Bounded Contexts
- Establishing bounded contexts and defining their specific responsibilities
- Context mapping and various integration patterns
- Managing team structures, organizational boundaries, and data ownership
Tactical Patterns — The 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
- Determining when to utilize domain services versus application services
- Repository patterns and key persistence considerations
- Factory patterns for managing complex object creation
Modeling Complex Behavior and Invariants
- Designing invariants to enforce critical business rules
- Event-driven modeling and the use of domain events
- Consistency models, focusing on eventual consistency and sagas
Integrating DDD with Architecture and Engineering Practices
- Aligning DDD with microservices and modular monolith architectures
- API design, anti-corruption layers, and effective 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
- Establishing and maintaining a ubiquitous language across different teams
- Measuring success and continuously iterating on the domain model
Summary and Recommended Next Steps
Requirements
- Proficient experience 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
21 Hours
Testimonials (1)
That we could you real life examples