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
- What is Domain Driven Design (DDD) and what are its benefits?
- DDD compared to other approaches
- Overview of DDD concepts and project structure
Tactical Domain-Driven Design
- Elements of a domain model
- Implementing entities, value objects, aggregates, repositories, and domain services
- Using factories, specifications, CQRS, and event sourcing
Strategic Domain-Driven Design
- Context map patterns
- Designing the domain model using event storming and domain storytelling
- Identifying and classifying subdomains
- Establishing boundaries and relationships using patterns such as bounded contexts
DDD & Legacy Workshop
- Challenges and opportunities presented by legacy systems
- Analysing and understanding legacy systems using tools such as NDepend
- Refactoring and modernising legacy systems using techniques such as the strangler pattern
Product, Domain & Team-Oriented Architecture
- Benefits and challenges of product-, domain-, and team-oriented architecture
- Designing and implementing such architectures using patterns like microservices
- Organising and collaborating across teams
- Ensuring quality and consistency through automated testing and continuous integration
Data Mesh – Domain-Oriented Data
- Problems associated with traditional data platforms
- Introduction to data mesh
- Implementing a domain-oriented data platform that supports data discovery, access, and governance
- Technologies such as Apache Kafka, Apache Spark, and GraphQL in data mesh
Summary and Next Steps
Requirements
- A solid understanding of object-oriented programming and design patterns
- Experience with C# and .NET Core
- Basic knowledge of databases and SQL
Audience
- Developers
- Architects
- Analysts
21 Hours
Testimonials (1)
That we could you real life examples