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
- Foundational principles and the rationale behind DDD
- Establishing a ubiquitous language and fostering collaboration with domain experts
- Differentiating between core, supporting, and generic subdomains
Strategic Design and Bounded Contexts
- Defining bounded contexts and their respective responsibilities
- Context mapping and integration strategies
- Managing team structures, organizational boundaries, and data ownership
Tactical Patterns — Fundamental Components of the Domain Model
- Entities and identity management
- Value objects and the principle of immutability
- Aggregates and defining transaction boundaries
Domain Services, Repositories, and Factories
- Determining when to use domain services versus application services
- Repository patterns and considerations for persistence
- Factory patterns for managing complex object creation
Modeling Complex Behavior and Invariants
- Designing invariants and enforcing business rules
- Event-driven modeling and the role of domain events
- Consistency models: eventual consistency and sagas
Aligning DDD with Architecture and Engineering Practices
- Harmonizing DDD with microservices and modular monoliths
- API design, anti-corruption layers, and integration tactics
- Testing domain logic through unit tests, integration tests, and contract tests
Adopting DDD in Teams and Organizations
- Conducting domain discovery workshops and Event Storming sessions
- Establishing and maintaining a ubiquitous language across teams
- Measuring success and continuously refining the domain model
Summary and Future Directions
Requirements
- Extensive programming experience with object-oriented languages
- A solid understanding of software architecture principles
- Familiarity with Agile development methodologies
Intended Audience
- Senior developers
- Software architects
- Technical leads
21 Hours
Testimonials (1)
That we could you real life examples