idea - post-it - test verdi
Post on 17-Oct-2014
824 views
DESCRIPTION
Modellare un dominio applicativo può essere decisamente complesso; in questa sessione vedremo come Event Storming ed Event Sourcing permettono di prendere una idea, darle forma usando un rotolo di carta e dei post-it e tradurla in codice C# sfruttando BDD e Machine Specifications... alla velocità della luce. Presentazione a 4 mani di Alberto Brandolini e Andrea Balducci.TRANSCRIPT
![Page 1: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/1.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Idea —> Post-It —> Test Verdi
Idea
Post-it
Test Verdi!Alberto [email protected] @ziobrando http://ziobrando.blogspot.com
Andrea [email protected]
@andreabalducci
![Page 2: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/2.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Idea —> Post-it —> Test verdi
Alberto [email protected] @ziobrando http://ziobrando.blogspot.com
Andrea [email protected]
@andreabalducci
![Page 3: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/3.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Grazie a
Sponsor
![Page 4: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/4.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrando
avanscoperta
DDD-IT
XPUG - Romagna
![Page 5: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/5.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
avanscoperta
DDD-IT
XPUG - Romagna
![Page 6: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/6.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addicted
avanscoperta
DDD-IT
XPUG - Romagna
![Page 7: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/7.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addictedVisual thinker
avanscoperta
DDD-IT
XPUG - Romagna
![Page 8: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/8.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addictedVisual thinkerChaos summoner
avanscoperta
DDD-IT
XPUG - Romagna
![Page 9: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/9.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addictedVisual thinkerChaos summonerIdea thief
avanscoperta
DDD-IT
XPUG - Romagna
![Page 10: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/10.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addictedVisual thinkerChaos summonerIdea thiefLean & Agile
avanscoperta
DDD-IT
XPUG - Romagna
![Page 11: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/11.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addictedVisual thinkerChaos summonerIdea thiefLean & AgileEntrepreneur
avanscoperta
DDD-IT
XPUG - Romagna
![Page 12: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/12.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
About me@ziobrandoCertified DDD Trainer
Post-it addictedVisual thinkerChaos summonerIdea thiefLean & AgileEntrepreneur…never satisfied avanscoperta
DDD-IT
XPUG - Romagna
![Page 13: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/13.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Il problema
![Page 14: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/14.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Costo delle modifiche
100 1 2 3 4 5 6 7 8 9
10
0
1
2
3
4
5
6
7
8
9
Complessità
Cos
to d
i mod
ifica
Label
Illusione del greenfield
“manutenzione”
Dobbiamo riscrivere
Non si può fare
![Page 15: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/15.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 16: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/16.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Imponente
![Page 17: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/17.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Imponente
Flessibile?
![Page 18: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/18.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Ooops….
![Page 19: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/19.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Il miglior modo per rimuovere il pattume dal
sistema è…
![Page 20: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/20.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
non mettere pattume nel sistema
![Page 21: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/21.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Altrimenti…
![Page 22: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/22.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014© Alberto Brandolini 2013
Application
ApplicationApp
lication
Application
Applicat
ion
Database
Application App
lication
Database
ci ritroviamo con la solita architettura
Applic
ation
![Page 23: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/23.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!14
…da portare sul cloud
![Page 24: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/24.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014© Alberto Brandolini 2013
![Page 25: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/25.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014© Alberto Brandolini 2013
Quando si fa refactoring?
![Page 26: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/26.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014© Alberto Brandolini 2013
Quando si fa refactoring? Mañana!!
![Page 27: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/27.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Ignorance is the single greatest impediment to throughput.
Dan Northhttp://dannorth.net/2010/08/30/introducing-deliberate-discovery/
![Page 28: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/28.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Learning is the constraint
Dan Northhttp://dannorth.net/2010/08/30/introducing-deliberate-discovery/
![Page 29: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/29.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Piano d’azione
![Page 30: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/30.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Piano d’azione
1. Cominciare con il piede giusto
![Page 31: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/31.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Piano d’azione
1. Cominciare con il piede giusto
2. Rimuovere gli ostacoli all’apprendimento
![Page 32: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/32.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Piano d’azione
1. Cominciare con il piede giusto
2. Rimuovere gli ostacoli all’apprendimento
3. Iterare alla massima frequenza possibile
![Page 33: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/33.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Event Storming!
![Page 34: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/34.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Event Storming• Tutti in una stanza
• Rotolone di carta —> “unlimited modelling surface”
• Partiamo dai domain events!
• Raffiniamo il modello un passo alla volta
![Page 35: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/35.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 36: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/36.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014Tutti in una stanza?
![Page 37: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/37.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Tutti in una stanza!
• Risoluzione anticipata dei conflitti
• Visualizzazione di un artifact
• Possibilità di osservare l’aspetto umano
• Alto livello di energia.
![Page 38: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/38.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Si, TUTTO lo spazio
![Page 39: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/39.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 40: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/40.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 41: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/41.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Il dominio…
![Page 42: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/42.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Prenotazione risorse
![Page 43: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/43.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Video!
![Page 44: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/44.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Video!
![Page 45: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/45.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Video!
![Page 46: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/46.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Che è successo?
![Page 47: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/47.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Bounded Contexts• Lavorando con le persone emergono i
naturali confini tra
• le porzioni del dominio —> subdomains!
• i modelli in essere —> Bounded Contexts
![Page 48: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/48.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Ubiquitous Language
• la discussione ci ha portato ad una precisione del linguaggio sempre maggiore
• Il linguaggio è consistente e preciso all’interno di un Bounded Context
![Page 49: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/49.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Aggregati ed Invarianti
• aggregati = unità di consistenza.!
• Gli aggregati vengono individuati sulla base del comportamento del sistema
• Le invarianti sono garantite dagli aggregati.
![Page 50: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/50.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Roles & Responsibility
![Page 51: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/51.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Prima capiamo cosa sta dentro agli aggregati
![Page 52: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/52.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Poi capiamo che nome dargli
![Page 53: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/53.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Conceptual CQRS
Command
User
issues
influences
External information
influencesRead Model
Domain Modelto
Event
raises
Projection
notified to
updates
![Page 54: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/54.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Read Model
• Gli aggregati prendono decisioni sulla base dello stato corrente.
• Gli utenti prendono decisioni sulla base di quello che vedono…
![Page 55: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/55.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014Vedo i dati vecchi…
![Page 56: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/56.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Cambio!
![Page 57: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/57.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!42@andreabalducci
![Page 58: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/58.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Event Sourcing
!43
![Page 59: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/59.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!44
Il nostro dominio ha una storia
da raccontare…
![Page 60: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/60.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!45
…ma spesso ci accontentiamo dei titoli di coda
![Page 61: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/61.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!46
![Page 62: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/62.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!47
..invece di guardare tutta la storia.
![Page 63: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/63.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!48
![Page 64: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/64.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!49
Quante informazioni perdiamo ?
![Page 65: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/65.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Il saldo è 6.684€
!50
![Page 66: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/66.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!51
Data Dare Avere Descrizione operazione3/2 160
4/2 1.500
4/2 1.400
10/2 180
12/2 200
12/2 180
14/2 80
17/2 200
20/2 16
20/2 300
20/2 320
20/2 75
21/2 16
22/2 180
22/2 200
2.107 2.900 Saldo al 22/2 : 6.684
![Page 67: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/67.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
![Page 68: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/68.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
Due personeStessa Azienda
![Page 69: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/69.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
Due personeStessa Azienda
Carnivori
![Page 70: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/70.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
Due personeStessa Azienda
Carnivori
Auto senza telepass
![Page 71: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/71.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
Due personeStessa Azienda
Carnivori
Auto senza telepass
Lui & Lei
![Page 72: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/72.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
Due personeStessa Azienda
Lei compra entro un’ora da lui
Carnivori
Auto senza telepass
Lui & Lei
![Page 73: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/73.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!52
Data Dare Avere Descrizione operazione3/2 160 Supermercato Le Fornaci - Castelfidardo4/2 1.500 ACME Spa - Stipendio Gennaio4/2 1.400 ACME Spa - Stipendio Gennaio
10/2 180 Supermercato Le Fornaci - Castelfidardo12/2 200 Mediaworld Ancona12/2 180 Pittarello Ancona14/2 80 Ristorante Osteria da Pippo17/2 200 IperSimply- Castelfidardo20/2 16 Autostrade Spa - Casello Bologna20/2 300 Mediaworld Bologna20/2 320 Carpisa Bologna20/2 75 Hotel Bologna21/2 16 Autostrade Spa - Casello Ancona22/2 180 amazon.it22/2 200 zalando.it
2.107 2.900 Saldo al 22/2 : 6.684
Due personeStessa Azienda
24/2 spesa a Castelfidardo Lei compra entro
un’ora da lui
Carnivori
Auto senza telepass
Lui & Lei
![Page 74: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/74.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!53
Event Sourcing?
![Page 75: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/75.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!53
Event Sourcing?ne ho sentito parlare…
![Page 76: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/76.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Dominio
!54
![Page 77: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/77.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!55
Proprietà
Metodi
ORM
DB
Risorsa_1
Richiesta_1
Richiesta_2
Utente_1
Risorsa_2
Aggregato
![Page 78: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/78.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
ok.. basta una tabella di log
!56
![Page 79: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/79.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!57
basta
![Page 80: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/80.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!57
bastaduplicare tutte le strutture dati
![Page 81: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/81.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!57
bastaduplicare tutte le strutture datitenere tutto sincronizzato
![Page 82: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/82.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!57
bastaduplicare tutte le strutture datitenere tutto sincronizzatoversionare tutto
![Page 83: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/83.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!57
bastaduplicare tutte le strutture datitenere tutto sincronizzatoversionare tuttoun bel flag “comando io”
![Page 84: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/84.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!57
bastaduplicare tutte le strutture datitenere tutto sincronizzato
mapping! mapping! mapping! (cit)
versionare tuttoun bel flag “comando io”
![Page 85: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/85.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!58
basta uno storage ad eventi
![Page 86: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/86.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
NEventStoreA persistence agnostic Event Store for .NET
http://neventstore.org/
!59
![Page 87: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/87.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
CommonDomainla “colla” tra DDD e NEventStore
!60
![Page 88: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/88.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!61
Proprietà
Metodi
ORM
DB
Risorsa_1
Richiesta_1
Richiesta_2
Utente_1
Risorsa_2
Aggregato
![Page 89: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/89.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!62
Stato
Comandi
Eventi
Aggregato
Common Domain
Richiesta Creata
Richiesta Approvata
Prenotazione Confermata
PrenotazioneRespinta
Risorsa Acquistata
Risorsa Dismessa
EventStore
![Page 90: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/90.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!63
Evento
Quando
Cosa
Chi
Perché
Dove
![Page 91: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/91.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!64
Evento
Quando
Cosa
Chi
Perché
Dove
Timestamp: 2014-02-25T15:45
Headers: User_1
Aggregato: Presentazione
Slide Attiva: 1
PresentazioneIniziata
![Page 92: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/92.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!65
Evento
Quando
Cosa
Chi
Perché
Dove
Timestamp: 2014-02-25T15:45
Headers: User_1
Aggregato: Presentazione
Slide Attiva: 1
PresentazioneIniziata
![Page 93: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/93.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!66
A. var aggregate = repository.GetById<TAggregate>(id);
B. aggregate.Command(a,b,c);
C. repository.Save(aggregate, commitId, h => h.Add(k,v));
![Page 94: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/94.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!66
A. var aggregate = repository.GetById<TAggregate>(id);
B. aggregate.Command(a,b,c);
C. repository.Save(aggregate, commitId, h => h.Add(k,v));
Commit
Event1
Event2
Headers
Store Commit
![Page 95: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/95.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!66
A. var aggregate = repository.GetById<TAggregate>(id);
B. aggregate.Command(a,b,c);
C. repository.Save(aggregate, commitId, h => h.Add(k,v));
Commit
Event1
Event2
Headers
Store Commit
Observers
Dispatch Commit
Projections
Process Managers
Clients
![Page 96: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/96.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!67
Command
State
![Page 97: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/97.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!67
Command
State
Inte
rrog
azio
ne
ubiq
uito
us la
ngua
ge
![Page 98: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/98.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!67
Command
State
DomainException
Inte
rrog
azio
ne
ubiq
uito
us la
ngua
ge
![Page 99: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/99.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!67
Command
Event (ok)
State
DomainException
Inte
rrog
azio
ne
ubiq
uito
us la
ngua
ge
![Page 100: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/100.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!67
Command
Event (ko)Event (ok)
State
DomainException
Inte
rrog
azio
ne
ubiq
uito
us la
ngua
ge
![Page 101: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/101.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!67
Command
Event (ko)Event (ok)
State
Router
DomainException
Inte
rrog
azio
ne
ubiq
uito
us la
ngua
ge
![Page 102: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/102.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!68
Svantaggi
![Page 103: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/103.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
dipende..
!69
Quantità di codice
![Page 104: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/104.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!69
tantoQuantità di codice
![Page 105: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/105.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!69
tantoQuantità di codice
ma dannatamente semplice
![Page 106: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/106.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!70
Vantaggi
![Page 107: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/107.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!71
Focus sustruttura dati
![Page 108: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/108.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!71
Focus sucomportamento
![Page 109: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/109.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!71
Focus sucomportamentobusiness value
![Page 110: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/110.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!72
Decisioni prese sustato (stale)
![Page 111: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/111.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
stato corrente
!72
Decisioni prese su
![Page 112: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/112.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
stato corrente
!72
Decisioni prese su
by design
![Page 113: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/113.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
esponenziale
!73
Costo di implementazione
![Page 114: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/114.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!73
Costo di implementazionelineare
![Page 115: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/115.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!73
Costo di implementazionelineare
eventi++
![Page 116: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/116.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!74
complessoTesting
![Page 117: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/117.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!74
Testingfacile
![Page 118: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/118.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!74
Testingfacile
stato -> comando -> eventi
![Page 119: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/119.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!75
transazioni (tutto o niente)Collisioni
![Page 120: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/120.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!75
Collisionimerge intelligenti / replay
![Page 121: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/121.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!75
Collisionimerge intelligenti / replay
by design
![Page 122: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/122.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!76
batch / etl / ws ad hoc / triggerIntegrabilità
![Page 123: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/123.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!76
Integrabilitàevento -> subscriber
![Page 124: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/124.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!76
Integrabilitàevento -> subscriber
push o pull
![Page 125: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/125.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!77
![Page 126: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/126.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!78
![Page 127: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/127.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!79
![Page 128: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/128.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!79
![Page 129: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/129.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!79
![Page 130: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/130.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!79
![Page 131: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/131.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!80
Nei test runner diventa
![Page 132: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/132.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!81
Join the dots
![Page 133: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/133.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!82
![Page 134: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/134.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!83
Register Resource
Resource Registered
![Page 135: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/135.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!84
![Page 136: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/136.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!85
![Page 137: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/137.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!86
![Page 138: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/138.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!87
stato
Handler eventi
Interrogazioni allo stato in UL
![Page 139: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/139.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!88
![Page 140: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/140.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!89
![Page 141: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/141.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!90
![Page 142: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/142.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!91
![Page 143: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/143.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!92
![Page 144: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/144.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!93
![Page 145: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/145.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!94
Ricapitolando
![Page 146: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/146.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!94
NEventStore Common Domain
Machine Specifications
Event Storming
DDD
![Page 147: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/147.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
!95
http://github.com/andreabalducci/cdays14
![Page 148: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/148.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Elogio alla community“…gli user group sono stati lo strumento che maggiormente mi hanno permesso di imparare sia come scrivere software in modo nettamente migliore, sia come affrontare le altre componenti relative alla gestione di un prodotto o di un progetto. Ciò è stato possibile grazie al dialogo e al confronto con persone intelligenti e disponibili a scambiare gratuitamente le proprie idee, opinioni ed esperienze, col coraggio di riportare anche quelle fallimentari, invece di chiudersi nel proprio orticello cercando di nascondere i propri segreti. Questo è lo scambio culturale, che porta ad un’effettiva crescita, a cui tutti coloro che svolgono la nostra professione farebbero bene a partecipare e contribuire.”
!96Elogio alla community - @ste8
![Page 149: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/149.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Conclusioni
![Page 150: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/150.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Emersione rapida…
• … della complessità
• del problema business
• dei conflitti
![Page 151: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/151.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Troppa complessità
![Page 152: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/152.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
EventStorming non è la pillola per diventare
intelligenti
![Page 153: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/153.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
EventStorming ci permette di scoprire dove abbiamo torto …il prima possibile
![Page 154: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/154.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
rapporto costi/benefici
• Alcuni domini chiamano a gran voce EventSourcing
• …su altri non è che ci sia poi tutta questa complessità.
• ma…
![Page 155: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/155.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
CRUDAssumo ORA di non avere
bisogno della storia del dato in futuro
![Page 156: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/156.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014Quanto costa la colla?
![Page 157: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/157.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Ignorance is the single greatest impediment
to throughput.
Dan Northhttp://dannorth.net/2010/08/30/introducing-deliberate-discovery/
![Page 158: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/158.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Customer Satisfaction
![Page 159: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/159.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Domain Events
![Page 160: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/160.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Domain Events• Lo-Fi —> Gli esperti ci correggono
![Page 161: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/161.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Domain Events• Lo-Fi —> Gli esperti ci correggono
• Transizioni di stato —> Maggior precisione e ricchezza del linguaggio
![Page 162: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/162.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Domain Events• Lo-Fi —> Gli esperti ci correggono
• Transizioni di stato —> Maggior precisione e ricchezza del linguaggio
• Non ragiono più in tabelle. —> non costringo gli utenti ad adattarsi.
![Page 163: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/163.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Domain Events• Lo-Fi —> Gli esperti ci correggono
• Transizioni di stato —> Maggior precisione e ricchezza del linguaggio
• Non ragiono più in tabelle. —> non costringo gli utenti ad adattarsi.
• Faccio le domande giuste
![Page 164: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/164.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014UX
![Page 165: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/165.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 166: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/166.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Scenari classici• Analisi redditività
• Fraud detection
• Analisi temporali
• Predittività e correlazioni (scenario walmart)
• …
![Page 167: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/167.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014© Alberto Brandolini 2009
gli esperti ci aiutano a capire
e noi aiutiamo loro
![Page 168: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/168.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Cicli corti
![Page 169: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/169.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 170: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/170.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
![Page 171: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/171.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Per saperne di più…
• http://ziobrando.blogspot.it/2013/11/introducing-event-storming.html
• https://it.groups.yahoo.com/neo/groups/DDD-IT/
• 19 marzo a Roma / 2 aprile a Bologna
![Page 172: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/172.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Grazie!
![Page 173: Idea - post-it - test verdi](https://reader033.vdocuments.mx/reader033/viewer/2022051311/544173f2b1af9fef4b8b472e/html5/thumbnails/173.jpg)
#CDays14 – Milano 25, 26 e 27 Febbraio 2014
Q&ATutto il materiale di questa sessione su
http://www.communitydays.it/
!Lascia il feedback su questa sessione,
potrai essere estratto per i nostri premi!
!Seguici su
Twitter @CommunityDaysIT
Facebook http://facebook.com/cdaysit
#CDays14