Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Event Driven Development
Search
carnage
March 09, 2018
Technology
0
540
Event Driven Development
carnage
March 09, 2018
Tweet
Share
More Decks by carnage
See All by carnage
Object re-orientation
carnage
2
490
More Secrets of Cryptography
carnage
0
390
Nuclear powered software securty
carnage
0
420
Microservices vs The distributed monolith
carnage
1
2.3k
Passwords and how to handle them
carnage
0
370
A storm is brewing
carnage
0
97
The secrets of cryptography
carnage
0
170
The secrets of cryptography
carnage
0
160
You attended talk: An introduction to event sourcing (short)
carnage
0
640
Other Decks in Technology
See All in Technology
AI時代にも変わらぬ価値を発揮したい: インフラ・クラウドを切り口にユーザー価値と非機能要件に向き合ってエンジニアとしての地力を培う
netmarkjp
0
140
サービスを止めるな! DDoS攻撃へのスマートな備えと最前線の事例
coconala_engineer
1
190
第64回コンピュータビジョン勉強会「The PanAf-FGBG Dataset: Understanding the Impact of Backgrounds in Wildlife Behaviour Recognition」
x_ttyszk
0
250
ポストコロナ時代の SaaS におけるコスト削減の意義
izzii
1
470
スタックチャン家庭用アシスタントへの道
kanekoh
0
120
MCP とマネージド PaaS で実現する大規模 AI アプリケーションの高速開発
nahokoxxx
1
280
本当にわかりやすいAIエージェント入門
segavvy
4
1.5k
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
1
350
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
Deep Security Conference 2025:生成AI時代のセキュリティ監視 /dsc2025-genai-secmon
mizutani
4
3k
P2P通信の標準化 WebRTCを知ろう
faithandbrave
1
330
OpenTelemetryセマンティック規約の恩恵とMackerel APMにおける活用例 / SRE NEXT 2025
mackerelio
3
2k
Featured
See All Featured
Docker and Python
trallard
45
3.5k
Building Applications with DynamoDB
mza
95
6.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Faster Mobile Websites
deanohume
308
31k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Unsuck your backbone
ammeep
671
58k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
840
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Transcript
Event Driven Development Christopher Riley ConFoo 2018 1
Introduction
Introduction • Event sourcing 2
Introduction • Event sourcing • Event Driven Architecture 2
Introduction • Event sourcing • Event Driven Architecture • Task
Based UI 2
Introduction • Event sourcing • Event Driven Architecture • Task
Based UI • Event storming 2
What is an event? 2
What is an event? • Something which has happened in
the past 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert • Not technical 3
What is an event? • Something which has happened in
the past • Relevant to a domain expert • Not technical • Raised in response to an input 3
Task based UI
A CRUD UI 4
A Task Based UI 5
Everything a company does is part of a process 5
Why are task based UI’s helpful to event based systems?
5
Event sourcing
A familiar model 6
Event sourcing example 7
What does an event sourced system actually look like? 7
Event sourcing architecture 8
Handling a command 9
Inside the model 10
Inside the model 11
Handling Events 12
Projections
Projections • Turn events into read models 13
Projections • Turn events into read models • Can be
eventually consistent 13
Projections • Turn events into read models • Can be
eventually consistent • Can be rebuilt 13
A projection 14
Process Managers
Process managers • Handle business logic around events 15
Process managers • Handle business logic around events • A
state machine 15
Process managers • Handle business logic around events • A
state machine • Keep track of failures 15
Process managers • Handle business logic around events • A
state machine • Keep track of failures • Be careful with replays 15
A Process Manager 16
Event Driven Architecture
Event Driven Architecture 17
Cross System Process 18
Conclusions
Thanks • @giveupalready • https://github.com/carnage • https://carnage.github.io 19