SlideShare uma empresa Scribd logo
1 de 176
Baixar para ler offline
Managing * debt 
Alberto Brandolini 
@ziobrando avanscoperta
About me @ziobrando 
About me 
@ziobrando 
I do something else instead 
avanscoperta
About About me me 
@ziobrando 
DDD enthusiast 
@ziobrando 
I do something else instead 
avanscoperta
About About me me 
@ziobrando 
DDD enthusiast 
Post-it addicted 
@ziobrando 
I do something else instead 
avanscoperta
About About me me 
@ziobrando 
DDD enthusiast 
Post-it addicted 
@ziobrando 
Visual thinker 
I do something else instead 
avanscoperta
About About me me 
@ziobrando 
DDD enthusiast 
Post-it addicted 
@ziobrando 
Visual I do something thinker 
else instead 
Chaos summoner 
avanscoperta
About About me me 
@ziobrando 
DDD enthusiast 
Post-it addicted 
@ziobrando 
Visual I do something thinker 
else instead 
Chaos summoner 
Idea thief 
avanscoperta
About About me me 
@ziobrando 
DDD enthusiast 
Post-it addicted 
@ziobrando 
Visual I do something thinker 
else instead 
Chaos summoner 
Idea thief 
…never satisfied avanscoperta
Technical Debt 
https://www.youtube.com/watch?v=pqeJFYwnkjE
1. Spensieratezza
2. Accumulo
3.
E dopo?
Technical Debt 
https://www.youtube.com/watch?v=pqeJFYwnkjE
L’illusione del 
controllo
Che bello! Un 
postdatato! Grazie!!!
Prevedibile 
Negoziabile 
Stimabile 
Controllabile
No, il debito non 
l’avete con lei…
Libbano
Libbano 
Bella Libbano! 
Questa iterazione c’ha detto 
male. :-) Ma er debbito 
o’ripagamo alla prossima!! :o)
Libbano 
Bella Libbano! 
Questa iterazione c’ha detto 
male. :-) Ma er debbito 
o’ripagamo alla prossima!! :o) 
A Tastiè’, Tranqui, er leggacy 
è ‘na bbrutta bestia. Manda du’ 
righe ar Freddo che aggiorna 
l’excel. Daje!!
Davvero?
2 problemi:
Le cose che sei 
costretto a fare
Le cose a cui rinunci
Ma soprattutto…
Italia tefe pakare 
tepito tekniko!
Non è 
sempre 
detto…
Questa può 
essere una 
strategia…
So ndo’ abbiti.
Di chi è il debito?
Se prevediamo di stare nel 
sistema meno del tempo 
necessario a migliorarlo…
#sticazzi!
…è una strategia 
vincente.
Leggiamo il sistema:
Sistema 0 
-Prodotto non interessante 
-Sviluppatori a progetto
Sistema 1 
-Prodotto chiave 
-Sviluppatori a progetto 
-… “ah, è la crisi!” :-(
Sistema 2 
-Sviluppatori interni 
-Budget trimestrale/semestrale/ 
annuale
“Possiamo fare 
refactoring?”
“Mamma posso 
mettere in ordine la 
mia stanza?”
Costi certi 
vs…
Dobbiamo chiederlo 
noi?
Non dobbiamo 
chiedere il permesso 
di fare la cosa giusta
Se è così grande da 
dover chiedere il 
permesso c’è 
qualcosa di 
sbagliato…
Cosa stiamo 
chiedendo?
Sistema 3 
-Sviluppatori interni bravi 
-CEO che pianifica un exit
Stessi obiettivi? 
Management Horizon IT Horizon Short term Long term Long term Short Term 
Con pratica e 
disciplina farete 
Catenaccio! grandi cose! 
Bomba a tempo 
Planning difensivo 
Tanta Fatica 
Abbandonate 
la nave! 
Esperimenti 
Probabilmente 
devono imparare 
qualcosa
Chi può migliorare il 
sistema?
Di chi è il debito?
Siamo pedine o giocatori?
Ok chi paga?
So ndo’ abbiti.
A quanto ammonta il 
debito?
“Non ne ho idea”
“È un casino”
“Non si può fare”
…serve una via!
Cosa significa scrivere 
del “buon codice”?
Framework di persistenza in 
Java fatto in casa - 2002
Framework di persistenza in 
Java fatto in casa - 2002 
Libreria per la 
generazione del codice 
fiscale - 1999
Framework di persistenza in 
Java fatto in casa - 2002 
Libreria per la 
generazione del codice 
fiscale - 1999 
Wrapper di Log4J - 2003
“se cambia X, noi 
siamo a posto”
Egli 
l’aveva 
previsto
Egli 
l’aveva 
previsto 
È senza 
dubbio il 
prescelto!
Egli 
l’aveva 
previsto 
È senza 
dubbio il 
prescelto! 
I suoi sorgenti 
saranno studiati dalle 
generazioni future!
Egli 
l’aveva 
previsto 
È senza 
dubbio il 
prescelto! 
…ed è 
anche un 
bell’uomo! 
I suoi sorgenti 
saranno studiati dalle 
generazioni future!
Protezione da rischi 
(tecnologici) 
vs 
generazione di 
opportunità
Generazione di opportunità 
1) Deve funzionare 
2) Deve essere usato 
3) Deve piacere
“A posto così, grazie”
In quante aziende 
hanno smesso di 
chiedere?
Quindi?
Solo una “religione” 
può sperare di 
sovvertire un sistema
I SOLID principles non 
sono sufficienti
Orgoglio 
vs 
disciplina
Flexibility Debt
Io mi occupo di 
questo
Di questo se ne 
occupa lui…
è il mio tesssoro!!!
© 
Alberto 
Brandolini 
2009 
… ma anche no!
Altre opzioni che 
svaniscono
Il debito è non avere 
alternative
1. Scopri il blocco 
2. demistifica 
3. agisci
Qualche assunzione 
implicita 
(E qualche cosa che dico talmente tante volte da 
dare per scontata)
“Il debito tecnico va 
risolto a livello 
tecnico”
Italia tefe fare sakrifici
“Sviluppare software è 
produrre codice”
sbagliato
Software 
development is a 
learning process 
Working code is a 
side effect
Coding 20cl, learning 20cl, 
deciding 20cl, waiting...
quindi…?
Debito tecnico come 
effetto collaterale di… 
Quello che abbiamo imparato 
a livello tecnico 
a livello di dominio 
Del modo in cui prendiamo le 
decisioni 
Del tempo a disposizione 
Dei vincoli imposti dal sistema
“Voglio ridurre il debito 
tecnico senza sperimentare 
nuove strade”
“Voglio ridurre il debito 
tecnico senza imparare 
nulla di nuovo” 
a livello tecnico 
a livello di dominio
“Voglio ridurre il debito 
tecnico senza cambiare il 
modo in cui vengono prese le 
decisioni”
“Voglio ridurre il debito 
tecnico senza mettere in 
luce gli errori passati”
Non possiamo risolvere 
il debito tecnico solo a 
livello di codice
Dobbiamo imparare 
nuove cose
Dobbiamo prendere 
decisioni migliori
Paura dell’ignoto 
“Bisogna che lo fai tu…”
Hotspot Visualiser
Strategia 
Guarda il quadro generale 
Scegli l’azione più importante 
Agisci 
insegna - analizza - sperimenta 
Verifica 
(gongola) 
Ricomincia
Abbiamo una potenza 
di fuoco limitata
Non possiamo 
risolvere tutto
Ma una cosa sì
Prenditi tutto lo 
spazio che serve
Awareness
So ndo’ abbiti.
Paura dell’ignoto 
Eh, ma è un casino
Vogliamo sapere 
Quanto è il debito 
Quando dobbiamo pagarlo 
Se dobbiamo pagarlo
La matematica del 
mucchio
Fase 1 
È un casino. 
C’è un sacco di roba. 
Non va niente.
Quanto è grande il casino?
Quanto è grande il casino?
Ora lo sappiamo
Io e PHP (fase 1)
Io e PHP (fase 1) 
Non conosco PHP
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?)
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?)
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?) 
Stima per imparare PHP:
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio 
Posizione commerciale:
Io e PHP (fase 1) 
Non conosco PHP 
(quanto mi ci vuole a imparare un linguaggio?) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio 
Posizione commerciale: 
“Non mi occupo di PHP”
Paura dell’ignoto 
Eh, ma è un casino
Testing Dojo 
Una giornata dedicata alla 
sperimentazione ed alla 
pratica senza alcun altro fine 
che imparare
Ore lavorative 
o 
fine settimana?
Io e PHP (fase 2)
Io e PHP (fase 2) 
Non conosco PHP
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè)
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè)
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè) 
Stima per imparare PHP:
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio 
Posizione commerciale:
Io e PHP (fase 2) 
Non conosco PHP 
(però …vabbè) 
Stima per imparare PHP: 
1 mese per imparare il linguaggio 
Posizione commerciale: 
“No problem”
Freddo, quanto 
sta er debbito?
So’ 12 euro e 70
Quello che non 
sappiamo crea 
ostacoli
La Trasparenza paga
Questo è un problema
Fare cose per la prima 
volta
Aprire opzioni
Dove ci sediamo?
Dove lavoriamo?
Come lavoriamo 
oggi?
Il debito sono le cose 
a cui rinunciamo
Il debito sono le cose 
a cui rinunciamo 
senza rendercene conto
Non è tecnico
Non si ripaga 
solo con la fatica
Non dobbiamo 
pagarlo TUTTO
Ma dobbiamo 
controllarlo
O lui controllerà noi
Grazie!
Actionables 
http://www.mindmeister.com/478235545?t=YCxNFnCG2Z#
Nota dell’autore 
La prima uscita di questa 
presentazione è stata all’ Italian 
Agile Day 2014. 
Per un sacco di motivi, il risultato 
non è stato completamente 
soddisfacente. In particolare, 
alcuni feedback hanno evidenziato 
alcuni legami non proprio 
immediati tra gli argomenti 
trattati. 
In questa versione ho cercato di 
rendere più evidenti alcuni aspetti, 
che riallacciandosi a mie 
presentazioni passate, potevano 
apparire ovvii, ma non lo erano. 
Il risultato è un numero di slides 
decisamente superiore alla 
versione originale, ma (spero) 
maggiore chiarezza nel passaggio 
dalla prima alla seconda parte del 
talk. 
A queste è stata aggiunta anche la 
mindmap della slide precedente 
con alcuni riferimenti a strumenti 
specifici, sperando d fare cosa 
gradita.
aspè’
A Brando! … me 
spieghi la formattazione 
condizionale?

