advertisement

Idea - post-it - test verdi.

67 %
33 %
advertisement
Information about Idea - post-it - test verdi.
Technology

Published on February 28, 2014

Author: ziobrando

Source: slideshare.net

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.
advertisement

Idea Idea —> Post-It —> Test Verdi Post-it Test Verdi! #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Alberto Brandolini! alberto.brandolini@avanscoperta.it @ziobrando http://ziobrando.blogspot.com Andrea Balducci! andrea.balducci@prxm.it @andreabalducci

Idea —> Post-it —> Test verdi Alberto Brandolini! alberto.brandolini@avanscoperta.it @ziobrando http://ziobrando.blogspot.com Andrea Balducci! andrea.balducci@prxm.it @andreabalducci #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Grazie a Sponsor #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted Visual thinker @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted Visual thinker Chaos summoner @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted Visual thinker Chaos summoner Idea thief @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted Visual thinker Chaos summoner Idea thief Lean & Agile @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted Visual thinker Chaos summoner Idea thief Lean & Agile Entrepreneur @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta #CDays14 – Milano 25, 26 e 27 Febbraio 2014

About me Certified DDD Trainer Post-it addicted Visual thinker Chaos summoner Idea thief Lean & Agile Entrepreneur …never satisfied #CDays14 – Milano 25, 26 e 27 Febbraio 2014 @ziobrando alberto.brandolini@avanscoperta.it DDD-IT XPUG - Romagna avanscoperta

Il problema #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Costo delle modifiche 10 9 8 Dobbiamo riscrivere Costo di modifica 7 6 Non si può fare 5 4 “manutenzione” 3 2 Label Illusione del greenfield 1 0 0 1 2 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 3 4 5 Complessità 6 7 8 9 10

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

Imponente #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Imponente Flessibile? #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Ooops…. #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Il miglior modo per rimuovere il pattume dal sistema è… #CDays14 – Milano 25, 26 e 27 Febbraio 2014

non mettere pattume nel sistema #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Altrimenti… #CDays14 – Milano 25, 26 e 27 Febbraio 2014

l App n at i o ic pl i p A i pl Ap Ap pl i D at a b a s e c io at ca tio n at c i on ppl A i o ati c n pl i p A tio ca n App tio n l ic a n pl i Ap io n c at D at a ba se ci ritroviamo con la solita architettura #CDays14 – Milano 25, 26 e 27 Febbraio 2014 © Alberto Brandolini 2013

…da portare sul cloud #CDays14 – Milano 25, 26 e 27 Febbraio 2014 !14

#CDays14 – Milano 25, 26 e 27 Febbraio 2014 © Alberto Brandolini 2013

Quando si fa refactoring? #CDays14 – Milano 25, 26 e 27 Febbraio 2014 © Alberto Brandolini 2013

Quando si fa refactoring? #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Mañana!! © Alberto Brandolini 2013

Ignorance is the single greatest impediment to throughput. Dan North #CDays14 – Milano 25, 26 e 27 Febbraio 2014 http://dannorth.net/2010/08/30/introducing-deliberate-discovery/

Learning is the constraint #CDays14 – Milano 25, 26 e 27 Febbraio 2014 http://dannorth.net/2010/08/30/introducing-deliberate-discovery/ Dan North

Piano d’azione #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Piano d’azione 1. Cominciare con il piede giusto #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Piano d’azione 1. Cominciare con il piede giusto 2. Rimuovere gli ostacoli all’apprendimento #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 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Event Storming! #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 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

Tutti in una stanza? #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. #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Si, TUTTO lo spazio #CDays14 – Milano 25, 26 e 27 Febbraio 2014

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

Il dominio… #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Prenotazione risorse #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Video! #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Video! #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Video! #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Che è successo? #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 #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 #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. #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Roles & Responsibility #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Prima capiamo cosa sta dentro agli aggregati #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Poi capiamo che nome dargli #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Conceptual CQRS issues Command to Domain Model raises Event User influences Read Model notified to influences updates External information #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Projection

Read Model • Gli aggregati prendono decisioni sulla base dello stato corrente. • Gli utenti prendono decisioni sulla base di quello che vedono… #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Vedo i dati vecchi… #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Cambio! #CDays14 – Milano 25, 26 e 27 Febbraio 2014

