Beyond DDD 101 A practice report on building multi
bounded context CQRS/ES applications
Jan Galinski & Simon Zambrovski
Amsterdam, 23.09.2022
1
Who we are
Jan Galinski
Simon Zambrovski
23.09.2022, AxonIQCon 2022 2
Consultants @ holisticon
Backend developers, software architects
DDD, CQRS/ES, Axon Framework, Spring, Kotlin, Java
What is Holisticon
• IT Consulting
• Hamburg, Hannover, Kiel
• Cool crew
• Best Employer 2022
in Hamburg
• We are hiring!
23.09.2022, AxonIQCon 2022 3
BESTE BERATUNG – BESTE SOFTWARE
Motivation
• We love architecture
• DDD
• CQRS
• Event Sourcing
• Large-scale applications running on JVM
• We love Axon Framework
• We want to share our experience
23.09.2022, AxonIQCon 2022 4
https://www.pexels.com/de-de/foto/verschiedene-puzzlespiele-1586951/
Foundation – Theory - DDD
• Set of principles for system implementation
• Requirement Engineering
• Domain Modeling
• Strategic Design
• Bounded Context identification
• Context Mapping
• Design
• Ubiquitous Language
• Design Patterns
23.09.2022, AxonIQCon 2022 5
https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215
Foundation – Theory – DDD Patterns
• Modeling of Bounded Context relationships (for Microservices)
• Separate Ways
• Upstream/Downstream
• Open Host Service + Published Language
• Anti Corruption Layer
• Tactical Design
• Value Object, Entity, Aggregate, Aggregate Root
• Domain Service, Factory, Repository
• Domain Event
• Saga Pattern
23.09.2022, AxonIQCon 2022 6
Foundation – Theory – CQRS/ES
• Command Query Responsibility Segregation Pattern
• Reduce complexity of Domain model
• Separate Command model from Query model (optimized)
• Scale-out independently
• Event Sourcing Persistence Strategy
• Store Domain Events (versus store State)
• Derive State from Domain Event stream
• CQRS/ES
• Use Domain Events to communicate between Command and Query models
• Allow late stream consumption (stream replay)
23.09.2022, AxonIQCon 2022 7
Domain
Foundation - Onion Architecture
Driving
(primary)
Adapter
Driven
(secondary)
Adapter
Domain
Model
Ring
Port Port
Application Service Ring
Infrastructure Ring
23.09.2022, AxonIQCon 2022 8
Axon Framework 101
• FOSS framework in Java for building DDD CQRS(/ES) systems
• Explicit message concept
• 3 buses for decoupling
• Command -> Addressed intent of a change, may fail, unicast
• Event -> Fact, broadcast
• Query -> Request for data, has result, multicast
• Domain Model Segregation (implements CQRS)
• Event Sourcing implementation (different Event Stores)
• Separation of business logic from configuration
23.09.2022, AxonIQCon 2022 9
https://developer.axoniq.io/download
Possible Architecture using Axon Framework
23.09.2022, AxonIQCon 2022 10
https://docs.axoniq.io/reference-guide/
System evolution in single context
• Build components using buses for communication
• Start with modulith
• Distribute along buses
• Scale out projections
• Build new projections later
• Change infrastructure
23.09.2022, AxonIQCon 2022 11
Domain Core
Onion Architecture with Axon Framework
REST
Adapter
Query Model
Command Model
Command
Gateway
Query
Gateway
Projection
Repository
Aggregate
Repository
Query
Bus
Comma
nd Bus
Event
Bus
Pivotal
Event
Bus
Pivotal
Event
Bus
Domain
Event
Bus
Domain
Comma
nd Bus
Query
Bus
Saga
23.09.2022, AxonIQCon 2022 12
23.09.2022, AxonIQCon 2022 13
https://www.pexels.com/de-de/foto/mann-frustration-kopfschmerzen-brille-9843268/
Domain Core
Onion Architecture with Axon Framework
REST
Adapter
Query Model
Command Model
Command
Gateway
Query
Gateway
Projection
Repository
Aggregate
Repository
Query
Bus
Comma
nd Bus
Event
Bus
Pivotal
Event
Bus
Pivotal
Event
Bus
Domain
Event
Bus
Domain
Comma
nd Bus
Query
Bus
Saga
23.09.2022, AxonIQCon 2022 14
Simplified context building block
Query Model
Command Model
Query
Bus
Comma
nd Bus
Event
Bus
Event
Bus
Comma
nd Bus
Query
Bus
Saga
23.09.2022, AxonIQCon 2022 15
Patterns
23.09.2022, AxonIQCon 2022 16
Q
S
C
? Q
S
C
Q
Master Data Query
Q
S
D U
23.09.2022, AxonIQCon 2022 17
„You know some things that I need to know, please tell me!“
Query
Master Data Query
Q
S
Q
D U
23.09.2022, AxonIQCon 2022 18
Query
Benefits
• Simple (~ GET)
• No redundancy (GDPR)
• Encapsulate complex business
logic
Challenges
• Runtime dependency
• Trap: Building specialized
projections for other teams
• Outdated data, caching
Trigger a query
C
U D
23.09.2022, AxonIQCon 2022 19
Q Q
„I made some changes … ask me if you want more details.“
Query
C‘
Trigger a query
C
U D
23.09.2022, AxonIQCon 2022 20
Q Q
Query
Benefits
•„Cache invalidation“
Challenges
•Runtime dependency*
•Load (query avalanche)
Query Aggregator
C
Q
U D
23.09.2022, AxonIQCon 2022 21
„Here is some data that could be useful to build your projection.“
Query
Q‘
C‘
Query Aggregator
C
Q
U D
23.09.2022, AxonIQCon 2022 22
Query
Benefits
• Decoupling
• Build complex projections
from other contexts
Challenges
• Event Payload definition
• Payload interpretation
Reacting to Fact
C
S
C
U D
23.09.2022, AxonIQCon 2022 23
Command
„I changed some things … deal with it.“
C‘ C‘
Reacting to Fact
C
S
C
U D
23.09.2022, AxonIQCon 2022 24
Command
Benefits
• Simple
• Decoupled
• Event Driven
Challenges
• Downstream Command model
must follow
• Command-Event-Command
bridge
Downstream Saga
C
S
C
D U
23.09.2022, AxonIQCon 2022 25
Command
„I need you to do something for me, and I need the result.“
C*
C‘ C‘
Downstream Saga
C
S
C
D U
23.09.2022, AxonIQCon 2022 26
Command
Benefits
• Build for failure
• Delegate sub processes
Challenges
• Compensation
• Complex for more than
one context
External Orchestrator
C
S
C
D U
U
23.09.2022, AxonIQCon 2022 27
Command
C*
C* C‘
C‘
„If you two cannot handle it, let me take control.“
External Orchestrator
C
S
C
D U
U
23.09.2022, AxonIQCon 2022 28
Command
Benefits
• Build for failure
• Separate ways
• Business process
Challenges
• Compensation
• Complex for more than one
context
Key Takeaways
• Domain Driven Design
• Start with Strategic Design
• Do proper Context Mapping – Relationships!
• CQRS/ES
• Use Command / Event / Query abstractions („Events only“ is not enough)
• Use Axon Framework if working on JVM
• Practical
• Start with a modulith
• Build evolutionary
• Distribute on demand
23.09.2022, AxonIQCon 2022 29
Thank you... Questions?
• Holisticon AG
• https://holisticon.de/
• Jan
• https://about.me/jangalinski
• Simon
• https://about.me/zambrovski
• Axon Framework
• https://developer.axoniq.io/
23.09.2022, AxonIQCon 2022 30
https://www.pexels.com/de-de/foto/fragezeichen-auf-zerknittertem-papier-5428826/

