CONFIDENTIAL Designator New template (thumbnail image, don’t use this slide) 1 Domain Driven Design, Event Storming, and Event Driven Applications
CONFIDENTIAL Designator Me Event Driven Architecture with Quarkus, Kafka, and Kubernetes Jeremy Davis Chief Architect @argntprgrmr 2
CONFIDENTIAL designator V0000000 3
CONFIDENTIAL designator V0000000 4
CONFIDENTIAL designator V0000000 Event Storming 5 Building a System Using
CONFIDENTIAL designator V0000000 Event Storming Deliberate, Collective Learning 6 ▸ https://www.eventstorming.com ▸ https://www.eventstorming.com/book/ ▸ https://openpracticelibrary.com/practice/event-storming
CONFIDENTIAL designator V0000000 You Need a LOT of Space 7
CONFIDENTIAL designator V0000000 Event Storming Past-Tense Verbs 8 User View Aggregate Command Business Process External System Colors are a convention and have meaning
CONFIDENTIAL designator V0000000 Home Office Events 9 Homeoffice Event Storm
CONFIDENTIAL designator V0000000 The colors mean something Coffeeshop Event Storm 10
CONFIDENTIAL designator V0000000 Domain Driven Design 11 Building a System Using
CONFIDENTIAL designator V0000000 ▸ https://www.domainlanguage.com ▸ https://martinfowler.com/bliki/DomainDrivenDesign.html Domain Driven Design Tackling Complexity in the Heart of Software 12
CONFIDENTIAL designator V0000000 Key Concepts Important Things 13 We aren’t going to cover all of this stuff
CONFIDENTIAL designator V0000000 Bounded Contexts Bounded Contexts Get Lots of Love in the Microservices World 14 Also useful for microservices within a single system
CONFIDENTIAL designator V0000000 Bounded Contexts Bounded Contexts Get Lots of Love in the Microservices World 15 Also useful for microservices within a single system
CONFIDENTIAL designator V0000000 Ubiquitous Language This Is Really, Really Important Enables Collaboration ● Agreed upon by domain experts and dev team ● Constantly revisited and kept current ● Starts with the Domain Model 16
CONFIDENTIAL designator V0000000 More Concepts Application Architecture Let’s look at some code 17
CONFIDENTIAL designator V0000000 Aggregates Aggrates Let’s look at some code 18
CONFIDENTIAL designator V0000000 Value Objects Aggrates Let’s look at some code 19
CONFIDENTIAL designator V0000000 Repositories Data Access Let’s look at some code 20
CONFIDENTIAL designator V0000000 Services Orchestration 21
CONFIDENTIAL designator V0000000 *Result Credit to Chris Richardson 22
CONFIDENTIAL designator V0000000 linkedin.com/company/red-hat youtube.com/user/RedHatVideos facebook.com/redhatinc twitter.com/RedHat Red Hat is the world’s leading provider of enterprise open source software solutions. Award-winning support, training, and consulting services make Red Hat a trusted adviser to the Fortune 500. Thank you 23
CONFIDENTIAL designator V0000000 GitHub Project https://github.com/quarkuscoffeeshop Documentation https://quarkuscoffeeshop.github.io/ 24 Resources
CONFIDENTIAL designator V0000000 Event Storming Alberto Brandolini on Youtube DDD Eric Evans on Youtube More Eric Evans on Youtube DDD on InfoQ Hexagonal Architecture Java Design Patterns Site 25 Resources
CONFIDENTIAL designator V0000000 https://github.com/quarkuscoffeeshop Commerzbank Jeremy Davis Chief Architect @argntprgrmr 26

Domain Driven Design, Event Storming and Event Driven Applications