@andreabalducci #CDays14 – Milano 25, 26 e 27 Febbraio 2014 !42

Event Sourcing !43 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Il nostro dominio ha una storia da raccontare… !44 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

…ma spesso ci accontentiamo dei titoli di coda !45 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!46 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

..invece di guardare tutta la storia. !47 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!48 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Quante informazioni perdiamo ? !49 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Il saldo è 6.684€ !50 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Data Dare 3/2 Avere Descrizione operazione 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 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !51

Data Dare 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 180 Supermercato Le Fornaci - Castelfidardo 12/2 200 Mediaworld Ancona 12/2 180 Pittarello Ancona 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carpisa Bologna 20/2 75 Hotel Bologna 21/2 16 Autostrade Spa - Casello Ancona 22/2 180 amazon.it 22/2 200 zalando.it 2.107 Ristorante Osteria da Pippo IperSimply- Castelfidardo Autostrade Spa - Casello Bologna 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !52

Data Dare 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 180 Supermercato Le Fornaci - Castelfidardo 12/2 200 Mediaworld Ancona 12/2 180 Pittarello Ancona 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carpisa Bologna 20/2 75 Hotel Bologna 21/2 16 Autostrade Spa - Casello Ancona 22/2 180 amazon.it 22/2 200 Due persone
 Stessa Azienda zalando.it 2.107 Ristorante Osteria da Pippo IperSimply- Castelfidardo Autostrade Spa - Casello Bologna 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !52

Data Dare 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 180 Supermercato Le Fornaci - Castelfidardo 12/2 200 Mediaworld Ancona 12/2 180 Pittarello Ancona 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carpisa Bologna 20/2 75 Hotel Bologna 21/2 16 Autostrade Spa - Casello Ancona 22/2 180 amazon.it 22/2 200 Due persone
 Stessa Azienda zalando.it 2.107 Ristorante Osteria da Pippo IperSimply- Castelfidardo Carnivori Autostrade Spa - Casello Bologna 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !52

Data Dare 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 Auto senza 12/2 telepass 12/2 180 Supermercato Le Fornaci - Castelfidardo 200 Mediaworld Ancona 180 Due persone
 Stessa Azienda Pittarello Ancona Ristorante Osteria da Pippo 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carpisa Bologna 20/2 75 Hotel Bologna 21/2 16 Autostrade Spa - Casello Ancona 22/2 180 amazon.it 22/2 200 Carnivori zalando.it 2.107 IperSimply- Castelfidardo Autostrade Spa - Casello Bologna 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !52

LuiDataLei Dare & 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 Auto senza 12/2 telepass 12/2 180 Supermercato Le Fornaci - Castelfidardo 200 Mediaworld Ancona 180 Due persone
 Stessa Azienda Pittarello Ancona Ristorante Osteria da Pippo 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carpisa Bologna 20/2 75 Hotel Bologna 21/2 16 Autostrade Spa - Casello Ancona 22/2 180 amazon.it 22/2 200 Carnivori zalando.it 2.107 IperSimply- Castelfidardo Autostrade Spa - Casello Bologna 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !52

LuiDataLei Dare & 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 Auto senza 12/2 telepass 12/2 180 Supermercato Le Fornaci - Castelfidardo 200 Mediaworld Ancona 180 Due persone
 Stessa Azienda Pittarello Ancona Ristorante Osteria da Pippo 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carpisa Bologna 20/2 75 Hotel Bologna 21/2 16 Autostrade Spa - Casello Ancona 22/2 180 amazon.it 22/2 200 zalando.it Carnivori 2.107 IperSimply- Castelfidardo Autostrade Spa - Casello Bologna 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Lei compra entro un’ora da lui Saldo al 22/2 : 6.684 !52