More Related Content

PPTX
Azure Active Directory
PPTX
Docker Kubernetes Istio
PDF
Using patterns and pattern languages to make better architectural decisions
PPTX
Event-driven microservices
PPTX
Introduction to API Led connectivity
PDF
GOTOpia 2020 - Balancing Choreography and Orchestration
PPTX
MongoDB for Time Series Data
PDF
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
Azure Active Directory
Docker Kubernetes Istio
Using patterns and pattern languages to make better architectural decisions
Event-driven microservices
Introduction to API Led connectivity
GOTOpia 2020 - Balancing Choreography and Orchestration
MongoDB for Time Series Data
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항

What's hot (20)

PDF
Kakao Cloud Native Platform, 9rum
PPTX
Overview of Azure Arc enabled Kubernetes
PDF
누가 내 엔터프라이즈 고객을 클라우드로 옮겼을까?-양승호, Head of Cloud Modernization,AWS::AWS 마이그레이션 ...
PPTX
서버리스 데이터 플로우 개발기 - 김재현 (Superb AI) :: AWS Community Day 2020
PDF
신규 미디어서비스 소개 : 손쉬운 라이브 소스 클라우드 입수부터 간편한 라이브 스트리밍 구축까지 – 임석영 AWS 솔루션즈 아키텍트:: A...
PDF
Application Archaeology: Accelerating App Modernization at DICK’S Sporting Goods
PDF
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
PDF
2019 의료IT의 미래 : 서울대학병원 정밀의학 데이터 플랫폼 도입 사례 - 김경환 실장, 서울대학병원 / 전제민 교육부문 이사, AWS...
PDF
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
PPTX
Intro to Knative
PDF
AWS를 통한 빅데이터 활용 고객 분석 및 캠페인 시스템 구축 사례 - 임혁용 매니저, AWS / 윤성준 차장, 현대백화점 :: AWS S...
PPTX
Docker containers intro
PPTX
Adapt or Die: A Microservices Story at Google
PDF
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
PDF
AWS 클라우드 비용 최적화를 위한 TIP - 임성은 AWS 매니저
PDF
Top Trends in Application Architecture That Enable.pdf
PPTX
Platform engineering 101
PDF
Platform Engineering - a 360 degree view
PDF
Combining logs, metrics, and traces for unified observability
PDF
Building and deploying microservices with event sourcing, CQRS and Docker (QC...
Kakao Cloud Native Platform, 9rum
Overview of Azure Arc enabled Kubernetes
누가 내 엔터프라이즈 고객을 클라우드로 옮겼을까?-양승호, Head of Cloud Modernization,AWS::AWS 마이그레이션 ...
서버리스 데이터 플로우 개발기 - 김재현 (Superb AI) :: AWS Community Day 2020
신규 미디어서비스 소개 : 손쉬운 라이브 소스 클라우드 입수부터 간편한 라이브 스트리밍 구축까지 – 임석영 AWS 솔루션즈 아키텍트:: A...
Application Archaeology: Accelerating App Modernization at DICK’S Sporting Goods
Breaking the Edge -- A Journey Through Cloud, Edge and Fog Computing
2019 의료IT의 미래 : 서울대학병원 정밀의학 데이터 플랫폼 도입 사례 - 김경환 실장, 서울대학병원 / 전제민 교육부문 이사, AWS...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
Intro to Knative
AWS를 통한 빅데이터 활용 고객 분석 및 캠페인 시스템 구축 사례 - 임혁용 매니저, AWS / 윤성준 차장, 현대백화점 :: AWS S...
Docker containers intro
Adapt or Die: A Microservices Story at Google
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
AWS 클라우드 비용 최적화를 위한 TIP - 임성은 AWS 매니저
Top Trends in Application Architecture That Enable.pdf
Platform engineering 101
Platform Engineering - a 360 degree view
Combining logs, metrics, and traces for unified observability
Building and deploying microservices with event sourcing, CQRS and Docker (QC...
Ad

Similar to AxonIQCon22 - Beyond DDD 101 - Zambrovski-Galinski.pptx (20)

PDF
Introduction to Axon FrameWork with CQRS pattern
PPTX
Our way to microservices
PPTX
Axon Framework, Exploring CQRS and Event Sourcing Architecture
PPTX
CQRS and Event Sourcing with Axon Framework
PPTX
Event Driven Microservices Presentation.
PDF
XebiCon'17 : AxonFramework @ SGCIB (our experience) : (CQRS, Eventsourcing, A...
PPTX
Cqrs and event sourcing in azure
PDF
CQRS and EventSourcing with Spring & Axon
PDF
Telemetry: The Overlooked Treasure in Axon Server-Centric Applications
PDF
AxonDB Product Release Presentation
PDF
Idiomatic Domain Driven Design: implementing CQRS
PPTX
Cqrs and Event Sourcing Intro For Developers
PDF
Builiding Modular monoliths that can scale to microservices. JBCNConf 2021
PPTX
Introduction to CQRS - command and query responsibility segregation
PPTX
Adopting DDD/CQRS/ES
PPTX
Intellias CQRS Framework
PPTX
Approaching to domain driven development
PPTX
CQRS In An Hour Or So
PDF
AxonHub beta release 11 april 2018
PPTX
DDD meets CQRS and event sourcing
Introduction to Axon FrameWork with CQRS pattern
Our way to microservices
Axon Framework, Exploring CQRS and Event Sourcing Architecture
CQRS and Event Sourcing with Axon Framework
Event Driven Microservices Presentation.
XebiCon'17 : AxonFramework @ SGCIB (our experience) : (CQRS, Eventsourcing, A...
Cqrs and event sourcing in azure
CQRS and EventSourcing with Spring & Axon
Telemetry: The Overlooked Treasure in Axon Server-Centric Applications
AxonDB Product Release Presentation
Idiomatic Domain Driven Design: implementing CQRS
Cqrs and Event Sourcing Intro For Developers
Builiding Modular monoliths that can scale to microservices. JBCNConf 2021
Introduction to CQRS - command and query responsibility segregation
Adopting DDD/CQRS/ES
Intellias CQRS Framework
Approaching to domain driven development
CQRS In An Hour Or So
AxonHub beta release 11 april 2018
DDD meets CQRS and event sourcing
Ad

Recently uploaded (20)

PPTX
Rakhi Presentation vbbrfferregergrgerg.pptx
PPTX
TG Hospitality workshop Vietnam (1).pptx
PDF
Public speaking for kids in India - LearnifyU
PPTX
Phylogeny and disease transmission of Dipteran Fly (ppt).pptx
PPTX
Kompem Part Untuk MK Komunikasi Pembangunan 5.pptx
PPTX
CASEWORK Power Point Presentation - pointers
PPTX
Bob Difficult Questions 08 17 2025.pptx
PDF
IKS PPT.....................................
PPTX
Ulangan Harian_TEOREMA PYTHAGORAS_8.pptx
PPTX
INDIGENOUS-LANGUAGES-AND-LITERATURE.pptx
PDF
Yoken Capital Network Presentation Slide
PPTX
Public Speaking Is Easy . Start Now . It's now or never.
PPTX
WEB_DEVELOPMENTGJMFGHJMGJMFJM FGJMFGHMNF
PPTX
Religious Thinkers Presentationof subcontinent
PDF
Unnecessary information is required for the
PPTX
Paraphrasing Sentence To Make Your Writing More Interesting
PPTX
Shizophrnia ppt for clinical psychology students of AS
PPTX
Literatura en Star Wars (Legends y Canon)
DOCX
CLASS XII bbbbbnjhcvfyfhfyfyhPROJECT.docx
PDF
Financial Managememt CA1 for Makaut Student
Rakhi Presentation vbbrfferregergrgerg.pptx
TG Hospitality workshop Vietnam (1).pptx
Public speaking for kids in India - LearnifyU
Phylogeny and disease transmission of Dipteran Fly (ppt).pptx
Kompem Part Untuk MK Komunikasi Pembangunan 5.pptx
CASEWORK Power Point Presentation - pointers
Bob Difficult Questions 08 17 2025.pptx
IKS PPT.....................................
Ulangan Harian_TEOREMA PYTHAGORAS_8.pptx
INDIGENOUS-LANGUAGES-AND-LITERATURE.pptx
Yoken Capital Network Presentation Slide
Public Speaking Is Easy . Start Now . It's now or never.
WEB_DEVELOPMENTGJMFGHJMGJMFJM FGJMFGHMNF
Religious Thinkers Presentationof subcontinent
Unnecessary information is required for the
Paraphrasing Sentence To Make Your Writing More Interesting
Shizophrnia ppt for clinical psychology students of AS
Literatura en Star Wars (Legends y Canon)
CLASS XII bbbbbnjhcvfyfhfyfyhPROJECT.docx
Financial Managememt CA1 for Makaut Student

AxonIQCon22 - Beyond DDD 101 - Zambrovski-Galinski.pptx

  • 1. Beyond DDD 101 A practice report on building multi bounded context CQRS/ES applications Jan Galinski & Simon Zambrovski Amsterdam, 23.09.2022 1
  • 2. Who we are Jan Galinski Simon Zambrovski 23.09.2022, AxonIQCon 2022 2 Consultants @ holisticon Backend developers, software architects DDD, CQRS/ES, Axon Framework, Spring, Kotlin, Java
  • 3. What is Holisticon • IT Consulting • Hamburg, Hannover, Kiel • Cool crew • Best Employer 2022 in Hamburg • We are hiring! 23.09.2022, AxonIQCon 2022 3 BESTE BERATUNG – BESTE SOFTWARE
  • 4. Motivation • We love architecture • DDD • CQRS • Event Sourcing • Large-scale applications running on JVM • We love Axon Framework • We want to share our experience 23.09.2022, AxonIQCon 2022 4 https://www.pexels.com/de-de/foto/verschiedene-puzzlespiele-1586951/
  • 5. Foundation – Theory - DDD • Set of principles for system implementation • Requirement Engineering • Domain Modeling • Strategic Design • Bounded Context identification • Context Mapping • Design • Ubiquitous Language • Design Patterns 23.09.2022, AxonIQCon 2022 5 https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215
  • 6. Foundation – Theory – DDD Patterns • Modeling of Bounded Context relationships (for Microservices) • Separate Ways • Upstream/Downstream • Open Host Service + Published Language • Anti Corruption Layer • Tactical Design • Value Object, Entity, Aggregate, Aggregate Root • Domain Service, Factory, Repository • Domain Event • Saga Pattern 23.09.2022, AxonIQCon 2022 6
  • 7. Foundation – Theory – CQRS/ES • Command Query Responsibility Segregation Pattern • Reduce complexity of Domain model • Separate Command model from Query model (optimized) • Scale-out independently • Event Sourcing Persistence Strategy • Store Domain Events (versus store State) • Derive State from Domain Event stream • CQRS/ES • Use Domain Events to communicate between Command and Query models • Allow late stream consumption (stream replay) 23.09.2022, AxonIQCon 2022 7
  • 8. Domain Foundation - Onion Architecture Driving (primary) Adapter Driven (secondary) Adapter Domain Model Ring Port Port Application Service Ring Infrastructure Ring 23.09.2022, AxonIQCon 2022 8
  • 9. Axon Framework 101 • FOSS framework in Java for building DDD CQRS(/ES) systems • Explicit message concept • 3 buses for decoupling • Command -> Addressed intent of a change, may fail, unicast • Event -> Fact, broadcast • Query -> Request for data, has result, multicast • Domain Model Segregation (implements CQRS) • Event Sourcing implementation (different Event Stores) • Separation of business logic from configuration 23.09.2022, AxonIQCon 2022 9 https://developer.axoniq.io/download
  • 10. Possible Architecture using Axon Framework 23.09.2022, AxonIQCon 2022 10 https://docs.axoniq.io/reference-guide/
  • 11. System evolution in single context • Build components using buses for communication • Start with modulith • Distribute along buses • Scale out projections • Build new projections later • Change infrastructure 23.09.2022, AxonIQCon 2022 11
  • 12. Domain Core Onion Architecture with Axon Framework REST Adapter Query Model Command Model Command Gateway Query Gateway Projection Repository Aggregate Repository Query Bus Comma nd Bus Event Bus Pivotal Event Bus Pivotal Event Bus Domain Event Bus Domain Comma nd Bus Query Bus Saga 23.09.2022, AxonIQCon 2022 12
  • 13. 23.09.2022, AxonIQCon 2022 13 https://www.pexels.com/de-de/foto/mann-frustration-kopfschmerzen-brille-9843268/
  • 14. Domain Core Onion Architecture with Axon Framework REST Adapter Query Model Command Model Command Gateway Query Gateway Projection Repository Aggregate Repository Query Bus Comma nd Bus Event Bus Pivotal Event Bus Pivotal Event Bus Domain Event Bus Domain Comma nd Bus Query Bus Saga 23.09.2022, AxonIQCon 2022 14
  • 15. Simplified context building block Query Model Command Model Query Bus Comma nd Bus Event Bus Event Bus Comma nd Bus Query Bus Saga 23.09.2022, AxonIQCon 2022 15
  • 17. Q Master Data Query Q S D U 23.09.2022, AxonIQCon 2022 17 „You know some things that I need to know, please tell me!“ Query
  • 18. Master Data Query Q S Q D U 23.09.2022, AxonIQCon 2022 18 Query Benefits • Simple (~ GET) • No redundancy (GDPR) • Encapsulate complex business logic Challenges • Runtime dependency • Trap: Building specialized projections for other teams • Outdated data, caching
  • 19. Trigger a query C U D 23.09.2022, AxonIQCon 2022 19 Q Q „I made some changes … ask me if you want more details.“ Query C‘
  • 20. Trigger a query C U D 23.09.2022, AxonIQCon 2022 20 Q Q Query Benefits •„Cache invalidation“ Challenges •Runtime dependency* •Load (query avalanche)
  • 21. Query Aggregator C Q U D 23.09.2022, AxonIQCon 2022 21 „Here is some data that could be useful to build your projection.“ Query Q‘ C‘
  • 22. Query Aggregator C Q U D 23.09.2022, AxonIQCon 2022 22 Query Benefits • Decoupling • Build complex projections from other contexts Challenges • Event Payload definition • Payload interpretation
  • 23. Reacting to Fact C S C U D 23.09.2022, AxonIQCon 2022 23 Command „I changed some things … deal with it.“ C‘ C‘
  • 24. Reacting to Fact C S C U D 23.09.2022, AxonIQCon 2022 24 Command Benefits • Simple • Decoupled • Event Driven Challenges • Downstream Command model must follow • Command-Event-Command bridge
  • 25. Downstream Saga C S C D U 23.09.2022, AxonIQCon 2022 25 Command „I need you to do something for me, and I need the result.“ C* C‘ C‘
  • 26. Downstream Saga C S C D U 23.09.2022, AxonIQCon 2022 26 Command Benefits • Build for failure • Delegate sub processes Challenges • Compensation • Complex for more than one context
  • 27. External Orchestrator C S C D U U 23.09.2022, AxonIQCon 2022 27 Command C* C* C‘ C‘ „If you two cannot handle it, let me take control.“
  • 28. External Orchestrator C S C D U U 23.09.2022, AxonIQCon 2022 28 Command Benefits • Build for failure • Separate ways • Business process Challenges • Compensation • Complex for more than one context
  • 29. Key Takeaways • Domain Driven Design • Start with Strategic Design • Do proper Context Mapping – Relationships! • CQRS/ES • Use Command / Event / Query abstractions („Events only“ is not enough) • Use Axon Framework if working on JVM • Practical • Start with a modulith • Build evolutionary • Distribute on demand 23.09.2022, AxonIQCon 2022 29
  • 30. Thank you... Questions? • Holisticon AG • https://holisticon.de/ • Jan • https://about.me/jangalinski • Simon • https://about.me/zambrovski • Axon Framework • https://developer.axoniq.io/ 23.09.2022, AxonIQCon 2022 30 https://www.pexels.com/de-de/foto/fragezeichen-auf-zerknittertem-papier-5428826/

Editor's Notes

  • #3: Camunda Champions/Process Automation
  • #7: Context defines semantics ACL - semantical mapping Design:
  • #8: Command Model: validation Query Model: optimized projections
  • #10: ES: EventStore(s), Replay, Snapshotting, Upcasting
  • #14: This was a lot to swallow – DD/CQR/Oninon in 10 Minutes Reached the Plateau of maximum complexity Story of ranked Break down
  • #15: we only care about the external/pivotal view
  • #16: 2 models, a saga, 3 busses
  • #17: Separate ways is already a pattern not invented but recognized/discovered Introduce a model for context communication how they commincate: patterns – no true or false, combinations are possible We have 6 today, but there might be more Query Patterns Command Patterns
  • #18: Reporting collects customer data and account to send out letters credit manager needs balance history to calculate interest rates ...
  • #19: Hint: GraphQL Remote projection
  • #21: Event: Milestone/Trigger/Notification Runtime: not that hard Query might not return the result the event intended
  • #22: Event: Fat Event, contains data
  • #23: Do we event source fat pivotal events? next: command
  • #25: ACL Pure Choreography
  • #26: customer wants to cancel releationship account management discovers open debt and rejects if sync: command failing might be enough if async: ack/nack event
  • #27: pure orchestration
  • #28: Separate ways Complex business scenarios Process engine