Modernizing an existing system to take a more domain-driven approach
summary
Claims a feasible incremental path from monolith to domain-driven design using strangler fig, branch by abstraction and parallel run. Demonstrates moving website business logic into a new website service backed by Amazon Aurora and a message queue, refactoring the order service to consume event-driven order created messages. Uses .NET and AWS patterns (messaging, eventual consistency, optional CQRS/event sourcing). Parallel-run validation surfaces many edge cases and existing bugs, and the new flow proves correct after iterative fixes.
AI-written summary · about
chapters (32)
- 0:00Intro
- 2:21What is DDD?
- 3:00Core concepts
- 3:36Model
- 6:06Business ubiquitous language
- 7:25Relationships
- 8:24Implementation Concepts
- 8:45Microservices
- 11:19Messaging
- 15:02Why eventual consistency matters
- 15:53Command-Query Responsibility Segregation (CQRS)
- 22:36When should you use Event Sourcing
- 25:13Refactor Design Patterns
- 25:42Strangler Fig
- 26:42Branch by Abstraction
- 28:07Parallel Run
- 30:18Other Design Patterns for Refactoring
- 35:09The business systems
- 37:06Database Design
- 38:54Creating an order - Call origination
- 39:32Creating an Order - Inter-system communications
- 40:14How do you even start with this???
- 43:25Define your context and bounded contexts
- 45:38Define your communication
- 46:35Detail your communication
- 48:59Planning your refactor
- 49:38Starting your refactor
- 50:11Old Approach - Inter-system communications
- 51:48The new business systems
- 52:35Work to do to existing systems
- 53:31Refactoring to be Done
- 54:49Current Order Service
related talks
24mModernise your monolith using strangler pattern
26mDDD + Microservices + DevOps – The Strangler Figs Way
40mFrom Monolith to Observable Microservices using DDD
14mFrom Brownfield to Greenfield
47mFrom Monolith to Microservices With the Strangler Pattern
40mArchitecture Modernization with DDD
37mBuilt to last: A domain-driven approach to beautiful systems
24mPatterns of Evolution from Monolith to Microservices