LuiDataLei Dare & 3/2 Avere Descrizione operazione Supermercato Le Fornaci - Castelfidardo 160 4/2 1.500 ACME Spa - Stipendio Gennaio 4/2 1.400 ACME Spa - Stipendio Gennaio 10/2 Auto senza 12/2 telepass 12/2 180 Supermercato Le Fornaci - Castelfidardo 200 Mediaworld Ancona 180 Due persone
 Stessa Azienda Pittarello Ancona Ristorante Osteria da Pippo 14/2 80 17/2 200 20/2 16 20/2 300 Mediaworld Bologna 20/2 320 Carnivori Carpisa Bologna 20/2 21/2 22/2 22/2 IperSimply- Castelfidardo Autostrade Spa - Casello Bologna 75 24/2 spesa a Hotel Bologna 16 Autostrade Spa - Casello Ancona Lei compra entro Castelfidardo amazon.it 180 un’ora da lui 200 zalando.it 2.107 2.900 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Saldo al 22/2 : 6.684 !52

Event Sourcing?
 !53 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Event Sourcing?
 ne ho sentito parlare… !53 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Dominio !54 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Aggregato DB ORM Risorsa_1 Proprietà Richiesta_1 Richiesta_2 Utente_1 Metodi Risorsa_2 !55 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

ok.. basta una tabella di log !56 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta !57 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta duplicare tutte le strutture dati !57 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta duplicare tutte le strutture dati tenere tutto sincronizzato !57 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta duplicare tutte le strutture dati tenere tutto sincronizzato versionare tutto !57 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta duplicare tutte le strutture dati tenere tutto sincronizzato versionare tutto un bel flag “comando io” !57 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta duplicare tutte le strutture dati tenere tutto sincronizzato versionare tutto un bel flag “comando io” mapping! mapping! mapping! (cit) !57 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

basta uno storage ad eventi !58 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

NEventStore A persistence agnostic Event Store for .NET
 http://neventstore.org/ !59 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

CommonDomain la “colla” tra DDD e NEventStore !60 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Aggregato DB ORM Risorsa_1 Proprietà Richiesta_1 Richiesta_2 Utente_1 Metodi Risorsa_2 !61 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Aggregato EventStore Richiesta Creata Stato Common
 Domain Eventi Richiesta Approvata Prenotazione Confermata Prenotazione
 Respinta Risorsa
 Acquistata Comandi Risorsa
 Dismessa !62 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Evento Chi Quando Dove Cosa Perché !63 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Evento Chi Headers: User_1 Quando Timestamp: 2014-02-25T15:45 Dove Aggregato: Presentazione Cosa Slide Attiva: 1 Perché PresentazioneIniziata !64 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Evento Chi Headers: User_1 Quando Timestamp: 2014-02-25T15:45 Dove Aggregato: Presentazione Cosa Slide Attiva: 1 Perché PresentazioneIniziata !65 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

A. var aggregate = repository.GetById<TAggregate>(id); B. aggregate.Command(a,b,c); C. repository.Save(aggregate, commitId, h => h.Add(k,v)); !66 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

A. var aggregate = repository.GetById<TAggregate>(id); B. aggregate.Command(a,b,c); C. repository.Save(aggregate, commitId, h => h.Add(k,v)); Store Commit Commit Headers Event1 Event2 #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)); Store Commit Observers Commit Headers Event1 Event2 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Dispatch Commit Projections Process Managers Clients !66

Command State !67 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

ubiquitous language Interrogazione Command State !67 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Domain
 Exception ubiquitous language Interrogazione Command State !67 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Domain
 Exception ubiquitous language Interrogazione Command Event (ok) State !67 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Domain
 Exception ubiquitous language Interrogazione Command Event (ko) Event (ok) State !67 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Domain
 Exception ubiquitous language Interrogazione Command Event (ko) Event (ok) Router State !67 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Svantaggi !68 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Quantità di codice dipende.. !69 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Quantità di codice tanto !69 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Quantità di codice tanto ma dannatamente semplice !69 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Vantaggi !70 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Focus su struttura dati !71 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Focus su comportamento !71 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Focus su comportamento business value !71 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Decisioni prese su stato (stale) !72 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Decisioni prese su stato corrente !72 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Decisioni prese su stato corrente by design !72 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Costo di implementazione esponenziale !73 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Costo di implementazione lineare !73 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Costo di implementazione lineare eventi++ !73 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Testing complesso !74 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Testing facile !74 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Testing facile stato -> comando -> eventi !74 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Collisioni transazioni (tutto o niente) !75 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Collisioni merge intelligenti / replay !75 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Collisioni merge intelligenti / replay by design !75 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Integrabilità batch / etl / ws ad hoc / trigger !76 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Integrabilità evento -> subscriber !76 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Integrabilità evento -> subscriber push o pull !76 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!77 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!78 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!79 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!79 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!79 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!79 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Nei test runner diventa !80 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Join the dots !81 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!82 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Register Resource Resource Registered !83 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!84 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!85 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!86 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

