Jacopo Romei: Abbattere i rischi di insuccesso con Extreme Programming - Presentation Transcript
Abbattere il rischio di insuccesso
con Extreme Programming
Jacopo Romei
Di cosa tratteremo?
Ovviamente: tecniche XP
●
Planning game
–
Pair programming
–
Continous integration
–
Test automatici - poco, altrimenti Gabriele
–
Lana cosa è venuto a fare?! ;)
Progetti reali
●
Calvizie
●
Salvarsi finché si è in tempo
Una metodologia serve ad organizzare il
●
lavoro degli esseri umani.
Una metodologia deve contribuire alla
●
felicità degli essere umani.
Momento aforisma
Se fai sempre quello che hai sempre fatto,
otterrai sempre quello che hai sempre
ottenuto.
Abramo Lincoln
XP in una frase
Insieme di pratiche empiriche per lo
●
sviluppo del software che ha come
obiettivo la soddisfazione del cliente.
Occhio!
●
empiriche, non astratte
–
soddisfazione del cliente, non il piacere di
–
programmare
XP non è una religione
Le pratiche XP sono
●
una forma di conoscenza
–
uno strumento
–
attenzione all'uso improprio
●
modulari
–
risonanti
–
limite di questo stesso talk
●
Nasce un nuovo progetto
Forse un solo sviluppatore
Continous integration
Il limbo del codice: dall'ideazione
●
all'integrazione
Programmando soli è il default
●
Continous integration & co.
Compari perfetti:
●
I test automatici
–
Source versioning (SVN)
–
Sviluppo adiabatico
●
DISCLAIMER: i veri nerd si tappino le orecchie!!!
●
Noia vs. creatività
Creatività vs. incertezza
●
Sviluppo adiabatico vs. creatività
●
Sviluppo adiabatico vs. incertezza
●
Noia vs. sviluppo adiabatico
●
Noia vs. serenità
●
XP e le altre metodologie agili puntano sulla
–
persona quindi puntano sulla serenità
Momento aforisma
Tutti pensano di cambiare il mondo.
Nessuno di cambiare se stesso.
Lev Tolstoj
Finto XP
Sviluppatori che praticano un cattivo XP
●
Nessuna metodologia funziona contro
●
pigrizia
–
incompetenza
–
scorrettezza
–
Cambiare sviluppatori
●
Il progetto cresce
Riesco a pagare un collaboratore
Tutti nella stessa barca
Ok, siamo in due. E ora?
●
Frà Rodolfo da Ceprano (alias Christian De
–
Sica) in “Vacanze in America”: “Chi se fa
l'affari sua, torna sano a casa sua!”
Condivisione di problemi e soluzioni: pair
–
programming
Pair programming
Critica tipica: perché pagare due persone
●
per fare una cosa sola?
Risposta: perché potrebbe convenire.
●
qualità significa indirettamente velocità
–
varianza ridotta
–
il solito empirismo sperimentale
–
ultimo ma non ultimo: morale alto
–
Il progetto prospera
Non si è mai troppi, basta pianificare.
Comunicare è complesso
Canali da gestire
Persone coinvolte
Il cliente serve a noi e noi a lui
Scadenze, scadenze, scadenze.
Manager struzzi, clienti struzzi
Il disordine esiste
●
Una metodologia
●
seria
non finge di non
–
saperlo
ne riduce l'effetto
–
efficacemente
Divide et impera
Caos nel codice: test automatici
●
Caos nei cervelli: pair programming
●
Caos nei processi: agile planning
●
posticipare le decisioni per ridurre lo scope
–
Planning game
●
Release planning
●
Iteration planning
●
Planning game
User stories (feature driven)
●
Assegnazione di un peso
●
Vantaggi
●
stima chi è esperto
–
promuove la discussione
–
riduce la varianza (come il pair
–
programming!)
divertimento, morale alto
–
Assegnazione di priorità
Valore economico
●
denaro fatto o denaro risparmiato
–
Costo
●
il costo varia col tempo: a volte meglio
–
aspettare, a volte meglio agire
Nuova conoscenza
●
del prodotto o del progetto
–
Rischio
●
scadenze, costi, funzionalità
–
Assegnazione di priorità
Assegnazione di priorità
Release planning
User stories
●
Velocity
●
nota
–
tipica
–
stimata
–
Deadline
●
Momento aforisma
Essere incerti è scomodo,
ma essere certi è ridicolo.
Proverbio cinese
Iteration planning
User stories
●
Scomposizione in task
●
Lunghezza dell'iterazione
●
Planning nel mondo vero
Budget fissati? Scadenze fissate?
●
Riduzione dello scope
–
Introduzione di buffer per l'incertezza
–
Multi-tasking e manager struzzi
Semplicemente inefficace
●
E' possibile dimostrarlo!
●
Multi-tasking e manager struzzi
2 task (per i tempi morti dell'uno e
●
dell'altro intercalati)
Corretta assegnazione di priorità
●
Momento aforisma
Le buone soluzioni sono
inutili tentativi di interferire
con le leggi scientifiche. La
loro origine è la pura vanità.
Il loro risultato il nulla.
Oscar Wilde
0 comments
Post a comment