Mais conteúdo relacionado

Destaque

Idea stickies green bar - Wroclaw edition
Idea stickies green bar - Wroclaw editionIdea stickies green bar - Wroclaw edition
Idea stickies green bar - Wroclaw editionAlberto Brandolini
 
Guerrilla portfolio management
Guerrilla portfolio managementGuerrilla portfolio management
Guerrilla portfolio managementAlberto Brandolini
 
Model storming - a different approach to collaborative model discovery (Vilni...
Model storming - a different approach to collaborative model discovery (Vilni...Model storming - a different approach to collaborative model discovery (Vilni...
Model storming - a different approach to collaborative model discovery (Vilni...Alberto Brandolini
 
Bullshit Asymmetry Principle lightning talk
Bullshit Asymmetry Principle lightning talkBullshit Asymmetry Principle lightning talk
Bullshit Asymmetry Principle lightning talkAlberto Brandolini
 
Why do all my ddd apps look the same - Vienna 2014
Why do all my ddd apps look the same - Vienna 2014Why do all my ddd apps look the same - Vienna 2014
Why do all my ddd apps look the same - Vienna 2014Alberto Brandolini
 
Taming Complex Domains with Domain Driven Design
Taming Complex Domains with Domain Driven DesignTaming Complex Domains with Domain Driven Design
Taming Complex Domains with Domain Driven DesignAlberto Brandolini
 
The final words about software estimation
The final words about software estimationThe final words about software estimation
The final words about software estimationAlberto Brandolini
 

Destaque (12)

Idea stickies green bar - Wroclaw edition
Idea stickies green bar - Wroclaw editionIdea stickies green bar - Wroclaw edition
Idea stickies green bar - Wroclaw edition
 
Optimized for what
Optimized for whatOptimized for what
Optimized for what
 
Guerrilla portfolio management
Guerrilla portfolio managementGuerrilla portfolio management
Guerrilla portfolio management
 
The sweet spot
The sweet spotThe sweet spot
The sweet spot
 
Model storming - a different approach to collaborative model discovery (Vilni...
Model storming - a different approach to collaborative model discovery (Vilni...Model storming - a different approach to collaborative model discovery (Vilni...
Model storming - a different approach to collaborative model discovery (Vilni...
 
Bullshit Asymmetry Principle lightning talk
Bullshit Asymmetry Principle lightning talkBullshit Asymmetry Principle lightning talk
Bullshit Asymmetry Principle lightning talk
 
Why do all my ddd apps look the same - Vienna 2014
Why do all my ddd apps look the same - Vienna 2014Why do all my ddd apps look the same - Vienna 2014
Why do all my ddd apps look the same - Vienna 2014
 
Taming Complex Domains with Domain Driven Design
Taming Complex Domains with Domain Driven DesignTaming Complex Domains with Domain Driven Design
Taming Complex Domains with Domain Driven Design
 
Transactions redefined
Transactions redefinedTransactions redefined
Transactions redefined
 
Chasing elephants
Chasing elephantsChasing elephants
Chasing elephants
 
Event storming recipes
Event storming recipesEvent storming recipes
Event storming recipes
 
The final words about software estimation
The final words about software estimationThe final words about software estimation
The final words about software estimation
 

Semelhante a Managing debt remastered

Designers from Hell / Freelance Day 2015
Designers from Hell / Freelance Day 2015Designers from Hell / Freelance Day 2015
Designers from Hell / Freelance Day 2015Sketchin
 
Retrospective, StandUp Meeting e Daily Journal
Retrospective, StandUp Meeting e Daily JournalRetrospective, StandUp Meeting e Daily Journal
Retrospective, StandUp Meeting e Daily JournalPietro Di Bello
 
L'Innovazione non è un'autostrada
L'Innovazione non è un'autostradaL'Innovazione non è un'autostrada
L'Innovazione non è un'autostradaGiacomo Mason
 
Innovazionenoneunautostrada 090928122248 Phpapp01
Innovazionenoneunautostrada 090928122248 Phpapp01Innovazionenoneunautostrada 090928122248 Phpapp01
Innovazionenoneunautostrada 090928122248 Phpapp01Lucia
 
Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...
Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...
Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...Pietro Di Bello
 
Come non trovare il lavoro che non ci piace
Come non trovare il lavoro che non ci piaceCome non trovare il lavoro che non ci piace
Come non trovare il lavoro che non ci piaceFabio Fabbrucci
 
I quattro punti cardinali per un orientamento lean nell'impr... insomma.
I quattro punti cardinali per un orientamento lean nell'impr... insomma.I quattro punti cardinali per un orientamento lean nell'impr... insomma.
I quattro punti cardinali per un orientamento lean nell'impr... insomma.Jacopo Romei
 
Da zero a CoRehab - seminario scienze cognitive
Da zero a CoRehab - seminario scienze cognitive Da zero a CoRehab - seminario scienze cognitive
Da zero a CoRehab - seminario scienze cognitive CoRehab
 
Designers from Hell - Marco Pesani - Fabrizio Soldano
Designers from Hell - Marco Pesani - Fabrizio Soldano   Designers from Hell - Marco Pesani - Fabrizio Soldano
Designers from Hell - Marco Pesani - Fabrizio Soldano Toolbox Coworking
 
Studiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettere
Studiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettereStudiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettere
Studiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettereGabriele Benedetti
 
Time management - Luca Foresti
Time management - Luca ForestiTime management - Luca Foresti
Time management - Luca ForestiLuca Foresti
 
Come funziona il cervello di un programmatore quando impara e affronta nuovi ...
Come funziona il cervello di un programmatore quando impara e affronta nuovi ...Come funziona il cervello di un programmatore quando impara e affronta nuovi ...
Come funziona il cervello di un programmatore quando impara e affronta nuovi ...Pietro Roversi
 
Augusto Coppola: Come "pitchare" un investitore
Augusto Coppola: Come "pitchare" un investitoreAugusto Coppola: Come "pitchare" un investitore
Augusto Coppola: Come "pitchare" un investitorebrainstorminglounge
 

Semelhante a Managing debt remastered (20)

Designers from Hell / Freelance Day 2015
Designers from Hell / Freelance Day 2015Designers from Hell / Freelance Day 2015
Designers from Hell / Freelance Day 2015
 
Fare pipì controvento
Fare pipì controventoFare pipì controvento
Fare pipì controvento
 
Retrospective, StandUp Meeting e Daily Journal
Retrospective, StandUp Meeting e Daily JournalRetrospective, StandUp Meeting e Daily Journal
Retrospective, StandUp Meeting e Daily Journal
 
L'Innovazione non è un'autostrada
L'Innovazione non è un'autostradaL'Innovazione non è un'autostrada
L'Innovazione non è un'autostrada
 
Innovazionenoneunautostrada 090928122248 Phpapp01
Innovazionenoneunautostrada 090928122248 Phpapp01Innovazionenoneunautostrada 090928122248 Phpapp01
Innovazionenoneunautostrada 090928122248 Phpapp01
 
Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...
Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...
Breaking the ice with agile - cinque strade per rompere il ghiaccio e introdu...
 
Da zero al web, da protagonista
Da zero al web, da protagonistaDa zero al web, da protagonista
Da zero al web, da protagonista
 
Come non trovare il lavoro che non ci piace
Come non trovare il lavoro che non ci piaceCome non trovare il lavoro che non ci piace
Come non trovare il lavoro che non ci piace
 
I quattro punti cardinali per un orientamento lean nell'impr... insomma.
I quattro punti cardinali per un orientamento lean nell'impr... insomma.I quattro punti cardinali per un orientamento lean nell'impr... insomma.
I quattro punti cardinali per un orientamento lean nell'impr... insomma.
 
Da zero a CoRehab - seminario scienze cognitive
Da zero a CoRehab - seminario scienze cognitive Da zero a CoRehab - seminario scienze cognitive
Da zero a CoRehab - seminario scienze cognitive
 
The big bang theory
The big bang theoryThe big bang theory
The big bang theory
 
Designers from Hell - Marco Pesani - Fabrizio Soldano
Designers from Hell - Marco Pesani - Fabrizio Soldano   Designers from Hell - Marco Pesani - Fabrizio Soldano
Designers from Hell - Marco Pesani - Fabrizio Soldano
 
Design of experiment
Design of experiment Design of experiment
Design of experiment
 
April 19 team-building_-g_sadolfo
April 19  team-building_-g_sadolfoApril 19  team-building_-g_sadolfo
April 19 team-building_-g_sadolfo
 
Studiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettere
Studiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettereStudiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettere
Studiamo SEO con strumenti a pagamento... anche se non ce li possiamo permettere
 
Time management - Luca Foresti
Time management - Luca ForestiTime management - Luca Foresti
Time management - Luca Foresti
 
Come funziona il cervello di un programmatore quando impara e affronta nuovi ...
Come funziona il cervello di un programmatore quando impara e affronta nuovi ...Come funziona il cervello di un programmatore quando impara e affronta nuovi ...
Come funziona il cervello di un programmatore quando impara e affronta nuovi ...
 
Augusto Coppola: Come "pitchare" un investitore
Augusto Coppola: Come "pitchare" un investitoreAugusto Coppola: Come "pitchare" un investitore
Augusto Coppola: Come "pitchare" un investitore
 
Ascoltere la rete: la sentiment analysis
Ascoltere la rete: la sentiment analysisAscoltere la rete: la sentiment analysis
Ascoltere la rete: la sentiment analysis
 
Farepipi
FarepipiFarepipi
Farepipi
 

Mais de Alberto Brandolini

Mais de Alberto Brandolini (15)

L'illusione dell'ortogonalità
L'illusione dell'ortogonalitàL'illusione dell'ortogonalità
L'illusione dell'ortogonalità
 
Redesigning everything ITARC Stockholm 2021
Redesigning everything ITARC Stockholm 2021Redesigning everything ITARC Stockholm 2021
Redesigning everything ITARC Stockholm 2021
 
What lies beneath
What lies beneathWhat lies beneath
What lies beneath
 
Redesigning everything (avanscoperta meeutp edition)
Redesigning everything (avanscoperta meeutp edition)Redesigning everything (avanscoperta meeutp edition)
Redesigning everything (avanscoperta meeutp edition)
 
Extreme DDD modelling
Extreme DDD modellingExtreme DDD modelling
Extreme DDD modelling
 
The gordian knot
The gordian knotThe gordian knot
The gordian knot
 
Software design as a cooperative game with EventStorming
Software design as a cooperative game with EventStormingSoftware design as a cooperative game with EventStorming
Software design as a cooperative game with EventStorming
 
50.000 orange stickies later
50.000 orange stickies later50.000 orange stickies later
50.000 orange stickies later
 
The alignment
The alignmentThe alignment
The alignment
 
The precision blade
The precision bladeThe precision blade
The precision blade
 
It's not simple at all
It's not simple at allIt's not simple at all
It's not simple at all
 
Pissing against the wind
Pissing against the windPissing against the wind
Pissing against the wind
 
Rethinking enterprise software - Codemotion 2014
Rethinking enterprise software - Codemotion 2014Rethinking enterprise software - Codemotion 2014
Rethinking enterprise software - Codemotion 2014
 
Idea - post-it - test verdi.
Idea - post-it - test verdi.Idea - post-it - test verdi.
Idea - post-it - test verdi.
 
Model storming
Model stormingModel storming
Model storming
 

Managing debt remastered