Deep Dive: Domain-Driven Design
5h 42m 25s
English
Paid
May 15, 2024
Domain-driven design (or DDD for short) is one of the most popular software design approaches and for excellent reason. It allows us to build highly maintainable systems using domain-specific expertise and base our implementation on well-developed models using ubiquitous language. In this course, Amichai Mantinband will expand on his existing Getting Started course knowledge and dive deeper into advanced DDD concepts such as event storming, sub-domains, bounded contexts, context mapping, aggregate design and more. Join Amichai in this 6-hour course and get ahead of the curve on your DDD journey.
Watch Online Deep Dive: Domain-Driven Design
Join premium to watch
Go to premium
# | Title | Duration |
---|---|---|
1 | Welcome | 02:41 |
2 | What will you learn in this course? | 02:08 |
3 | Who is the course for and prerequisites | 02:32 |
4 | Designing Systems Following Domain-Driven Design | 08:09 |
5 | Key Strategic and Tactical Practices | 03:45 |
6 | Domain Discovery | 02:33 |
7 | Domain Discovery Techniques | 08:12 |
8 | Event Storming Sneak Peek | 02:28 |
9 | Documenting Ubiquitous Language | 04:17 |
10 | Documenting Invariants | 03:26 |
11 | Section Recap | 01:29 |
12 | What is Event Storming? | 03:08 |
13 | Event Storming Legend | 07:01 |
14 | Types of Event Storming | 02:54 |
15 | Big Picture Event Storming | 05:30 |
16 | Gym Session Scheduling System Domain Overview | 05:24 |
17 | Big Picture Event Storming In Action - Setup | 05:19 |
18 | Round 1 - Chaotic Exploration | 13:25 |
19 | Round 2 - Enforce the Timeline | 16:00 |
20 | Round 3 - People & Systems | 05:11 |
21 | Round 4 - Walkthrough & Reverse Narrative | 05:23 |
22 | Round 5 - Arrow Voting | 01:19 |
23 | Big Picture Event Storming Goals | 01:52 |
24 | Section Recap | 01:48 |
25 | What is Process Modeling Event Storming? | 04:29 |
26 | Process Modeling - The Rules of the Game | 01:30 |
27 | Process Modeling in Action - Setup | 02:11 |
28 | Round 1 - Framing the Problem | 02:01 |
29 | Round 2 - Rush to the Goal | 13:25 |
30 | Round 3 - Fill in the Blanks | 08:23 |
31 | Process Modeling Event Storming Goals | 01:14 |
32 | Section Recap | 01:01 |
33 | Refresher - What are Domains & Sub-Domains | 04:57 |
34 | Identifying Sub-Domains | 08:35 |
35 | Classifying Sub-Domains | 03:10 |
36 | Section Recap | 01:30 |
37 | Refresher - What are Bounded Contexts | 07:00 |
38 | Reviewing Our Ubiquitous Language | 04:29 |
39 | Reviewing Our Invariants | 02:39 |
40 | Reviewing Our Sub-Domains | 03:47 |
41 | How Bounded Contexts Affect Domain Models | 01:57 |
42 | Defining Bounded Contexts | 03:46 |
43 | Defining Our Bounded Contexts | 06:35 |
44 | Section Recap | 00:35 |
45 | Refresher - What is Context Mapping | 02:54 |
46 | Team Relationships | 03:58 |
47 | Context Map Patterns | 10:46 |
48 | Context Mapping In Action - Setup & Context | 03:37 |
49 | Creating an Admin Profile | 08:59 |
50 | Creating a Subscription | 02:22 |
51 | Creating a Gym | 02:36 |
52 | Creating a Room | 02:33 |
53 | Creating a Session | 03:10 |
54 | Creating a Participant Profile | 01:22 |
55 | Reserving a Spot in a Session | 01:05 |
56 | Context Mapping In Action - Conclusion | 01:12 |
57 | Strategic Goals Alignment | 02:37 |
58 | Section Recap | 00:38 |
59 | Refresher - What is the Tactical Phase | 01:36 |
60 | Refresher - Tactical Patterns | 07:21 |
61 | Tactical Phase Objectives | 03:48 |
62 | Section Recap | 00:33 |
63 | Enforce Invariants | 00:48 |
64 | Reference Aggregates By Id | 00:20 |
65 | Update Aggregate via Aggregate Root | 00:16 |
66 | Prefer Smaller Aggregates | 01:45 |
67 | One Aggregate Per Transaction | 02:00 |
68 | Use Eventual Consistency Outside the Boundary | 02:57 |
69 | Maintain Aggregate Scope | 00:31 |
70 | Aggregate Root Identity Uniqueness | 00:19 |
71 | Private > Public | 00:37 |
72 | Assess and Refactor | 00:22 |
73 | Aggregate Design Steps | 06:07 |
74 | Aggregate Design In Action - Step 1 | 02:07 |
75 | Aggregate Design In Action - Step 2 | 05:57 |
76 | Aggregate Design In Action - Step 3 | 02:05 |
77 | Aggregate Design In Action - Step 4 Setup | 02:03 |
78 | Merging Aggregates in the User Management Context | 05:44 |
79 | Merging Aggregates in the Gym Management Context | 10:42 |
80 | Merging Aggregates in the Session Management Context - The Chain Effect of Merging Aggregates | 04:06 |
81 | Merging Aggregates in the Session Management Context - Identifying Missing Domain Objects | 06:02 |
82 | Merging Aggregates in the Session Management Context Continued | 02:24 |
83 | Merging Aggregates in the Session Management Context - Propagating Data Across Bounded Contexts | 03:50 |
84 | Merging Aggregates Across Bounded Contexts | 04:51 |
85 | Merging Aggregates in the Session Management Context - Continued | 01:58 |
86 | Aggregate Design Draft Reflection | 04:30 |
87 | Merging Aggregates Based On Eventual Consistency Constraints | 01:13 |
88 | Evolving Aggregate Design With Time or Refactoring Existing Aggregate Designs | 03:20 |
89 | Converting Aggregate Design To Code | 02:33 |
90 | Section Recap | 01:11 |
91 | Course Conclusion | 01:32 |
Similar courses to Deep Dive: Domain-Driven Design
![Advanced Radix UI](https://cdn.courseflix.net/courses/100x56/advanced-radix-ui.jpg)
Advanced Radix UI
Duration 2 hours 13 minutes 5 seconds
Course
![Build RESTFUL APIs using Kotlin and Spring Boot](https://cdn.courseflix.net/courses/100x56/build-restful-apis-using-kotlin-and-spring-boot.jpg)
Build RESTFUL APIs using Kotlin and Spring Boot
Duration 8 hours 23 minutes 18 seconds
Course
![System Design Course](https://cdn.courseflix.net/courses/100x56/system-design-course.jpg)
System Design Course
Duration 92 hours 26 minutes 21 seconds
Course
![Python for Financial Analysis and Algorithmic Trading](https://cdn.courseflix.net/courses/100x56/python-for-financial-analysis-and-algorithmic-trading.jpg)
Python for Financial Analysis and Algorithmic Trading
Duration 16 hours 54 minutes 20 seconds
Course
![Understanding Cognitive Biases](https://cdn.courseflix.net/courses/100x56/understanding-cognitive-biases.jpg)
Understanding Cognitive Biases
Duration 10 hours 51 minutes 35 seconds
Course
![Master Gorgeous UI Design](https://cdn.courseflix.net/courses/100x56/master-gorgeous-ui-design.jpg)
Master Gorgeous UI Design
Duration 5 hours 25 minutes 9 seconds
Course
![The Ultimate Data Structures & Algorithms: Part 2](https://cdn.courseflix.net/courses/100x56/the-ultimate-data-structures-algorithms-part-2.jpg)
The Ultimate Data Structures & Algorithms: Part 2
Duration 5 hours 56 minutes 46 seconds
Course
![Sidekiq in Practice](https://cdn.courseflix.net/courses/100x56/sidekiq-in-practice.jpg)
Sidekiq in Practice
Duration 1 hour 4 minutes 45 seconds
Course