event storming - zielona góra jugzielona-gora-jug.github.io/files/jug-event-storming.pdfcustomer...
TRANSCRIPT
EVENT STORMING
Michał Michaluk, JUG 2018
przepływ wiedzy dziedzinowej od biznesu do kodu produkcyjnego
Michał MichalukJava Dev / Trainer / Consultant @
DDD / Craftsmanship / ArchitectureLegacy Code Refactoring
https://github.com/michal-michaluk/
@michal_michaluk
Michał Michaluk
EVENT STORMING
NOTACJA
Customer &Obligation
to pay
when Overdue &
Order Created
Buy
Order View
Lostopportunity:
trusted clients without funds
Is VIP client
VIP client flow
regular client flow
Obligation to pay
Payment
OverduePayment
PaymentClose to payment
Overdues
Paymentoptions
Customer &Obligation
to pay
when Overdue &
Order Created
Buy
Order View
Lostopportunity:
trusted clients without funds
Is VIP client
VIP client flow
regular client flow
Obligation to pay
Payment
OverduePayment
PaymentClose to payment
Overdues
Paymentoptions
EVENT STORMING
EVENT STORMING W PRACY KONSULTANTA
EVENT STORMING
EVENT STORMING W ZESPOLE (W POLSCE)
EVENT STORMING
NOTACJA EVENT STORMING-U POMAGA W PRACY Z LEGACY CODE-M
PO CO?
DOMAIN-DRIVEN DESIGN
DZIEDZINY I BOUNDED CONTEXT-Y
DEMAND FORECASTING
QUALITY
WAREHOUSE
INVOICING
SHORTAGE PREDICTION
DELIVERY PLANNING
PRODUCTIONPLANNING
PRODUCTION
CRUD
FRA
MEW
ORK
DOMAIN-DRIVEN DESIGN
COMMAND QUERY CRUD BI RESPONSIBILITY SEGREGATION
ENDPOINT ENDPOINT ENDPOINT
DOMAINMODEL
APP SERVICE
PERSISTENCEOF DOMAIN
OBJECTS PERSISTENCE OF READ MODELS
PERSISTENCE OF DOCUMENTS
PROJ
ECTI
ON
Complex Commands Complex Queries Simple CRUD
EVENT
EVENT
QUER
Y
REPORTING TOOL
PERSISTENT MODEL
Reporting
EVENTPROJECTIONS
OR ETL
CUBES
MODELLING WHIRPOL
DOMAIN-DRIVEN DESIGN
SPECIFICATION BY EXAMPLE – ZEBRANE PRZYKŁADÓW ZACHOWAŃ
DOMAIN-DRIVEN DESIGN
USER STORY MAPPING & MINIMUM VIABLE PRODUCT
DOMAIN-DRIVEN DESIGN
WALKING SKELETON - CZYSTY KOD I ARCH. EWOLUCYJNA
DOMAIN-DRIVEN DESIGN
HEXAGONAL ARCHITECTURE & MICROSERVICES
C C
E
DOMAIN OBJECT
DOMAIN OBJECT
C
C C
EDOMAIN OBJECT
DOMAIN OBJECT
C
ECO
NTEXT
MAP
CONTEXT
MAPC C
E E
P
DOMAIN OBJECT
ENDPOINT
PERSISTENCEOF DOMAIN
OBJECTS
P
JMS
/ BUS
EXTERNAL
SERVICE
EE
DOMAIN OBJECT
C
E
P
EE
Domain Event
External Event
Command
Port
APP SERVICE
PYTANIA