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
- Establishing a ubiquitous language and collaborating with domain experts
- Differentiating between core, supporting, and generic subdomains
Strategic Design and Bounded Contexts
- Defining bounded contexts and their specific responsibilities
- Utilizing context mapping and integration patterns
- Managing team structures, organizational boundaries, and data ownership
Tactical Patterns — Foundational Elements of the Domain Model
- Entities and managing identity
- Value objects and ensuring immutability
- Aggregates and defining transactional boundaries
Domain Services, Repositories, and Factories
- Deciding when to use domain services versus application services
- Applying repository patterns and considering persistence strategies
- Using factory patterns for complex object instantiation
Modeling Complex Behavior and Invariants
- Designing invariants and enforcing business rules
- Implementing event-driven modeling and domain events
- Managing consistency models, including eventual consistency and sagas
Integrating DDD with Architectural and Engineering Practices
- Aligning DDD with microservices and modular monolith architectures
- Designing APIs, implementing anti-corruption layers, and managing integrations
- Testing domain logic through unit, integration, and contract tests
Implementing DDD in Teams and Organizations
- Conducting domain discovery workshops and Event Storming sessions
- Developing and maintaining a ubiquitous language across teams
- Measuring outcomes and iterating on the domain model
Conclusion and Recommended Next Steps
Requirements
- Proficiency in object-oriented programming languages
- Solid grasp of software architecture fundamentals
- Experience with Agile development methodologies
Target Audience
- Senior software developers
- Software architects
- Technical leads
21 Hours
Testimonials (1)
That we could you real life examples