Course Outline
Introduction
- What is Domain Driven Design (DDD) and its benefits?
- DDD vs 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 with event storming and domain storytelling
- Identifying and classifying subdomains
- Establishing boundaries and relationships with patterns like bounded contexts
DDD & Legacy Workshop
- Challenges and opportunities of legacy systems
- Analyzing and understanding legacy systems with tools like NDepend
- Refactoring and modernizing legacy systems using techniques such as strangler pattern
Product, Domain & Team-oriented Architecture
- Benefits and challenges of product, domain, and team-oriented architecture
- Designing and implementing such architectures with patterns like microservices
- Organizing and collaborating with teams
- Ensuring quality and consistency with automated testing and continuous integration
Data Mesh – Domain-Oriented Data
- Problems with traditional data platforms
- Introduction to data mesh
- Implementing a domain-oriented data platform supporting data discovery, access, and governance
- Technologies like Apache Kafka, Apache Spark, and GraphQL in data mesh
Summary and Next Steps
Requirements
- An understanding of object-oriented programming and design patterns
- Experience with C# and .NET Core
- Basic knowledge of databases and SQL
Audience
- Developers
- Architects
- Analysts
Testimonials (7)
That we could you real life examples
Elria Slabber - Glacier by Sanlam
Course - Introduction to Domain Driven Design
the examples the trainer used in each subject which made it easier to understand
huda Alyassi - Dubai Government Human Resources Dept.
Course - Adobe XD
Trainer was really kind and knowledgeable, going the extra mile to explain things that I didn't know
Felix - Microchip Technology Inc
Course - Embedded C Application Design Principles for Automotive Professionals
Trainer capability to listen and understand my case/issue/problem...
Francois - TE
Course - Technical Architecture and Patterns
The trainer highlighted the really important concepts in software architecture with quizzes. The high-level perspective on effective implementation of software development cycle starting from requirements elicitation to unit testing is very refreshing to data scientist without much experience in software development.
Kok Cheong Cheng - DBS Bank
Course - Design Patterns
Well planned. Without much foundation, I didn't get lost and I knew where I was. Issues from general to specific provide the basis for further work in your own field.
Andrzej - TENSOFT Sp. z o.o.
Course - Design Patterns in PHP
Machine Translated
Very "hands-on" training, with lots of examples and explanations. I really enjoyed it and I feel like a learned many new things in a very short time. Very well done!