stato Handler eventi Interrogazioni allo stato in UL !87 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!88 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!89 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!90 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!91 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!92 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

!93 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Ricapitolando !94 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Event Storming Common
 Domain NEventStore DDD #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Machine Specifications !94

http://github.com/andreabalducci/cdays14 !95 #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.” Elogio alla community - @ste8 #CDays14 – Milano 25, 26 e 27 Febbraio 2014 !96

Conclusioni #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Emersione rapida… • … della complessità • del problema business • dei conflitti #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Troppa complessità #CDays14 – Milano 25, 26 e 27 Febbraio 2014

EventStorming non è la pillola per diventare intelligenti #CDays14 – Milano 25, 26 e 27 Febbraio 2014

EventStorming ci permette di scoprire dove abbiamo torto …il prima possibile #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… #CDays14 – Milano 25, 26 e 27 Febbraio 2014

CRUD #CDays14 – Milano 25, 26 e 27 Febbraio 2014 Assumo ORA di non avere bisogno della storia del dato in futuro

Quanto costa la colla? #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Ignorance is the single greatest impediment to throughput. #CDays14 – Milano 25, 26 e 27 Febbraio 2014 http://dannorth.net/2010/08/30/introducing-deliberate-discovery/ Dan North

Customer Satisfaction #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Domain Events #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Domain Events • Lo-Fi —> Gli esperti ci correggono #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 #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. #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 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

#CDays14 – Milano 25, 26 e 27 Febbraio 2014 UX

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

Scenari classici • Analisi redditività • Fraud detection • Analisi temporali • Predittività e correlazioni (scenario walmart) • … #CDays14 – Milano 25, 26 e 27 Febbraio 2014

gli esperti ci aiutano a capire #CDays14 – Milano 25, 26 e 27 Febbraio 2014 e noi aiutiamo loro ©  Alberto  Brandolini  2009

Cicli corti #CDays14 – Milano 25, 26 e 27 Febbraio 2014

#CDays14 – Milano 25, 26 e 27 Febbraio 2014

#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 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Grazie! #CDays14 – Milano 25, 26 e 27 Febbraio 2014

Q&A Tutto 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 #CDays14 – Milano 25, 26 e 27 Febbraio 2014

#cdays14 presentations

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

Verdi - Enigmatic Scale - Documents

Idea - post-it - test verdi. Verdi Oberto Vocal Score. Background Information of Verdi. Verdi Requiem (Full Score) ... Arcas Fantasia Verdi Traviata. Login ...
Read more

POST-IT - Documents

On a Post-it, please write any questions you need addressed. Welcome! ... Idea - post-it - test verdi. Death by POST-IT note. Market resource postit first.
Read more

Collaborators « Verdis Group | Blog

The Omaha World Herald ran a story on the front page of Sunday’s paper highlighting the status of the reEnergize Program, a City of Omaha and City of ...
Read more

Grade ELA Map: 1 - Charleston School District

include response journals, post‐it notes ... Identify the author’s purpose and the main idea. ... Verdi by Jannell Cannon ...
Read more

Wikipedia:Village pump (idea lab)/Archive 10 - Wikipedia ...

Also that would completely get rid of test ... I came up with a brilliant genius idea and I didn't know where to post it, ... Village pump (idea lab) ...
Read more

5 Times When You Shouldn't Be Dating - Paging Dr. NerdLove

Sometimes the most important dating advice you can get is understanding when you SHOULDN'T be dating. ... This is a very depressing post. It ... The idea ...
Read more

Padlet is the easiest way to create and collaborate in the ...

Welcome to the easiest way to create and collaborate in the world. Create a padlet Sign up. Just kidding
Read more

Onlineshopping mit portofreier Lieferung innerhalb von 48 ...

Ihre Vorteile Bestellen ist auch ohne Registrierung möglich. Wir erheben keine Kreditkartengebühren. Als registrierte Kunden können Sie auf Rechnung ...
Read more