SlideShare a Scribd company logo
1 of 194
Download to read offline
Agile Project Management 
Metodologie nuove per gestire progetti complessi 
Sunday, February 5, 12
Wallenstein VS Giants 
Sunday, February 5, 12
Wallenstein 
Ci troviamo nel 1618, alla vigilia 
della Guerra dei Trent’Anni, i 
cinque più potenti mercenari 
dell’epoca si sfidano nella conquista 
dell’europa centrale. 
Vince chi totalizza piu’ punti 
•1 punto viene assegnato per ogni territorio 
in proprio possesso. 
•1 punto viene assegnato per ogni edificio 
costruito sui territori posseduti. 
•1 punto viene assegnato al giocatore con più 
Mercati in ognuna delle cinque regioni. 
•2 punti vengono assegnati al giocatore con più 
Cattedrali in ognuna delle cinque regioni. 
•3 punti vengono assegnati al giocatore con più 
Castelli in ognuna delle cinque regioni 
Sunday, February 5, 12
Wallenstein – durante il gioco 
Sunday, February 5, 12
Wallenstein - meccanica 
Tutti i giocatori hanno, nel turno (tranne in inverno), queste dieci azioni da compiere, una 
sola per ogni territorio posseduto: 
1. Costruire un Mercato 
2. Costruire una Cattedrale 
3. Costruire un Castello 
4. Primo Movimento (spostamento o attacco) 
5. Secondo Movimento (spostamento o attacco) 
6. Raccogliere le tasse* 
7. Raccogliere il grano * 
8. Assoldare cinque armate 
9. Assoldare tre armate 
10. Assoldare un armata e fare uno spostamento 
*Il raccogliere tasse e grano causa lo scontento della popolazione che potrebbe rivoltarsi 
Tutti i giocatori sceglieranno, contemporaneamente dove e quali azioni esercitare. 
Successivamente verrà stabilito l’ordine di gioco, verrà deciso mischiando e posando sul 
tavolo di gioco le carte giocato. 
Sunday, February 5, 12
Giants 
Ci troviamo sull’Isola di Pasqua tra ul 
V e il XVII secolo. La civita’ 
RapaNui costruisce degli incredibili 
monumenti funerari, gli Ahus (ahoo). 
Questi monoliti sono scolpiti da una 
sola pietra 
vulcanica ed eretti sulle sponde 
dell’isola. 
Il gioco consiste nel costruire i 
monumenti funerari in modo 
collaborativo. Chi mette a 
disposizione piu’ risorse e/o 
manodopera e/o erige piu’ Ahus vince. 
Sunday, February 5, 12
Giants - meccanica 
Ogni giocatore puo’ compiere piu’ 
azioni per turno: 
• Piazzare un lavoratore, uno stregone o 
un capo 
• Fare una stregoneria 
• Erigere un Ahus 
I giocatori possono usare i lavoratori 
e i pali di legno piazzati dali altri 
giocatori per trasportare gli Ahus 
vicino alla sponda dell’Isola. Ogni 
volta che viene usato il lavoratore di 
un altro giocatore questo guadagna 
dei punti 
Sunday, February 5, 12
E’ un processo Agile? 
Requisito 1 
Requisito 2 
Requisito 3 
Requisito 4 
Analisi Design Sviluppo Test Rilascio 
Sunday, February 5, 12
E’ un processo Agile? 
Requisito 1 
Requisito 2 
Requisito 3 
Requisito 4 
Analisi Design Sviluppo Test Rilascio 
Sviluppo Test 
Sviluppo Test 
Iterazione 2 
Iterazione n 
Sunday, February 5, 12
E’ un processo Agile? 
Requisito 1 
Requisito 2 
Requisito 3 
Requisito 4 
Analisi Design Sviluppo Test Rilascio 
Design Sviluppo Test 
Design Sviluppo Test 
Iterazione 2 
Iterazione n 
Sunday, February 5, 12
Analisi Design Test 
Sviluppo Refactoring Rilascio 
Analisi Design Sviluppo Refactoring 
Rilascio 
Analisi Design Test 
Sviluppo Refactoring 
Rilascio 
Analisi Design Sviluppo Refactoring 
Rilascio 
E’ un processo Agile? 
Requisito 1 
Requisito 2 
Requisito 3 
Requisito 4 
Test 
Test 
Sunday, February 5, 12
Benvenuti al CORSO SU AGILE! 
Sunday, February 5, 12
Chi sei? 
Cosa fai? 
Cosa farai dopo il corso? 
Cosa ti piacerebbe fare tra cinque anni? 
Cosa ti aspetti dal corso? 
Sunday, February 5, 12
Temi 
I Introduzione generale: framework e processi 
per il Project Management. 
Lean e Agile: valori e principi. Gemba. 
Definition of Done. Time Boxing. Kaizen. Kanban. 
Scrum: Lean, Agile applicati. 
Le tre gambe di Scrum. Overview, Ruoli e Workflow. 
XP: Ruoli, Attivita’ e Pratiche. 
Stimare Costi e Tempi: User Stories, Story Point e 
Poker Game. 
Risk Management e Communication Management 
Da PMP ad Agile: un modo pratico per introdurre 
Agile nel team. 
Sunday, February 5, 12
Approfondimenti 
Agile and Scrum Anti-Patterns: cosa si pensa 
comunemente di Agile e Scrum che in realta’ non e’ 
vero 
Self organizing teams: esempi reali di aziende auto 
organizzate 
Pomodoro: tecnica di gestione del tempo e dei task 
day by day 
Gemba, Kaizen e Kanban: alcuni metodi introdotto in 
Toyota e riadattato a diverse realta’ industriali e di 
servizi 
Forme contrattuali agili: se vogliamo essere agili 
dobbiamo esserlo anche nei contratti 
Mindmaps 
Sunday, February 5, 12
Una sorpresa... 
Sunday, February 5, 12
Obiettivi 
1. Diventare Agile Project Manager 
2. Conoscere i 4 Valori e i 12 Principi di Agile 
3. Definire e riconoscere le 10 ragioni di spreco 
secondo Lean 
4. Conoscere e fare coaching di 
Uno Scrum Workflow 
Degli Scrum Roles 
Delle fasi di stima e pianificazione Agile 
5. Creare e mantenere un Product Backlog 
6. Spiegare le ragioni di perche’ adottare Agile 
7. Analizzare e spiegare perche’ un’azienda non 
riesce ad applicare Agile 
Sunday, February 5, 12
Altri temi? Vostre proposte 
.... 
.... 
.... 
.... 
.... 
Sunday, February 5, 12
Introduzione 
Sunday, February 5, 12
Approcci di PM - Predittivo 
Alcuni esempi 
Waterfall 
Spirale 
Unified Process (RUP) 
PMBoK 
Sunday, February 5, 12
Predittivo – Si’/No 
Pro 
• Logico e sensato 
• Pianifica prima di fare 
• Mantiene una 
documentazione scritta 
• Segue un piano 
• Mantiene le attivita’ 
organizzate 
Contro 
• Sono coinvolte le 
persone! 
– Cambiano idea 
– Difficile esprimere e 
comunicare l’intangibile e i 
bisogni 
– Empatia 
• Prodotto solo alla fine 
Sunday, February 5, 12
Approcci di PM - Adattivo 
Alcuni esempi 
XP 
Scrum 
FDD 
TDD 
Lean 
Predittivi 
Sunday, February 5, 12
Adattivo – Si’/No 
Pro 
• Segue le persone 
• Apporta valore 
• Aiuta la collaborazione 
• Riduce le barriere 
Contro 
• Difficile da introdurre 
• Senza uno sponsor non 
decolla 
• Difficile coinvolgere il 
cliente 
Sunday, February 5, 12
Wallenstein VS Giants 
Predittivo Adattivo 
Sunday, February 5, 12
Quale scegliere? 
Negli ultimi 30 
anni si sono 
alternati approcci 
differenti 
Waterfall 
RUP 
XP 
Kanban 
Agile 
Tutti hanno avuto successi e insuccessi 
Sunday, February 5, 12
Osservare 
Assimilare 
Riealaborare 
Migliorare Continuamente 
Sunday, February 5, 12
3 lavori predittivi 
3 lavori adattivi 
Sunday, February 5, 12
Problemi nei progetti 
• Mancanza della gestione del cambiamento dei requisiti 
• Cattiva comunicazione 
• Inadeguatezza del Team 
• Requisiti non ben definiti 
• Stime non accurate 
• Mancanza di un piano di gestione dei Rischi 
• Cattiva definizione di cosa significa “Finito” 
• Non dedicare il giusto tempo alla gestione del progetto 
• Mancanza della conoscenza di come si gestisce un 
progetto 
• Essere sempre troppo ottimisti! 
Sunday, February 5, 12
Ottimismo! 
Sunday, February 5, 12
COCOMO II 
Fattori che influenzano 
la produttivita’ nel 
software su prj da 100 
KSLOC. 
Migliorare i sw tools 
tipicamente migliora del 
50% la produttivita’. 
Migliorare il team il 
353%! 
SOFTWARE 
SEPTEMBER/OCTOBER 2000 (Vol. 17, No. 5) pp. 14-17 
0740-7459/00/$26.00 © 2000 IEEE 
Published by the IEEE Computer Society 
Safe and Simple Software Cost Analysis 
Sunday, February 5, 12
Principali fattori di Successo 
Team + Sponsorship + Cliente 
Sunday, February 5, 12
Definizione di Successo 
Sunday, February 5, 12
Successo 
Il successo in 
Agile e’ 
misurato sul 
valore generato 
dal progetto 
Il valore dipende dal contesto del progetto ed e’ definito con il Cliente 
Sunday, February 5, 12
Cercate produttuvita’? 
Agile non fa per voi! 
Agile e’ per: 
•Apportare facilmente 
cambiamenti 
•Creare velocemente valore 
•Aumentare la transparenza 
Sunday, February 5, 12
Agile non e’ 
• Poca o nessuna documentazione 
• Requisiti di massima 
• Nessuna pianificazione 
• Nessun controllo di progetto 
• Fare e poi pensare 
• Un waterfall interattivo 
Sunday, February 5, 12
Agile e’ 
• Uno specchio della realta’ 
• Un processo guidato dal valore 
• Un continuo adattamento agli 
input esterni (requisiti, 
aspettative, ambito) con lo scopo 
di massimizzare il valore globale 
dell’output (prodotto/servizio/ 
qualita’/soddisfazione) 
Sunday, February 5, 12
Lean e Agile 
Sunday, February 5, 12
Agile Manifesto 
www.agilemanifesto.org 
Individuals and interactions 
over processes and tools 
Working software 
over comprehensive documentation 
Customer collaboration 
over contract negotiation 
Responding to change 
over following a plan 
Sunday, February 5, 12
Tools e Processi 
Quale tool usiamo per tracciare 
lo stato del progetto? 
Che processo adottiamo per 
rilasciare una versione? 
Come tracciamo i bugs? 
Come tracciamo le ore su un progetto? 
Come misuriamo le performance delle persone sul progetto? 
Come formalizziamo con il cliente la chiusura del progetto? 
Tutte domande che vi siete fatti almeno una volta… 
… che soluzioni avete trovato e adottato? 
Sunday, February 5, 12
Teoria della comunicazione 
CC Einar Faanes 
funzione referenziale (contesto) 
funzione emotiva (mittente) 
funzione conativa (destinatario) 
funzione fàtica (contatto) 
funzione poetica (messaggio) 
funzione metalinguistica (codice) 
Feedback 
Sunday, February 5, 12
Teoria dell’ottimizzazione 
Ottimizzazione molti-obiettivi 
conflittuali 
Diverse alternative, diversi decisori, 
diversi criteri 
Non esiste l’ottimo assoluto ma un 
compromesso 
L’ottimizzazione locale dei singoli 
criteri non porta 
Sunday, February 5, 12
Esempio di analisi multi-criteri 
alternatives criteria 
Sunday, February 5, 12
Sunday, February 5, 12
Individui e Interazioni 
Comunicare, comunicare, comunicare! 
Tanti documenti, anche ben scritti e 
formalizzati non servono se non sono 
letti e compresi 
Presentazioni senza coinvolgere i 
partecipanti non sono efficaci se non si 
ha la sicurezza che il messaggio sia compreso 
Team building 
Pensare “al proprio orticello” non aiuta il progetto 
Molto spesso lavori complessi hanno bisogno di piu’ occhi 
Lavorare in un ambiente armonioso aiuta il progetto 
Ottimizzare il globale e non il singolo 
Misurare il singolo spinge a non collaborare 
Non e’ detto che se tutti sono ottimali il progetto e’ ottimale 
Sunday, February 5, 12
Interazioni VS Tools? 
VS 
NO! 
I tool sono importanti se rispecchiano il modo di 
lavorare del team 
Devono ridurre quasi a zero il tempo e il costo 
delle operazioni ripetitive 
Agevolare la comunicazione remota 
Rendere trasparente il progetto 
CONSIGLIO: 
prima capire le persone e come lavorano poi scegliere i tools di supporto. 
Sunday, February 5, 12
esercizio 
camminiamo 
Sunday, February 5, 12
Agile Manifesto 
www.agilemanifesto.org 
Individuals and interactions 
over processes and tools 
Working software 
over comprehensive documentation 
Customer collaboration 
over contract negotiation 
Responding to change 
over following a plan 
Sunday, February 5, 12
Documentazione? 
La documentazione e’ importante, molto 
importante 
E’ importante se e’ vera 
Il progetto evolve la documentazione non sempre! 
E’ un costo molto alto tenere aggiornata la 
documentazione 
In un progetto software qual’e’ il documento che 
rispecchia meglio la realta’? 
Sunday, February 5, 12
Software! 
Software funzionante? 
Si/No/Forse/A volte si/Solo in questo caso no! 
Sunday, February 5, 12
Metodi di Testing 
Unit Testing 
Integration Testing 
User Testing 
Interaction Testing 
TDD  Test driver development 
Sunday, February 5, 12
Contratto 
Oggetto del contratto 
Elenco Specifiche: A, B, C 
Dettaglio Specifiche 
Assunzioni e Limiti 
Tempi: 3 mo 
Costi: 100.000$ 
Modalita’ di approvazione del prodotto/servizio 
Pagamento 
Diritti di recesso 
Penali 
Firma e 
approvazione 
16/06/2011 
Sunday, February 5, 12
… e dopo un mese? 
Oggetto del contratto: OK 
Elenco Specifiche: A, B, C, D, E 
Dettaglio Specifiche: in realta’ C e’ D+E 
Assunzioni e Limiti 
Tempi: 4 mo 
Costi: 120.000$ 
Modalita’ di approvazione del prodotto/servizio 
Pagamento 
Diritti di recesso 
Penali 
e ora chi paga? 
Firma e 
approvazione 
16/06/2011 
Sunday, February 5, 12
esercizio 
L’azienda Trivellazioni Felici S.p.A. deve aggiornare il 
sistema di monitoraggio delle trivellazioni 
petrolifere secondo la norma che entrera’ in vigore 
fra un mese da oggi 
Il signor White e’ l’incaricato di Trivellazioni Felici per 
fornirvi tutte le informazioni necessarie, 
l’importante e’ che il nuovo sistema sia operativo in 
tutte le 100 sedi entro un mese 
Non ci sono limiti di budget 
Come procedete? 
• 10’ per discussione 
• 5’ per gruppo di incontro con il signor White 
Sunday, February 5, 12
Collaborazione con il cliente 
Domande di difficile risposta 
Che bisogni ha il cliente? 
Come lavora il cliente? 
Cosa vede il cliente? 
Come comunicare con lui? 
Quali aspettative ha? 
1. Lavorare a stretto contatto con il cliente 
2. Respirare la stessa “aria” 
3. Avere le stesse aspettative 
Fa superare piu’ facilmente la conflittualita’ intrinseca dei contratti 
Sunday, February 5, 12
Esempi di contratti “Agili” 
•A forchetta minima e massima 
(PERT aiuta) 
•A bande: si concorda il budget, 
si fissa di volta in 
volta lo step a 
prezzo fisso 
•Time and material 
classico 
Sunday, February 5, 12
Piano 
Gantt? 
PERT? 
Milestones? 
Project Management Plan? 
Analisi dei Requisiti? 
Quante volte questi piani sono stravolti 
il giorno dopo che sono stati scritti? 
Sunday, February 5, 12
Valore? 
Cos’e’ per il Cliente il valore? 
Un servizio/un prodotto che apporta valore al 
proprio business 
Aumenta la competitivita’ 
Riduce i costi 
Aumenta i ricavi 
Aumenta la penetrazione di mercato 
Alza le barriere di ingresso ai competitor 
Crea nuovi mercati 
Ecc… 
Questi valori sono scolpiti nella pietra o variano nel tempo? 
Sunday, February 5, 12
Progetti falliti* ma di valore 
Progetto falliti (fuori budget, scope o time) 
hanno portato valore in azienda. Ecco alcuni 
esempi: 
Post-it 
Facebook 
GMail 
* nella accezzione di Scope-Cost-Schedule 
Sunday, February 5, 12
Teoria del controllo 
Misurare l’output per calibrare gli input 
 
Verificare il software funzionante per validare i 
requisiti implementati e pianificati 
Sunday, February 5, 12
Quindi? Piano o Valore? 
VS 
•Una pianificazione e’ fondamentale 
•Ma la pianificazione deve poter variare senza 
impattare sul progetto 
•Rispondere ai cambiamenti permette di tenere sotto 
controllo il vero progetto: 
•Quello che apporta valore 
•Soddisfa le aspettative 
Agile e’ pianificazione con un controllore retroattivo 
Sunday, February 5, 12
Esercizio 
www.agilemanifesto.org 
I…and i… over p…and t.. 
W… s… over d… 
C… c… over c… 
R.. To c… over p… 
Sunday, February 5, 12
Scrum 
Sunday, February 5, 12
Cosa non e’ scrum 
Scrum != Ad Hoc 
Scrum non e’ una scusa per far meno e costare meno: 
- “Non abbiamo bisogno di analisi dei requisiti” 
- “Non abbiamo bisogno di stime” 
- “Siamo agili!” 
FALSO! 
Sunday, February 5, 12
Una formula per Scrum? 
Scrum = timeboxed iteration + backlogs + meeting giornalieri 
NON BASTA SOLO QUESTO! 
Implemetare Agile?  NO 
Implementare Scrum ed essere Agili  SI’ 
Sunday, February 5, 12
Ambito 
Lean 
• 5 Principici 
• 10 Cause di Spreco 
Agile 
• 4 Valori 
• 12 Principi 
Aspettative 
Team 
Necessita e Bisogni 
Cliente 
Valore 
Sunday, February 5, 12
Storia 
jeffsutherland.com 
Jeff Sutherland introdusse nel 1995 l’idea che 
i team si muovessero sull’orlo del caos e si 
auto-controllassero come succede in natura 
Ken presento’ con Jeff al OOPSLA95 il primo 
paper su SCRUM 
L’ultima edizione e’ del gennaio 2011 
http://jeffsutherland.com/ScrumPapers.pdf 
Gli autori affermano che: 
“Scrum non e’ una metodologia o un 
processo formale ma un algoritmo di 
compressione delle migliori abitudini in 
ambito dello sviluppo del software osservate 
in tutto il mondo negli ultimi 50 anni” 
kenschwaber.wordpress.com 
Sunday, February 5, 12
Sunday, February 5, 12
Most common methodologies 
Dic 2008 
Sunday, February 5, 12
2008 
Sunday, February 5, 12
Obiettivi di Scrum 
1. Energia 
2. Concentrazione sugli obiettivi 
3. Chiarezza 
4. Transparenza 
Auto organizzarsi! INSIEME! 
Sunday, February 5, 12
Aiuta a 
•Aumentare la velocita’ di sviluppo 
•Allineare il progetto con le esigenze 
del business 
•Creare valore in azienda 
•Comunicare in modo costante e trasparente 
a tutti i livelli aziendali 
•Migliorare l’ambiente di lavoro delle persone 
Sunday, February 5, 12
Le tre gambe di Scrum 
Trasparenza 
Ispezione 
Adattamento 
Sunday, February 5, 12
Dove si inserisce Scrum 
Sunday, February 5, 12
Sunday, February 5, 12
Scrum Roles 
Sunday, February 5, 12
Product Owner 
Cosa fa 
 Massimizza il valore di 
ogni Sprint 
 Decide quali sono gli item 
piu’ importanti di ogni 
Sprint 
 Puo’ cambiare le priorita’ 
di volta in volta 
 Raffina i backlog 
 Prende le decisioni che 
impattano sul prodotto 
Cosa non dovrebbe fare 
 Il project manager 
 Sviluppare 
 Decidere tecnologie e 
processi 
Sunday, February 5, 12
Team (pigs) 
7 persone ± 2 
Cross-funzionale: non solo sviluppatori ma anche tester, 
interaction design, content managers e tutte le figure 
professionali necessarie per sviluppare un prodotto di 
valore 
Preferibilmente co-located: riduce i tempi di comunicazione 
e migliora i rapporti del team 
Full-time sul progetto: le “abitudini” di Scrum prevedono 
una dedizione al progetto giorno per giorno e un ritmo 
sostenibile difficilmente da parte di membri del team 
“multi-tasking” 
FOCUS! 
Sunday, February 5, 12
Team (pigs) 
Cosa fa 
 Sviluppa il prodotto 
indicato dal product owner 
 Da idee al Product Owner 
su come migliorare il 
prodotto 
 Si auto-organizza 
all’interno dello sprint 
 Tiene traccia degli item di 
backlog completati 
 Stima gg per gg il backlog 
Cosa non dovrebbe fare 
 Implementare item che 
non sono nell sprint 
backlog 
 Aggiungere item allo sprint 
backlog 
 Cambia spesso i suoi 
membri 
Sunday, February 5, 12
Stakeholders (chickens) 
Sono tutti gli appartenenti all’organizzazione che 
Sunday, February 5, 12
Le persone del team 
belbin.com 
“Plant”: creativa e brava a risolvere i problemi in modi non convenzionali. Uno 
per team. 
Monitor Evaluator: il logico, prende decisioni imparziali e pesa in modo 
razionale le opzioni del team. 
Co-ordinators: aiuta a mantenere il focus del team, fa emerge i membri del 
team e delega in modo appropriato. 
Resource Investigators: migliora i processi e porta la voce del team fuori. 
Implementers: il motore che pianifica strategie efficaci e le porta a 
compimento. 
Completer Finishers: intervengo alla fine per completare il task rimuovendo 
errori e ottimizzando la qualita’. 
Teamworkers: sono il collante del team, si identificano con il team e aiutano 
nel lavoro di squadra. 
Shapers: il leader, fa in modo che il team non perda focus e spinta. 
“Specialist”: ha una conoscenza molto specifica nella key area del progetto. 
emerged. 
Sunday, February 5, 12
Scrum Master 
•Una persona con backgroud differenti, es: 
Engineering, Testing, Quality Control, 
Product Management, Project Management 
•Energica e umile 
•Dedicata full-time su grossi progetti 
•In Team piccoli puo’ essere un membro del Team 
•ATTENZIONE PM o Team Leaders che diventate 
Scrum Master: dovete cambiare molto il vostro 
approccio, e’ un lavoro completamente diverso! 
Favorire l’auto-organizzazione! 
Sunday, February 5, 12
Scrum Master 
Cosa fa 
 Tutor del team 
 Aiuta Team e PO ad avere 
successo nel progetto 
 Protegge il Team dai 
fattori esteri 
 Facilita le relazioni 
 Toglie gli impedimenti 
 E’ al servizio del Team 
 Aiuta a capire il flow-value 
Cosa non dovrebbe fare 
 Il project manager 
 Il team leader 
 Il product owner 
 Assegna Task 
 Dice alle persone cosa 
fare 
Sunday, February 5, 12
Scrum roles – note importanti 
Scrum Master e Productr Owner NON possono essere lo stesso 
individuo 
E il Project Manager? NON ESISTE! 
I ruoli di PM sono divisi tra i tre ruoli di Scrum: 
Scrum Master 
Product Owner 
Team 
Un cambio di approccio e’ fondamentale! 
Da assegnare attivita’, verificare lo stato a 
 Aiutare, supportare, fare coaching e mentoring, rimuovere 
gli impedimenti 
 Essere al servizio del team! 
Sunday, February 5, 12
Scrum Artifacts 
Sunday, February 5, 12
Sunday, February 5, 12
Product Backlog 
Lista di features con priorita’ 
Roadmap del prodotto 
Responsabilita’ del Product Owner 
Tutto quello che e’ nel Product backlog e’ il prodotto 
Quello fuori NON ESISTE! 
Il product backlog evolve nel tempo: 
Priorita’ 
Descrizione e dettagli (raffinamento del Product 
Backlog) 
Stime 
NE ESISTE UNO SOLO 
Sunday, February 5, 12
Esempio – Product backlog 
Sunday, February 5, 12
Cosa include 
Funzionalita’/requisiti cliente 
Miglioramenti tecnici/tecnologici 
Esplorazioni su nuovi aspetti del 
prodotto/del software 
Bugs conosciuti 
Sunday, February 5, 12
Come viene descritto 
Scrum non definisce un metodo 
Le user stories sono uno dei metodi piu’ 
usati 
Si possono usare anche Work Breakdown 
Structure (WBS) 
A volte viene creato un Release Backlog come 
sottoinsieme del BP per definire l’ambito 
della release del prodotto 
Sunday, February 5, 12
User Story 
"As a <role>, I want <goal/desire> so that <benefit>" 
Sunday, February 5, 12
Sunday, February 5, 12
User Story ID Front Back Busin 
alarm.searc 
h 
"As a User I want to 
search alarms by 
name, type, 
application, date, 
range of dates and 
free text search so 
that I can analyze 
problems on the 
system" 
filters are 
automatically 
added looking at 
column names and 
can be combined in 
OR and AND (like 
workflow in 
console) 
ess 
Value 
Priori 
ty 
Estim 
ated 
Story 
Point 
TBD VH 5 
Sunday, February 5, 12
Sprint Backlog 
L’insieme di task da completare in uno sprint 
Uno o piu’ task sono relativi a un item del Product 
Backlog 
Ogni task ha una stima in ore 
Ogni task e’ assegnato a una persona che lo 
richiede in modo volontario 
Sunday, February 5, 12
Product Backlog a muro 
Sunday, February 5, 12
Sunday, February 5, 12
Definition of Done 
Definizione di completato 
Tipicamente e’ una regola di backgroud di tutto il progetto 
Es: una feature si considera completata se: 
Codificata 
Gli unit test sono tutti passed 
Il codice e’ commentato 
La funzionalita’ e’ utilizzabile dall’utente e soddisfa i 
requisiti di usabilita’ definiti nella sua user story 
E’ integrata nel setup/ambiente di deploy 
E’ taggata sotto repository 
Ha la documentazione utente 
Sunday, February 5, 12
PSPI 
Potentially Shippable Product Increment 
Ogni Sprint idealmente finisce con un prodotto 
potenzialmente rilasciabile 
MAI lasciare le cose a meta’: meglio chiudere una 
cosa in meno e spostarla nel prossimo sprint che 
lasciare le cose aperte a fine sprint 
Chiudere sempre secondo la Definition of Done concordata! 
Sunday, February 5, 12
Motivazioni del PSPI 
•Permette di raccogliere i feedback 
velocemente 
•Riduce i rischi (bugs non alla fine) 
•Aiuta il cliente finale a prendere confidenza 
del prodotto 
•Migliora l’apprendimento 
Sunday, February 5, 12
Un momento di analisi del Product 
Sunday, February 5, 12
Architettura emergente 
Sunday, February 5, 12
Esercizio 
Creare il product backlog per la 
presentazione di un’idea di 
applicazione iPad che favorisca la 
diffusione di Agile e di Scrum 
Sunday, February 5, 12
Scrum Workflow 
Sunday, February 5, 12
Overview 
Sunday, February 5, 12
Sprint Planning – Part 1 
 Durata: 2-4 ore 
 Partecipanti: Product Owner, Scrum Master, Team 
 Strumenti: Product Backlog a muro, Definition of 
Done 
 Obiettivo: estrazione degli item per lo sprint 
Sunday, February 5, 12
Sprint Planning – Part 2 
Durata: 2-4 ore 
Partecipanti: Scrum Master, Team 
Strumenti: Sprint Backlog a muro 
Obiettivo: definizione e stima dei task per lo Sprint 
Backlog 
Sunday, February 5, 12
Sunday, February 5, 12
Running the Sprint 
 Durata: 1-6 settimane (2 consigliate) 
 Partecipanti: Product Owner, Scrum Master, Team 
 Strumenti: Product & Sprint Backlog a muro, 
Definition of Done 
 Attivita’: 
 Sviluppo 
 Rifinitura del Product Backlog (5-10%) 
 Ri-Stima degli item del backlog 
 Ri-Prioritizzazione del product backlog 
 Analisi di dettaglio 
Sunday, February 5, 12
Daily Meeting 
 Durata: 15’, ogni gg, alla stessa ora, nello stesso 
posto (possibilmente in piedi davanti allo Sprint 
Backlog) 
 Partecipanti: Scrum Master, Team 
 Strumenti: Sprint Backlog a muro 
 Attivita’: 
 Ogni team member dice: cosa ha fatto, cosa fara’, 
che impedimenti ha 
 Si fissano le riunioni 
Sunday, February 5, 12
Sprint Review 
 Durata: 2-4 ore 
 Partecipanti: Product Owner, Scrum Master, Team 
 Strumenti: PSPI 
 Obiettivo: validare con il Product Owner la chiusura 
dello Sprint 
Sunday, February 5, 12
Sprint Retrospective 
 Durata: 1.5-3 ore 
 Partecipanti: Scrum Master, Team 
 Strumenti: Sprint Backlog, PSPI 
 Obiettivo: evidenziare le cose positive dello sprint e 
ricercare i motivi degli errori, metabolizzare il processo 
Sunday, February 5, 12
Previsioni e Stime 
1.Una previsione metereologica e’ valida 
1-2 giorni 
2.Al terzo giorno e’ gia’ molto incerta 
3.Oltre il terzo e’ una speculazione 
Sunday, February 5, 12
Scrum Planning 
Sunday, February 5, 12
Pianificare in Agile??? 
Si pianifica di piu’ e piu’ spesso! 
Me tenere sotto controllo il flusso del 
valore (Value Flow) la pianificazione e 
la stima sono fondamentali 
Riflettere sulle sitme a posteriori aiuta a 
stimare meglio la volta dopo 
Sunday, February 5, 12
Poker game con Fibonacci 
Sunday, February 5, 12
Stime 
• Il Product Owner e’ responsabile per assegnare il 
business value di ogni item del BP 
• Il Team e’ responsabile per stimare l’effort di 
sviluppo di ogni item del PB 
• Il Team e il Product Owner fanno un’analisi di 
rischio 
• Lo Scrum Master aiuta in questa fase 
• Scrum non definisce tecniche di stima 
• Story Points e Ideal Time 
• Range Estimation 
• PERT 
Sunday, February 5, 12
Stime – Poker Game 
• Ogni membro del team si crea delle carte con la 
sequenza di Fibonacci: 1, 2, 3, 5, 8, 13, 21, BIG 
• Le user stories sono visibili a muro o sul pavimento o su 
un tavolo 
• Lo scrum master sceglie una User Story rappresentativa 
della quale si conoscono abbastanza dettagli e che sia 
piccola 
• Il team concorda che quella vale 1 
• Lo Scrum Master scegli un’altra User Story 
• Ogni membro del team di nascosto sceglie una carta 
• Quanto tutti hanno scelto scoprono la carta 
• La maggioranza vince, si discute sulle differenze se ci 
sono disaccordi e si rivota 
• Si itera il processo fino a quando non sono finite le User 
Stories selezionate 
Sunday, February 5, 12
Stime - PERT 
ID Days --> optim 
um 
likely worst pert var 
1 Global 
Analysis 
1.1 Analysi 
s 
1,00 1,00 1,00 1,00 0,00 
1.2 Design 2,00 2,00 2,00 2,00 0,00 
2 Codin 
g 
2.1 Desktop 
container 
2.1.1 Window Manager 1,00 2,00 2,00 1,83 0,17 
2.1.2 Background 0,20 0,50 1,00 0,53 0,13 
2.1.3 Screen resize 0,20 0,20 0,50 0,25 0,05 
2.1.4 HTML Integration 0,10 0,20 0,50 0,23 0,07 
2.1.5 Unit Testing 0,50 1,00 1,00 0,92 0,08 
Sunday, February 5, 12
Re-stimare 
Sunday, February 5, 12
Risk analysis 
Tenere un registro dei rischi del progetto 
Stimare un peso dell’impatto 
Stimare una probabilita’ che il rischio possa 
manifestarsi 
Definire dei piani di contigency 
Attribuire dei responsabili ad ogni rischio 
Si possono usare analisi di Montecarlo (vedi Riskology 
- http://www.systemsguild.com/riskology) 
 Tutte le attivita’ di risk vanno nello Sprint 
Backlog 
Sunday, February 5, 12
Esempio di Risk register 
Risk 
Category Risk Name Risk 
Number 
Probability 
(1-3) 
Impact 
(1-3) Risk Score Mitigation Contingency Action By Action When 
Guests 
The guests 
find the 
party boring 
1.1. 2 2 4 
Invite crazy 
friends, 
provide 
sufficient 
liquor 
Bring out 
the karaoke 
Mack within 2hrs 
Guests 
Drunken 
brawl 
1.2. 1 3 3 
Don’t invite 
crazy 
friends, 
don't provide 
too much 
liquor 
Bring in the 
guards 
Jerry Now 
*da wikipedia 
Sunday, February 5, 12
Priorita’! 
3 variabili 
Costo Valore Rischio 
Priorita’ 
Product Owner 
Priorita’ massima: minor costo, maggior valore (rischio minimo) 
Sunday, February 5, 12
Esercizio 
Fare la stima del vostro product backlog 
Sunday, February 5, 12
Scrum Reporting 
Sunday, February 5, 12
Report in Scrum 
Product Burndown Chart 
Sprint Burndown Chart 
Test reports 
Architecture diagram status 
Sunday, February 5, 12
Trasparenza a diversi livelli 
I Chicken NON devono vedere lo Sprint 
Burndowchart 
La trasparenza e’ sulle features completate 
NON su come il team si auto organizza 
Lo sprint backlog e’ per il team, meglio su 
carta! 
Sunday, February 5, 12
Velocity = 43 points in 10 days 
Sunday, February 5, 12
Velocity 
Sunday, February 5, 12
Alcuni scrum anti-patterns 
•Ottimizzazione prematura del processo 
Scrum 
•Accumulare lavoro non fatto e continuare a 
farne di nuovo 
•Lavorare come singoli paladini e non in 
Team 
•Piu’ di un Product Owner 
•Nessun Stakeholder 
•“Copiate e migliorate quello che c’era prima” 
•Nuove storie sono aggiunte allo Sprint 
backlog durante lo sprint (con la scusa 
Sunday, February 5, 12
12 Principi di Agile 
http://agilemanifesto.org/iso/it/principles.html 
Sunday, February 5, 12
“La nostra massima 
priorità è soddisfare 
il cliente 
rilasciando software 
di valore, fin da 
subito 
e in maniera 
continua.” 
Unit Tesing + 
Continuos Integration 
Jenkins-CI 
Sunday, February 5, 12
Esercizio 
Sunday, February 5, 12
“Accogliamo i 
cambiamenti nei requisiti, 
anche a stadi avanzati 
dello sviluppo. 
I processi agili sfruttano 
il cambiamento 
a favore del vantaggio 
competitivo del cliente.” 
Prendere le decisioni 
architetturali il piu’ 
tardi possibile per 
poterle cambiare 
quando serve. 
Prendere le decisioni 
di valore. 
Semplicita’!!!! 
Sunday, February 5, 12
“Consegnamo 
frequentemente software 
funzionante, 
con cadenza variabile 
da un paio di settimane 
a un paio di mesi, 
preferendo i periodi 
brevi.” 
Ritmo e buone 
abitudini 
Sunday, February 5, 12
“Committenti e 
sviluppatori devono 
lavorare insieme 
quotidianamente per 
tutta la durata del 
progetto.” 
Stesso ufficio 
openspace 
oppure 
Video conferenze 
Sunday, February 5, 12
“Fondiamo i progetti su 
individui motivati. 
Diamo loro l'ambiente e 
il supporto di cui hanno 
bisogno 
e confidiamo nella loro 
capacità di portare il 
lavoro a termine.” 
No incentivi singoli 
Incentivi sul team 
Trasparenza 
Comunicazione 
Autonomia 
Fiducia 
Sunday, February 5, 12
“Una conversazione 
faccia a faccia 
è il modo più 
efficiente e più 
efficace per 
comunicare 
con il team ed 
all'interno del team.” 
Non dire le cose per 
email quando si 
possono dire di 
persona 
Sunday, February 5, 12
“Il software funzionante 
è il principale metro di 
misura di progresso.” 
I feedback del cliente 
sono la piu’ grande 
misura del successo 
del progetto 
Sunday, February 5, 12
“I processi agili 
promuovono uno sviluppo 
sostenibile. 
Gli sponsor, gli 
sviluppatori e gli utenti 
dovrebbero essere in grado 
di mantenere 
indefinitamente un ritmo 
costante.” Ritmo sostenibile 
Sunday, February 5, 12
“La continua 
attenzione 
all'eccellenza tecnica 
e alla buona 
progettazione 
esaltano l'agilità.” Eccellenza e 
progettazione portano 
alla semplicita’ 
Sunday, February 5, 12
“La semplicità - 
l'arte di 
massimizzare la 
quantità 
di lavoro non svolto 
- è essenziale.” 
Imports System.Console 
Class HelloWorld 
Public Shared Sub Main() 
WriteLine("Hello, world!") 
End Sub 
End Class
Sunday, February 5, 12
ANTI-IF CAMPAGN 
esercizio 
Sunday, February 5, 12
“Le architetture, i 
requisiti e la 
progettazione 
migliori emergono 
da team che si 
auto-organizzano.” 
No micro gestione 
Si’ ritmo e abitudini 
No best practices 
Si’ preferred practices 
Sunday, February 5, 12
“A intervalli regolari il 
team riflette su come 
diventare più efficace, 
dopodiché regola e 
adatta 
il proprio 
comportamento di 
conseguenza.” 
Essere leali e obiettivi 
Saper gioire per i 
successi 
Saper riconoscere gli 
sbagli 
Non vivere con 
l’incubo dell’errore ma 
con la consapevolezza 
di saper riconoscere e 
correggere gli errori 
Sunday, February 5, 12
5 WHYs 
esercizio 
Sunday, February 5, 12
Esercizio 
A coppie scrivere su un foglio a muro 
• 4 valori di Agile 
• 12 principi sottostanti ad Agile 
Sunday, February 5, 12
Simuliamo un progetto Agile 
Agile: The Board Game 
Sunday, February 5, 12
Limiti di Scrum 
•Si tende a pianificare solo lo sprint successivo. 
•Si tende ad isolare il team dal management. 
•Si tende ad applicare prima di avere software di 
qualita’ e testato in modo automatico. 
•Scrum non dice come fare le cose 
•Si pensa che i team auto-organizzati, da soli, 
possano migliorare il processo. Non basta, il 
middle-management ha un ruolo findamentale. 
•La colocation e il single project sono molto utopici. 
Sunday, February 5, 12
XP - eXtreme programming 
Sunday, February 5, 12
Pratiche XP 
• Pair Programming: sviluppare le parti piu’ critiche insieme sullo 
stesso pc condividendo le scelte e il codice 
• Test Driven Development: scrivere il test e poi sviluppare la 
funzionalita’ 
• Continuos Integration: integrare in modo continuo tutti i componenti 
software riducendo il rischio di integrazione posticipata 
• Refactoring: rivedere periodicamente il codice migliorandolo e 
rendendolo piu’ mantenibile 
• Collective Code Ownership: il codice sorgente e’ di tutti e tutti sanno 
metterci le mani 
• Simple design: tenere sempre il sistema semplice 
Sunday, February 5, 12
Lean 
•Ha origini dal TPS (Toyota Production System) sviluppato tra il 
1948-1975 
•TPS si basa su 
•Continuo miglioramento - Kaizen 
•Rispetto per le persone 
•Una vision a lungo termine 
•Il giusto processo crea i giusti risultati 
•Creare valore attraverso lo sviluppo delle persone 
•Risolvere subito i problemi 
•Ha due pilastri 
•Just-in-time 
•Automation 
•Uno scopo 
•Ridurre gli sprechi 
•Dare valore subito al cliente 
Sunday, February 5, 12
Lean Flow 
Spostare l’attenzione dalla creazione del 
prodotto al processo produttivo: 
“the production flow” 
http://www.lean.org/WhatsLean/Principles.cfm 
Sunday, February 5, 12
5 principi di Lean 
1.Definire il valore, per ogni famiglia di prodotto, dal punto di 
vista del cliente finale. 
2.Identificare i passi del value stream, per ogni famiglia di 
prodotto, eliminando possibilmente tutti gli step che non 
creano valore. 
3.Assicurarsi che i vari passi del value siano vicini e possano 
creare un flusso veloce verso il cliente finale. 
4.Una volta che il value stream e’ attivato favorire l’intervento 
del cliente per atto ad aumentare il valore degli step. 
5.Una volta che il valore e’ definito, il value stream identificato, 
gli sprechi rimossi e il flusso introdotto ricominciare di 
nuovo il processo fino a quando il valore e’ prodotto senza 
sprechi. 
Sunday, February 5, 12
Fresare Saldare Verniciare Assemblare 
Value Stream Mapping 
Sunday, February 5, 12
Esercizio 
Sunday, February 5, 12
10 maggiori cause di spreco 
Qualsiasi cosa che non aggiunge valore al cliente 
finale e’ considerata uno spreco: 
1. Produzione di cose non necessarie 
2. Attesa 
3. Delegare il lavoro 
4. Processi non necessari 
5. Lavoro non completato 
6. Cambio continuo di attivita’ 
7. Evidenziare i difetti alla fine del progetto 
8. Team che non lavora al suo potenziale 
9. Perdita di conoscenza 
10.Assecondare i desideri piu’ che le necessita’ 
razionali 
Sunday, February 5, 12
Inbox 
La posta non letta e’ un esempio di spreco: 
Aumento consistente di giorno in giorno della posta 
non letta (“teoria del vetro rotto”) 
Mancanza di evidenza dell’importanza dei vari 
messaggi 
Maggior tempo per discriminare la posta importante da 
quella meno importante 
Lentezza del client di posta! 
Google ha proposto la priority 
inbox e funziona! 
Oppure cancellate la posta che 
non vi serve  
Sunday, February 5, 12
Bugs 
Una lista molto lunga di bugs “vecchi” non aiuta a 
mantenere il flusso di valore: 
Se un bug e’ piu’ vecchio di X mesi significa che non 
e’ importante (altrimenti sarebbe venuto giu’ il 
mondo!) 
Avere tanti bugs e non risolverli non aiuta a dare le 
giuste priorita’ 
Meglio mettere nel cassetto 
i bugs e riaprire il cassetto quando 
si avra’ il tempo 
Meglio non avere bugs! 
Sunday, February 5, 12
Gemba 
In Toyota e’ la pratica di andare a vedere la linea di 
produzione 
I manager non guardano email, grafici, report, ma 
direttamente la linea di produzione 
I problemi sono vissuti sul campo, ci si rende conto 
della complessita’ e delle persone. 
Nei progetti software cos’e’ il Gemba? 
Sunday, February 5, 12
A3 
Sunday, February 5, 12
Title: What you are talking about. 
Background 
Current Situation 
Goal 
Analysis 
Recommendations 
Plan 
Follow - up 
Why are you talking about it? 
Where do we stand? 
Where we need to be? 
What is the specific change you want 
to accomplish now? 
-What is the root cause(s) of the 
problem? 
- 
What is your proposed 
countermeasure(s)? 
What activities will be required for 
implementation and who will be 
responsible for what and when? 
How we will know if the actions have 
the impact needed? What remaining 
issues can be anticipated? 
A3 -Verble/Shook 
What’s the problem? 
Sunday, February 5, 12
Esercizio 
Sunday, February 5, 12
Title: 
Background 
Current Situation 
Goal 
Analysis 
Recommendations 
Plan 
Follow - up 
A3 -Verble/Shook 
 
Sunday, February 5, 12
Il tempo non basta mai 
sett 1 sett 2 sett 3 sett 4 sett 5 
Done 
Done 
Done 
Sunday, February 5, 12
Funziona? 
Pro 
 Si pensa di essere piu’ 
produttivi 
 Diversificare aiuta a non 
annoiarsi 
 Si puo’ star dietro a piu’ 
clienti 
 Si possono sfruttare i 
“tempi morti” 
Contro 
 Sotto stress 
 Ore piccole 
 Tempo perso nel cambio 
di contesto 
Sunday, February 5, 12
… e se fossimo monotasking? 
sett 1 sett 2 sett 3 sett 4 sett 5 
Done 
Done 
Done 
Sunday, February 5, 12
Pomodoro Technique 
1. Scegli il task da completare 
2. Imposta il Pomodoro a 25 minuti 
(Il Pomodoro è il timer) 
3. Lavora sul task senza distrazioni o 
interruzioni fino a che il Pomodoro 
non suona, dopo metti una spunta 
nel tuo foglio della To Do List 
4. Prenditi un piccolo break (5 minuti vanno bene) 
5.Ogni 4 pomodori prenditi una pausa un po' più 
lunga 
www.pomodorotechnique.com 
Sunday, February 5, 12
L’importanza del time-boxing 
•Aiuta a concentrarsi su una singola attivita’ 
•Da quell’adrenalina positiva per portare a termine un 
compito 
•Permette di semplificare i task 
•Riduce il lavoro inutile 
•Incrementa la concretezza (stare con i piedi per 
terra) 
•Permette di avere un ritmo nel lavoro (non ci sono 
piu’ riunioni senza fine che finiscono con un ‘?’) 
•Aiuta a trovare accordi con se stessi e con il team 
•Permette di pianificare meglio le attivita’ e stimarne 
il costo 
Sunday, February 5, 12
WIP 
Ridurre il Work In Progress aiuta a 
•Aumetare la qualita’ del lavoro 
finito 
•Semplificare processi e 
procedure 
•Aumentare la reattivita’ a 
richieste spot 
•Migliorare la vita in azienda 
Sunday, February 5, 12
Kanban Board 
Sunday, February 5, 12
Questa e’ molto molto 
semplice. Tipicamente si 
mettono le fasi di progetto e le 
code di attesa. 
- WIP limitato 
- Persone assegnate solo 
quando server 
- Continua revisione priorita’ 
- Piu’ progetti insieme, anche di 
diversa natura 
Sunday, February 5, 12
Altro esempio di Kanban board 
Sunday, February 5, 12
Sunday, February 5, 12
Agile anti-patterns 
Never meeting iteration commitments 
Testing late 
Poor estimating 
Not trying to improve 
Not assigning action items 
http://www.agileforall.com/2009/06/03/agile-antipattern-insanity- 
5-insanity-antipatterns/ 
http://agileantipatterns.com/ 
Sunday, February 5, 12
Scrum# 
E’ una evoluzione di Scrum ponendo Scrum all’interno del Lean 
Thinking 
Rilassa certi aspetti a seconda dei progetti. Es: 
Iterazioni: time boxed oppure flow-based. 
Prodotto: il team e’ responsabile del prodotto. 
Management: i manager guida e fa coach al team. Si lavora 
insieme. 
Imparare: dal modello del flow con la big picture sempre 
presente. 
Priorita’: non solo valore per il cliente ma anche sulla 
riduzione degli sprechi. 
Continuos Integration: build che funzionano in automatico 
Acceptance Test: definiti prima di codificare. 
Limitare il WIP: non iniziare nuove storie se non sono 
concluse quelle precendenti. 
Sunday, February 5, 12
Scrum Scaling 
Sunday, February 5, 12
Scrum di Scrum 
Ogni team lavora con un suo Scrum 
Ogni settimana un membro del team si incontra con 
gli altri membri degli altri team per fare un Daily 
meeting 
Puo’ essere scalato in modo indefinito 
I rappresentanti possono cambiare di volta in volta 
Sunday, February 5, 12
Team Virtuali 
E’ possibile applicare Scrum da remoto su team dislocati 
geograficamenti 
E’ difficile farlo funzionare 
I tools di comunicazione sono fondamentali, devono 
permettere un editing live degli oggetti (es: Google 
Docs) 
Chat, Call e Video Call devono essere sempre accessibili 
Il repository del codice sempre condiviso 
I server di test e di continuos integration hanno un ruolo 
molto importante perche’ evidenziano i problemi che di 
solito non emergono naturalmente nei team co-located 
Sunday, February 5, 12
Cosa evitare 
Fare Scrum Team per componenti 
Il codice e’ di tutti, non del Team singolo, NO CODICE 
PRIVATO 
Non esistono gruppi speciali: il gruppo degli architect, 
il gruppo dei designer ecc  I gruppi sono Cross 
Funzionali 
Feature Teams! SI’! 
Sunday, February 5, 12
Introdurre Agile in Azienda 
Sunday, February 5, 12
Introdurre una metodologia Agile in Azienda 
Sunday, February 5, 12
Sunday, February 5, 12
Come aiutare 
Fare un A3 della situazione con Value Stream Mapping 
Affrontare un problema alla volta 
Non cercare di ottimizzare tutto subito 
Avere una spinta molto forte dai top-manager 
Cercare consenso dal basso 
Introdurre un Changing Agent 
Chiedere la consulenza di un Coach. Il Coach e’ una 
persona che riduce di molto la fase di caos e poi se 
ne va. 
Sunday, February 5, 12
Una ricetta per Kanban 
1. Concentrarsi a rilasciare sempre software di 
Qualita': TDD, Code Inspection, Arcihtecture 
and Design Patterns e Software Factories 
2.Ridurre il Work-in-Progress (WIP) 
3.Rilasciare spesso 
4.Bilanciare la domanda di nuove funzionalita' 
con il lavoro che si riesce a smaltire 
(Throughput) 
5.Dare priorita' alle cose 
6.Ridurre le cause di variabilita' migliorando la 
predicibilita' 
da “Kanban: Successful Evolutionary Change for Your Technology Business” 
Sunday, February 5, 12
Conclusioni 
Sunday, February 5, 12
La chiusura di un progetto 
Raccogliere le lesson learned 
Celebrare il successo e imparare degli errori 
Non disperdere il know-how 
http://www.svgopen.org/2008/papers/47- 
Real_time_monitor_in_SVG_a_use_case_in_Machining_Technology_HMI/ 
Sunday, February 5, 12
Le certificazioni Agile 
SCRUM - www.scrumalliance.org 
Master 
Practitioner 
Coach 
Trainer 
PMI-ACP - www.pmi.org 
Atern DSDM - www.dsdm.org 
Sunday, February 5, 12
Studiare come Scrum Master 
Seguire il corso di Scrum Master di due giorni 
insegnato da un Scrum Trainer Certificato 
Applicare Scrum su un progetto e/o partecipare ad un 
progetto Scrum 
Studiare il libro di Ken Schware “Agile Project 
Management with Scrum” 
Sostenere un esame online con 40 domande in 60 
minuti. 
Sunday, February 5, 12
Studiare per PMI-ACP 
Pre-requisiti: 2000h di PM + 1500h di Agile PM + 21h di Training su Agile (16 ore questo 
corso) 
Studiare i libri: 
Agile Project Management with Scrum 
The Art of Agile development 
User Stories Applied 
Agile Estimation and Plannig 
Scaling Lean  Agile Development: Thinking and Organizational Tools for Large-Scale Scrum 
The Software Project Manager's Bridge to Agility 
Lean-Agile Software Development: Achieving Enterprise Agility 
Coaching Agile Teams: A Companion for ScrumMasters, Agile Coaches, and Project Manager... 
Agile Project Management: Creating Innovative Products (2nd Edition) 
Agile Retrospectives: Making Good Teams Great 
Kanban: Successful Evolutionary Change for Your Technology Business 
Inoltre questo link ti da una panoramica di tutte le aree da studiare - http://agiletraining.com/ 
2011/09/24/pmi-acp-agile-certification-exam-study-tips 
Qui l’handbook PMI - http://www.pmi.org/Certification/~/media/PDF/Certifications/PMI-ACP_ 
Handbook.ashx 
Sunday, February 5, 12
Links e tools utili 
casi d'uso: www.scrumalliance.org/resources?tag=experience+report 
libri consigliati: www.scrumalliance.org/pages/scrum_student_resources 
presentazioni: www.scrumalliance.org/resources?tag=Presentations 
docs: www.scrumalliance.org/resources?tag=2010+Shanghai+Gathering 
fumetti: www.implementingscrum.com/section/blog/cartoons/ 
contratti: agile rfp - www.methodsandtools.com/archive/archive.php? 
id=84 
agile manifesto: agilemanifesto.org/iso/it/principles.html 
pmi: pmi.org 
lean: www.lean.org 
scrum alliance: www.scrumalliance.org 
pecha-kucha: www.pecha-kucha.org/ 
Sunday, February 5, 12
Letture consigliate 
Sunday, February 5, 12
Progetti 
Complessi Persone 
Mercato e Requisiti 
dinamici 
Controllare il 
Progetto 
Motivare il 
Team 
Prodotti/Servizi di 
Qualita’ e Valore 
A 
GILE! 
Agile quando? 
Sunday, February 5, 12
Riferimenti 
Giulio Roggero 
roggero@intre.it 
www.intre.it 
http://it.linkedin.com/in/giul ioroggero 
Sunday, February 5, 12
Ringraziamenti 
Si ringraziano tutti i partecipanti ai corsi 2011 per i preziosi 
feedback e la grande partecipazione al corso. 
Si ringrazia Michael Vizdos che con i suoi fumetti mi ha ispirato 
e divertito - www.implementingscrum.com. 
Ringrazio tutti i colleghi di Intré che fanno da cavia per tutte le 
mie sperimentazioni. 
Ringrazio Elena, Arturo e Edoardo per la pazienza che hanno 
avuto durante le mie sere di studio e ricerca. 
Sunday, February 5, 12

More Related Content

What's hot

Agile Methodology(SCRUM)
Agile Methodology(SCRUM)Agile Methodology(SCRUM)
Agile Methodology(SCRUM)KhushSlideShare
 
SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?Silvio Wandfluh
 
Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Andreano Lanusse
 
Henrik Kniberg: Lean from the Trenches keynote @ AgileEE
Henrik Kniberg: Lean from the Trenches keynote @ AgileEEHenrik Kniberg: Lean from the Trenches keynote @ AgileEE
Henrik Kniberg: Lean from the Trenches keynote @ AgileEEAgileee
 
Agile scrum fundamentals
Agile scrum fundamentalsAgile scrum fundamentals
Agile scrum fundamentalsDeniz Gungor
 
Agile Product Management: Getting from Backlog to Value
Agile Product Management: Getting from Backlog to ValueAgile Product Management: Getting from Backlog to Value
Agile Product Management: Getting from Backlog to ValueLeadingAgile
 
Agile Performance Metrics
Agile Performance MetricsAgile Performance Metrics
Agile Performance MetricsACM
 
How to be a great scrum master
How to be a great scrum masterHow to be a great scrum master
How to be a great scrum masterDaniel Shupp
 
Introduction to scaled agile framework
Introduction to scaled agile frameworkIntroduction to scaled agile framework
Introduction to scaled agile frameworkSrinath Ramakrishnan
 
Heart of Agile: What is Agile?
Heart of Agile: What is Agile?Heart of Agile: What is Agile?
Heart of Agile: What is Agile?Agile Tour Beirut
 
Agile Mindset For Executives
Agile Mindset For ExecutivesAgile Mindset For Executives
Agile Mindset For ExecutivesMichael Tarnowski
 
Scaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scaleScaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scaleVadim Mikhnevych
 
Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...
Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...
Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...Agile Velocity
 
Agile Transformation v1.27
Agile Transformation v1.27Agile Transformation v1.27
Agile Transformation v1.27LeadingAgile
 
Agile 101
Agile 101Agile 101
Agile 101beLithe
 
Scrum Master Facilitation Techniques
Scrum Master Facilitation TechniquesScrum Master Facilitation Techniques
Scrum Master Facilitation TechniquesXPDays
 

What's hot (20)

Agile Methodology(SCRUM)
Agile Methodology(SCRUM)Agile Methodology(SCRUM)
Agile Methodology(SCRUM)
 
Kanban
Kanban Kanban
Kanban
 
SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?
 
Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)
 
Henrik Kniberg: Lean from the Trenches keynote @ AgileEE
Henrik Kniberg: Lean from the Trenches keynote @ AgileEEHenrik Kniberg: Lean from the Trenches keynote @ AgileEE
Henrik Kniberg: Lean from the Trenches keynote @ AgileEE
 
Agile scrum fundamentals
Agile scrum fundamentalsAgile scrum fundamentals
Agile scrum fundamentals
 
Agile Product Management: Getting from Backlog to Value
Agile Product Management: Getting from Backlog to ValueAgile Product Management: Getting from Backlog to Value
Agile Product Management: Getting from Backlog to Value
 
Agile Performance Metrics
Agile Performance MetricsAgile Performance Metrics
Agile Performance Metrics
 
Scrum Master
Scrum MasterScrum Master
Scrum Master
 
How to be a great scrum master
How to be a great scrum masterHow to be a great scrum master
How to be a great scrum master
 
Introduction to scaled agile framework
Introduction to scaled agile frameworkIntroduction to scaled agile framework
Introduction to scaled agile framework
 
Heart of Agile: What is Agile?
Heart of Agile: What is Agile?Heart of Agile: What is Agile?
Heart of Agile: What is Agile?
 
Agile Mindset For Executives
Agile Mindset For ExecutivesAgile Mindset For Executives
Agile Mindset For Executives
 
Scrum 101
Scrum 101 Scrum 101
Scrum 101
 
Scaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scaleScaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scale
 
Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...
Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...
Webinar: 6 Keys to Agile Transformation Success with David Hawks | Agile Velo...
 
Agile Transformation v1.27
Agile Transformation v1.27Agile Transformation v1.27
Agile Transformation v1.27
 
Agile 101
Agile 101Agile 101
Agile 101
 
Agile Introduction - Scrum Framework
Agile Introduction - Scrum FrameworkAgile Introduction - Scrum Framework
Agile Introduction - Scrum Framework
 
Scrum Master Facilitation Techniques
Scrum Master Facilitation TechniquesScrum Master Facilitation Techniques
Scrum Master Facilitation Techniques
 

Viewers also liked

Sviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUMSviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUMMatteo Papadopoulos
 
Introduzione alle metodologie di sviluppo agile
Introduzione alle metodologie di sviluppo agileIntroduzione alle metodologie di sviluppo agile
Introduzione alle metodologie di sviluppo agileStefano Valle
 
Agilità interculturale
Agilità interculturaleAgilità interculturale
Agilità interculturaleGiulio Roggero
 
Product Canvas Step-by-Step
Product Canvas Step-by-StepProduct Canvas Step-by-Step
Product Canvas Step-by-StepGiulio Roggero
 
Kanban boards step by step
Kanban boards step by stepKanban boards step by step
Kanban boards step by stepGiulio Roggero
 
Collaborare con il Cliente
Collaborare con il ClienteCollaborare con il Cliente
Collaborare con il ClienteGiulio Roggero
 
Agile Project Management - the Board Game workshop
Agile Project Management  - the Board Game workshopAgile Project Management  - the Board Game workshop
Agile Project Management - the Board Game workshopGiulio Roggero
 
Agile project management 1 giornata - board game - v2
Agile project management   1 giornata - board game - v2Agile project management   1 giornata - board game - v2
Agile project management 1 giornata - board game - v2Giulio Roggero
 
Favorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesFavorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesGiulio Roggero
 
Agile Seminar at Politecnico di Milano
Agile Seminar at Politecnico di MilanoAgile Seminar at Politecnico di Milano
Agile Seminar at Politecnico di MilanoGiulio Roggero
 
Lavorare meglio e con le persone giuste
Lavorare meglio e con le persone giusteLavorare meglio e con le persone giuste
Lavorare meglio e con le persone giusteGiulio Roggero
 
Visualizing the Product - PMI-NIC Agile Workshop 2013
Visualizing the Product - PMI-NIC Agile Workshop 2013Visualizing the Product - PMI-NIC Agile Workshop 2013
Visualizing the Product - PMI-NIC Agile Workshop 2013Giulio Roggero
 
From Vision to Product
From Vision to ProductFrom Vision to Product
From Vision to ProductGiulio Roggero
 
10 years of kanban - what have we learned
10 years of kanban - what have we learned10 years of kanban - what have we learned
10 years of kanban - what have we learnedDavid Anderson
 
Lezione 6b: Design Pattern Strutturali
Lezione 6b: Design Pattern StrutturaliLezione 6b: Design Pattern Strutturali
Lezione 6b: Design Pattern StrutturaliAndrea Della Corte
 
2. Gli altri 5 consigli su come essere un grandioso Product Manager
2. Gli altri 5 consigli su come essere un grandioso Product Manager 2. Gli altri 5 consigli su come essere un grandioso Product Manager
2. Gli altri 5 consigli su come essere un grandioso Product Manager Manager.it
 
NoSQL Containers get Rich
NoSQL Containers get RichNoSQL Containers get Rich
NoSQL Containers get RichStefano Valle
 

Viewers also liked (20)

Sviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUMSviluppo Agile secondo l'approccio SCRUM
Sviluppo Agile secondo l'approccio SCRUM
 
Introduzione alle metodologie di sviluppo agile
Introduzione alle metodologie di sviluppo agileIntroduzione alle metodologie di sviluppo agile
Introduzione alle metodologie di sviluppo agile
 
Introduzione a Scrum
Introduzione a ScrumIntroduzione a Scrum
Introduzione a Scrum
 
Agilità interculturale
Agilità interculturaleAgilità interculturale
Agilità interculturale
 
Product Canvas Step-by-Step
Product Canvas Step-by-StepProduct Canvas Step-by-Step
Product Canvas Step-by-Step
 
Kanban boards step by step
Kanban boards step by stepKanban boards step by step
Kanban boards step by step
 
Collaborare con il Cliente
Collaborare con il ClienteCollaborare con il Cliente
Collaborare con il Cliente
 
Agile Project Management - the Board Game workshop
Agile Project Management  - the Board Game workshopAgile Project Management  - the Board Game workshop
Agile Project Management - the Board Game workshop
 
Agile project management 1 giornata - board game - v2
Agile project management   1 giornata - board game - v2Agile project management   1 giornata - board game - v2
Agile project management 1 giornata - board game - v2
 
Favorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservicesFavorire i feature teams con architetture microservices
Favorire i feature teams con architetture microservices
 
Agile Fixed Price
Agile Fixed PriceAgile Fixed Price
Agile Fixed Price
 
Agile Seminar at Politecnico di Milano
Agile Seminar at Politecnico di MilanoAgile Seminar at Politecnico di Milano
Agile Seminar at Politecnico di Milano
 
Lavorare meglio e con le persone giuste
Lavorare meglio e con le persone giusteLavorare meglio e con le persone giuste
Lavorare meglio e con le persone giuste
 
Visualizing the Product - PMI-NIC Agile Workshop 2013
Visualizing the Product - PMI-NIC Agile Workshop 2013Visualizing the Product - PMI-NIC Agile Workshop 2013
Visualizing the Product - PMI-NIC Agile Workshop 2013
 
From Vision to Product
From Vision to ProductFrom Vision to Product
From Vision to Product
 
10 years of kanban - what have we learned
10 years of kanban - what have we learned10 years of kanban - what have we learned
10 years of kanban - what have we learned
 
Lezione 6b: Design Pattern Strutturali
Lezione 6b: Design Pattern StrutturaliLezione 6b: Design Pattern Strutturali
Lezione 6b: Design Pattern Strutturali
 
Lezione 1: I metodi agili
Lezione 1: I metodi agiliLezione 1: I metodi agili
Lezione 1: I metodi agili
 
2. Gli altri 5 consigli su come essere un grandioso Product Manager
2. Gli altri 5 consigli su come essere un grandioso Product Manager 2. Gli altri 5 consigli su come essere un grandioso Product Manager
2. Gli altri 5 consigli su come essere un grandioso Product Manager
 
NoSQL Containers get Rich
NoSQL Containers get RichNoSQL Containers get Rich
NoSQL Containers get Rich
 

Similar to Agile Project Management

Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Roberto Bettazzoni
 
"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta
"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta
"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe TrottaThinkOpen
 
Agile web development - Forum IISF - 2016
Agile web development - Forum IISF - 2016Agile web development - Forum IISF - 2016
Agile web development - Forum IISF - 2016Luciano Amodio
 
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
 
Slide Wallabiez Agile Day 2007
Slide Wallabiez Agile Day 2007Slide Wallabiez Agile Day 2007
Slide Wallabiez Agile Day 2007Manuela Munaretto
 
Succeding with feature teams
Succeding with feature teamsSucceding with feature teams
Succeding with feature teamsStefano Leli
 
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie AgiliDall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie AgiliMassimiliano Camillucci
 
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clientiScrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clientiMarco Da Rin Zanco
 
Instilling Scrum Workshop
Instilling Scrum WorkshopInstilling Scrum Workshop
Instilling Scrum WorkshopRaoul Buzziol
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Commit University
 
Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...
Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...
Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...Agile Lean Conference
 
How Agile Dev Teams work
How Agile Dev Teams workHow Agile Dev Teams work
How Agile Dev Teams workXPeppers
 
L’elefante nella stanza! Affrontare le “known issues” tra tecnici e manager
L’elefante nella stanza! Affrontare le “known issues” tra tecnici e managerL’elefante nella stanza! Affrontare le “known issues” tra tecnici e manager
L’elefante nella stanza! Affrontare le “known issues” tra tecnici e managerCodemotion
 
L’elefante nella stanza! [con LiquidO™] - Codemotion 2014
L’elefante nella stanza! [con LiquidO™] - Codemotion 2014L’elefante nella stanza! [con LiquidO™] - Codemotion 2014
L’elefante nella stanza! [con LiquidO™] - Codemotion 2014Fabio Mora
 
AgileDay 2006 - Essere agili nel diventare agili
AgileDay 2006 - Essere agili nel diventare agiliAgileDay 2006 - Essere agili nel diventare agili
AgileDay 2006 - Essere agili nel diventare agiliLuca Minudel
 
ScrumLSP official copyrighted workshop format
ScrumLSP official copyrighted workshop formatScrumLSP official copyrighted workshop format
ScrumLSP official copyrighted workshop formatMichael Forni
 

Similar to Agile Project Management (20)

Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
Introduzione alle metodologie e pratiche Agili ... ma l'agile c'entra qualcos...
 
"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta
"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta
"ThinkOpen Agile Days - #Day3" by Donato Andrisani e Giuseppe Trotta
 
Agile web development - Forum IISF - 2016
Agile web development - Forum IISF - 2016Agile web development - Forum IISF - 2016
Agile web development - Forum IISF - 2016
 
Agile@core - Scrum
Agile@core - ScrumAgile@core - Scrum
Agile@core - Scrum
 
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...
 
Slide Wallabiez Agile Day 2007
Slide Wallabiez Agile Day 2007Slide Wallabiez Agile Day 2007
Slide Wallabiez Agile Day 2007
 
Succeding with feature teams
Succeding with feature teamsSucceding with feature teams
Succeding with feature teams
 
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie AgiliDall'ideazione alla progettazione - Teamwork e metodologie Agili
Dall'ideazione alla progettazione - Teamwork e metodologie Agili
 
Agile@scale: be SAFe!
Agile@scale: be SAFe!Agile@scale: be SAFe!
Agile@scale: be SAFe!
 
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clientiScrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
Scrum! Sopravvivere e gestire progetti tra polli, maiali e clienti
 
Instilling Scrum Workshop
Instilling Scrum WorkshopInstilling Scrum Workshop
Instilling Scrum Workshop
 
Instilling Scrum Workshop
Instilling Scrum WorkshopInstilling Scrum Workshop
Instilling Scrum Workshop
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
 
Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...
Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...
Agile Lean Conference 2015 -Facilitare le retrospettive per ottenere il massi...
 
How Agile Dev Teams work
How Agile Dev Teams workHow Agile Dev Teams work
How Agile Dev Teams work
 
L’elefante nella stanza! Affrontare le “known issues” tra tecnici e manager
L’elefante nella stanza! Affrontare le “known issues” tra tecnici e managerL’elefante nella stanza! Affrontare le “known issues” tra tecnici e manager
L’elefante nella stanza! Affrontare le “known issues” tra tecnici e manager
 
L’elefante nella stanza! [con LiquidO™] - Codemotion 2014
L’elefante nella stanza! [con LiquidO™] - Codemotion 2014L’elefante nella stanza! [con LiquidO™] - Codemotion 2014
L’elefante nella stanza! [con LiquidO™] - Codemotion 2014
 
Agile software lifecycle
Agile software lifecycleAgile software lifecycle
Agile software lifecycle
 
AgileDay 2006 - Essere agili nel diventare agili
AgileDay 2006 - Essere agili nel diventare agiliAgileDay 2006 - Essere agili nel diventare agili
AgileDay 2006 - Essere agili nel diventare agili
 
ScrumLSP official copyrighted workshop format
ScrumLSP official copyrighted workshop formatScrumLSP official copyrighted workshop format
ScrumLSP official copyrighted workshop format
 

More from Giulio Roggero

Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewGiulio Roggero
 
Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Giulio Roggero
 
Platform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprisePlatform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterpriseGiulio Roggero
 
Modernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesModernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesGiulio Roggero
 
Stili architetturali in Kubernetes
Stili architetturali in KubernetesStili architetturali in Kubernetes
Stili architetturali in KubernetesGiulio Roggero
 
Do pair programming with an artificial intelligence
Do pair programming with an artificial intelligenceDo pair programming with an artificial intelligence
Do pair programming with an artificial intelligenceGiulio Roggero
 
Come i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsCome i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsGiulio Roggero
 
Microservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsMicroservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsGiulio Roggero
 
Invisible infrastructures
Invisible infrastructuresInvisible infrastructures
Invisible infrastructuresGiulio Roggero
 
Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Giulio Roggero
 
Eliminare gli Spaghetti API
Eliminare gli Spaghetti APIEliminare gli Spaghetti API
Eliminare gli Spaghetti APIGiulio Roggero
 
Da spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma DigitaleDa spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma DigitaleGiulio Roggero
 
API Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle apiAPI Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle apiGiulio Roggero
 
Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017Giulio Roggero
 
Trust me, I'm a developer
Trust me, I'm a developerTrust me, I'm a developer
Trust me, I'm a developerGiulio Roggero
 
Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015Giulio Roggero
 

More from Giulio Roggero (20)

Platform Engineering - a 360 degree view
Platform Engineering - a 360 degree viewPlatform Engineering - a 360 degree view
Platform Engineering - a 360 degree view
 
Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101Kubernetes and CNCF Landscape 101
Kubernetes and CNCF Landscape 101
 
Platform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprisePlatform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprise
 
Modernize Legacy Systems with Kubernetes
Modernize Legacy Systems with KubernetesModernize Legacy Systems with Kubernetes
Modernize Legacy Systems with Kubernetes
 
Stili architetturali in Kubernetes
Stili architetturali in KubernetesStili architetturali in Kubernetes
Stili architetturali in Kubernetes
 
Do pair programming with an artificial intelligence
Do pair programming with an artificial intelligenceDo pair programming with an artificial intelligence
Do pair programming with an artificial intelligence
 
Come i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature TeamsCome i Microservizi favoriscono il lavoro dei Feature Teams
Come i Microservizi favoriscono il lavoro dei Feature Teams
 
Scaling Legacy
Scaling LegacyScaling Legacy
Scaling Legacy
 
Agile Journey
Agile JourneyAgile Journey
Agile Journey
 
Microservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature TeamsMicroservices, Microfrontends and Feature Teams
Microservices, Microfrontends and Feature Teams
 
Invisible infrastructures
Invisible infrastructuresInvisible infrastructures
Invisible infrastructures
 
Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Stop Meeting, Start Coding!
Stop Meeting, Start Coding!
 
Eliminare gli Spaghetti API
Eliminare gli Spaghetti APIEliminare gli Spaghetti API
Eliminare gli Spaghetti API
 
Innovare nel B2C
Innovare nel B2CInnovare nel B2C
Innovare nel B2C
 
Da spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma DigitaleDa spaghetti API a Piattaforma Digitale
Da spaghetti API a Piattaforma Digitale
 
Kanban board!
Kanban board!Kanban board!
Kanban board!
 
API Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle apiAPI Conf 2017 - Allineare il business e la tecnologia grazie alle api
API Conf 2017 - Allineare il business e la tecnologia grazie alle api
 
Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017Progettare l’intangibile - Progettando 2017
Progettare l’intangibile - Progettando 2017
 
Trust me, I'm a developer
Trust me, I'm a developerTrust me, I'm a developer
Trust me, I'm a developer
 
Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015Agile Fixed Price - XP Days 2015
Agile Fixed Price - XP Days 2015
 

Agile Project Management

  • 1. Agile Project Management Metodologie nuove per gestire progetti complessi Sunday, February 5, 12
  • 2. Wallenstein VS Giants Sunday, February 5, 12
  • 3. Wallenstein Ci troviamo nel 1618, alla vigilia della Guerra dei Trent’Anni, i cinque più potenti mercenari dell’epoca si sfidano nella conquista dell’europa centrale. Vince chi totalizza piu’ punti •1 punto viene assegnato per ogni territorio in proprio possesso. •1 punto viene assegnato per ogni edificio costruito sui territori posseduti. •1 punto viene assegnato al giocatore con più Mercati in ognuna delle cinque regioni. •2 punti vengono assegnati al giocatore con più Cattedrali in ognuna delle cinque regioni. •3 punti vengono assegnati al giocatore con più Castelli in ognuna delle cinque regioni Sunday, February 5, 12
  • 4. Wallenstein – durante il gioco Sunday, February 5, 12
  • 5. Wallenstein - meccanica Tutti i giocatori hanno, nel turno (tranne in inverno), queste dieci azioni da compiere, una sola per ogni territorio posseduto: 1. Costruire un Mercato 2. Costruire una Cattedrale 3. Costruire un Castello 4. Primo Movimento (spostamento o attacco) 5. Secondo Movimento (spostamento o attacco) 6. Raccogliere le tasse* 7. Raccogliere il grano * 8. Assoldare cinque armate 9. Assoldare tre armate 10. Assoldare un armata e fare uno spostamento *Il raccogliere tasse e grano causa lo scontento della popolazione che potrebbe rivoltarsi Tutti i giocatori sceglieranno, contemporaneamente dove e quali azioni esercitare. Successivamente verrà stabilito l’ordine di gioco, verrà deciso mischiando e posando sul tavolo di gioco le carte giocato. Sunday, February 5, 12
  • 6. Giants Ci troviamo sull’Isola di Pasqua tra ul V e il XVII secolo. La civita’ RapaNui costruisce degli incredibili monumenti funerari, gli Ahus (ahoo). Questi monoliti sono scolpiti da una sola pietra vulcanica ed eretti sulle sponde dell’isola. Il gioco consiste nel costruire i monumenti funerari in modo collaborativo. Chi mette a disposizione piu’ risorse e/o manodopera e/o erige piu’ Ahus vince. Sunday, February 5, 12
  • 7. Giants - meccanica Ogni giocatore puo’ compiere piu’ azioni per turno: • Piazzare un lavoratore, uno stregone o un capo • Fare una stregoneria • Erigere un Ahus I giocatori possono usare i lavoratori e i pali di legno piazzati dali altri giocatori per trasportare gli Ahus vicino alla sponda dell’Isola. Ogni volta che viene usato il lavoratore di un altro giocatore questo guadagna dei punti Sunday, February 5, 12
  • 8. E’ un processo Agile? Requisito 1 Requisito 2 Requisito 3 Requisito 4 Analisi Design Sviluppo Test Rilascio Sunday, February 5, 12
  • 9. E’ un processo Agile? Requisito 1 Requisito 2 Requisito 3 Requisito 4 Analisi Design Sviluppo Test Rilascio Sviluppo Test Sviluppo Test Iterazione 2 Iterazione n Sunday, February 5, 12
  • 10. E’ un processo Agile? Requisito 1 Requisito 2 Requisito 3 Requisito 4 Analisi Design Sviluppo Test Rilascio Design Sviluppo Test Design Sviluppo Test Iterazione 2 Iterazione n Sunday, February 5, 12
  • 11. Analisi Design Test Sviluppo Refactoring Rilascio Analisi Design Sviluppo Refactoring Rilascio Analisi Design Test Sviluppo Refactoring Rilascio Analisi Design Sviluppo Refactoring Rilascio E’ un processo Agile? Requisito 1 Requisito 2 Requisito 3 Requisito 4 Test Test Sunday, February 5, 12
  • 12. Benvenuti al CORSO SU AGILE! Sunday, February 5, 12
  • 13. Chi sei? Cosa fai? Cosa farai dopo il corso? Cosa ti piacerebbe fare tra cinque anni? Cosa ti aspetti dal corso? Sunday, February 5, 12
  • 14. Temi I Introduzione generale: framework e processi per il Project Management. Lean e Agile: valori e principi. Gemba. Definition of Done. Time Boxing. Kaizen. Kanban. Scrum: Lean, Agile applicati. Le tre gambe di Scrum. Overview, Ruoli e Workflow. XP: Ruoli, Attivita’ e Pratiche. Stimare Costi e Tempi: User Stories, Story Point e Poker Game. Risk Management e Communication Management Da PMP ad Agile: un modo pratico per introdurre Agile nel team. Sunday, February 5, 12
  • 15. Approfondimenti Agile and Scrum Anti-Patterns: cosa si pensa comunemente di Agile e Scrum che in realta’ non e’ vero Self organizing teams: esempi reali di aziende auto organizzate Pomodoro: tecnica di gestione del tempo e dei task day by day Gemba, Kaizen e Kanban: alcuni metodi introdotto in Toyota e riadattato a diverse realta’ industriali e di servizi Forme contrattuali agili: se vogliamo essere agili dobbiamo esserlo anche nei contratti Mindmaps Sunday, February 5, 12
  • 16. Una sorpresa... Sunday, February 5, 12
  • 17. Obiettivi 1. Diventare Agile Project Manager 2. Conoscere i 4 Valori e i 12 Principi di Agile 3. Definire e riconoscere le 10 ragioni di spreco secondo Lean 4. Conoscere e fare coaching di Uno Scrum Workflow Degli Scrum Roles Delle fasi di stima e pianificazione Agile 5. Creare e mantenere un Product Backlog 6. Spiegare le ragioni di perche’ adottare Agile 7. Analizzare e spiegare perche’ un’azienda non riesce ad applicare Agile Sunday, February 5, 12
  • 18. Altri temi? Vostre proposte .... .... .... .... .... Sunday, February 5, 12
  • 20. Approcci di PM - Predittivo Alcuni esempi Waterfall Spirale Unified Process (RUP) PMBoK Sunday, February 5, 12
  • 21. Predittivo – Si’/No Pro • Logico e sensato • Pianifica prima di fare • Mantiene una documentazione scritta • Segue un piano • Mantiene le attivita’ organizzate Contro • Sono coinvolte le persone! – Cambiano idea – Difficile esprimere e comunicare l’intangibile e i bisogni – Empatia • Prodotto solo alla fine Sunday, February 5, 12
  • 22. Approcci di PM - Adattivo Alcuni esempi XP Scrum FDD TDD Lean Predittivi Sunday, February 5, 12
  • 23. Adattivo – Si’/No Pro • Segue le persone • Apporta valore • Aiuta la collaborazione • Riduce le barriere Contro • Difficile da introdurre • Senza uno sponsor non decolla • Difficile coinvolgere il cliente Sunday, February 5, 12
  • 24. Wallenstein VS Giants Predittivo Adattivo Sunday, February 5, 12
  • 25. Quale scegliere? Negli ultimi 30 anni si sono alternati approcci differenti Waterfall RUP XP Kanban Agile Tutti hanno avuto successi e insuccessi Sunday, February 5, 12
  • 26. Osservare Assimilare Riealaborare Migliorare Continuamente Sunday, February 5, 12
  • 27. 3 lavori predittivi 3 lavori adattivi Sunday, February 5, 12
  • 28. Problemi nei progetti • Mancanza della gestione del cambiamento dei requisiti • Cattiva comunicazione • Inadeguatezza del Team • Requisiti non ben definiti • Stime non accurate • Mancanza di un piano di gestione dei Rischi • Cattiva definizione di cosa significa “Finito” • Non dedicare il giusto tempo alla gestione del progetto • Mancanza della conoscenza di come si gestisce un progetto • Essere sempre troppo ottimisti! Sunday, February 5, 12
  • 30. COCOMO II Fattori che influenzano la produttivita’ nel software su prj da 100 KSLOC. Migliorare i sw tools tipicamente migliora del 50% la produttivita’. Migliorare il team il 353%! SOFTWARE SEPTEMBER/OCTOBER 2000 (Vol. 17, No. 5) pp. 14-17 0740-7459/00/$26.00 © 2000 IEEE Published by the IEEE Computer Society Safe and Simple Software Cost Analysis Sunday, February 5, 12
  • 31. Principali fattori di Successo Team + Sponsorship + Cliente Sunday, February 5, 12
  • 32. Definizione di Successo Sunday, February 5, 12
  • 33. Successo Il successo in Agile e’ misurato sul valore generato dal progetto Il valore dipende dal contesto del progetto ed e’ definito con il Cliente Sunday, February 5, 12
  • 34. Cercate produttuvita’? Agile non fa per voi! Agile e’ per: •Apportare facilmente cambiamenti •Creare velocemente valore •Aumentare la transparenza Sunday, February 5, 12
  • 35. Agile non e’ • Poca o nessuna documentazione • Requisiti di massima • Nessuna pianificazione • Nessun controllo di progetto • Fare e poi pensare • Un waterfall interattivo Sunday, February 5, 12
  • 36. Agile e’ • Uno specchio della realta’ • Un processo guidato dal valore • Un continuo adattamento agli input esterni (requisiti, aspettative, ambito) con lo scopo di massimizzare il valore globale dell’output (prodotto/servizio/ qualita’/soddisfazione) Sunday, February 5, 12
  • 37. Lean e Agile Sunday, February 5, 12
  • 38. Agile Manifesto www.agilemanifesto.org Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Sunday, February 5, 12
  • 39. Tools e Processi Quale tool usiamo per tracciare lo stato del progetto? Che processo adottiamo per rilasciare una versione? Come tracciamo i bugs? Come tracciamo le ore su un progetto? Come misuriamo le performance delle persone sul progetto? Come formalizziamo con il cliente la chiusura del progetto? Tutte domande che vi siete fatti almeno una volta… … che soluzioni avete trovato e adottato? Sunday, February 5, 12
  • 40. Teoria della comunicazione CC Einar Faanes funzione referenziale (contesto) funzione emotiva (mittente) funzione conativa (destinatario) funzione fàtica (contatto) funzione poetica (messaggio) funzione metalinguistica (codice) Feedback Sunday, February 5, 12
  • 41. Teoria dell’ottimizzazione Ottimizzazione molti-obiettivi conflittuali Diverse alternative, diversi decisori, diversi criteri Non esiste l’ottimo assoluto ma un compromesso L’ottimizzazione locale dei singoli criteri non porta Sunday, February 5, 12
  • 42. Esempio di analisi multi-criteri alternatives criteria Sunday, February 5, 12
  • 44. Individui e Interazioni Comunicare, comunicare, comunicare! Tanti documenti, anche ben scritti e formalizzati non servono se non sono letti e compresi Presentazioni senza coinvolgere i partecipanti non sono efficaci se non si ha la sicurezza che il messaggio sia compreso Team building Pensare “al proprio orticello” non aiuta il progetto Molto spesso lavori complessi hanno bisogno di piu’ occhi Lavorare in un ambiente armonioso aiuta il progetto Ottimizzare il globale e non il singolo Misurare il singolo spinge a non collaborare Non e’ detto che se tutti sono ottimali il progetto e’ ottimale Sunday, February 5, 12
  • 45. Interazioni VS Tools? VS NO! I tool sono importanti se rispecchiano il modo di lavorare del team Devono ridurre quasi a zero il tempo e il costo delle operazioni ripetitive Agevolare la comunicazione remota Rendere trasparente il progetto CONSIGLIO: prima capire le persone e come lavorano poi scegliere i tools di supporto. Sunday, February 5, 12
  • 47. Agile Manifesto www.agilemanifesto.org Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Sunday, February 5, 12
  • 48. Documentazione? La documentazione e’ importante, molto importante E’ importante se e’ vera Il progetto evolve la documentazione non sempre! E’ un costo molto alto tenere aggiornata la documentazione In un progetto software qual’e’ il documento che rispecchia meglio la realta’? Sunday, February 5, 12
  • 49. Software! Software funzionante? Si/No/Forse/A volte si/Solo in questo caso no! Sunday, February 5, 12
  • 50. Metodi di Testing Unit Testing Integration Testing User Testing Interaction Testing TDD  Test driver development Sunday, February 5, 12
  • 51. Contratto Oggetto del contratto Elenco Specifiche: A, B, C Dettaglio Specifiche Assunzioni e Limiti Tempi: 3 mo Costi: 100.000$ Modalita’ di approvazione del prodotto/servizio Pagamento Diritti di recesso Penali Firma e approvazione 16/06/2011 Sunday, February 5, 12
  • 52. … e dopo un mese? Oggetto del contratto: OK Elenco Specifiche: A, B, C, D, E Dettaglio Specifiche: in realta’ C e’ D+E Assunzioni e Limiti Tempi: 4 mo Costi: 120.000$ Modalita’ di approvazione del prodotto/servizio Pagamento Diritti di recesso Penali e ora chi paga? Firma e approvazione 16/06/2011 Sunday, February 5, 12
  • 53. esercizio L’azienda Trivellazioni Felici S.p.A. deve aggiornare il sistema di monitoraggio delle trivellazioni petrolifere secondo la norma che entrera’ in vigore fra un mese da oggi Il signor White e’ l’incaricato di Trivellazioni Felici per fornirvi tutte le informazioni necessarie, l’importante e’ che il nuovo sistema sia operativo in tutte le 100 sedi entro un mese Non ci sono limiti di budget Come procedete? • 10’ per discussione • 5’ per gruppo di incontro con il signor White Sunday, February 5, 12
  • 54. Collaborazione con il cliente Domande di difficile risposta Che bisogni ha il cliente? Come lavora il cliente? Cosa vede il cliente? Come comunicare con lui? Quali aspettative ha? 1. Lavorare a stretto contatto con il cliente 2. Respirare la stessa “aria” 3. Avere le stesse aspettative Fa superare piu’ facilmente la conflittualita’ intrinseca dei contratti Sunday, February 5, 12
  • 55. Esempi di contratti “Agili” •A forchetta minima e massima (PERT aiuta) •A bande: si concorda il budget, si fissa di volta in volta lo step a prezzo fisso •Time and material classico Sunday, February 5, 12
  • 56. Piano Gantt? PERT? Milestones? Project Management Plan? Analisi dei Requisiti? Quante volte questi piani sono stravolti il giorno dopo che sono stati scritti? Sunday, February 5, 12
  • 57. Valore? Cos’e’ per il Cliente il valore? Un servizio/un prodotto che apporta valore al proprio business Aumenta la competitivita’ Riduce i costi Aumenta i ricavi Aumenta la penetrazione di mercato Alza le barriere di ingresso ai competitor Crea nuovi mercati Ecc… Questi valori sono scolpiti nella pietra o variano nel tempo? Sunday, February 5, 12
  • 58. Progetti falliti* ma di valore Progetto falliti (fuori budget, scope o time) hanno portato valore in azienda. Ecco alcuni esempi: Post-it Facebook GMail * nella accezzione di Scope-Cost-Schedule Sunday, February 5, 12
  • 59. Teoria del controllo Misurare l’output per calibrare gli input  Verificare il software funzionante per validare i requisiti implementati e pianificati Sunday, February 5, 12
  • 60. Quindi? Piano o Valore? VS •Una pianificazione e’ fondamentale •Ma la pianificazione deve poter variare senza impattare sul progetto •Rispondere ai cambiamenti permette di tenere sotto controllo il vero progetto: •Quello che apporta valore •Soddisfa le aspettative Agile e’ pianificazione con un controllore retroattivo Sunday, February 5, 12
  • 61. Esercizio www.agilemanifesto.org I…and i… over p…and t.. W… s… over d… C… c… over c… R.. To c… over p… Sunday, February 5, 12
  • 63. Cosa non e’ scrum Scrum != Ad Hoc Scrum non e’ una scusa per far meno e costare meno: - “Non abbiamo bisogno di analisi dei requisiti” - “Non abbiamo bisogno di stime” - “Siamo agili!” FALSO! Sunday, February 5, 12
  • 64. Una formula per Scrum? Scrum = timeboxed iteration + backlogs + meeting giornalieri NON BASTA SOLO QUESTO! Implemetare Agile?  NO Implementare Scrum ed essere Agili  SI’ Sunday, February 5, 12
  • 65. Ambito Lean • 5 Principici • 10 Cause di Spreco Agile • 4 Valori • 12 Principi Aspettative Team Necessita e Bisogni Cliente Valore Sunday, February 5, 12
  • 66. Storia jeffsutherland.com Jeff Sutherland introdusse nel 1995 l’idea che i team si muovessero sull’orlo del caos e si auto-controllassero come succede in natura Ken presento’ con Jeff al OOPSLA95 il primo paper su SCRUM L’ultima edizione e’ del gennaio 2011 http://jeffsutherland.com/ScrumPapers.pdf Gli autori affermano che: “Scrum non e’ una metodologia o un processo formale ma un algoritmo di compressione delle migliori abitudini in ambito dello sviluppo del software osservate in tutto il mondo negli ultimi 50 anni” kenschwaber.wordpress.com Sunday, February 5, 12
  • 68. Most common methodologies Dic 2008 Sunday, February 5, 12
  • 70. Obiettivi di Scrum 1. Energia 2. Concentrazione sugli obiettivi 3. Chiarezza 4. Transparenza Auto organizzarsi! INSIEME! Sunday, February 5, 12
  • 71. Aiuta a •Aumentare la velocita’ di sviluppo •Allineare il progetto con le esigenze del business •Creare valore in azienda •Comunicare in modo costante e trasparente a tutti i livelli aziendali •Migliorare l’ambiente di lavoro delle persone Sunday, February 5, 12
  • 72. Le tre gambe di Scrum Trasparenza Ispezione Adattamento Sunday, February 5, 12
  • 73. Dove si inserisce Scrum Sunday, February 5, 12
  • 75. Scrum Roles Sunday, February 5, 12
  • 76. Product Owner Cosa fa  Massimizza il valore di ogni Sprint  Decide quali sono gli item piu’ importanti di ogni Sprint  Puo’ cambiare le priorita’ di volta in volta  Raffina i backlog  Prende le decisioni che impattano sul prodotto Cosa non dovrebbe fare  Il project manager  Sviluppare  Decidere tecnologie e processi Sunday, February 5, 12
  • 77. Team (pigs) 7 persone ± 2 Cross-funzionale: non solo sviluppatori ma anche tester, interaction design, content managers e tutte le figure professionali necessarie per sviluppare un prodotto di valore Preferibilmente co-located: riduce i tempi di comunicazione e migliora i rapporti del team Full-time sul progetto: le “abitudini” di Scrum prevedono una dedizione al progetto giorno per giorno e un ritmo sostenibile difficilmente da parte di membri del team “multi-tasking” FOCUS! Sunday, February 5, 12
  • 78. Team (pigs) Cosa fa  Sviluppa il prodotto indicato dal product owner  Da idee al Product Owner su come migliorare il prodotto  Si auto-organizza all’interno dello sprint  Tiene traccia degli item di backlog completati  Stima gg per gg il backlog Cosa non dovrebbe fare  Implementare item che non sono nell sprint backlog  Aggiungere item allo sprint backlog  Cambia spesso i suoi membri Sunday, February 5, 12
  • 79. Stakeholders (chickens) Sono tutti gli appartenenti all’organizzazione che Sunday, February 5, 12
  • 80. Le persone del team belbin.com “Plant”: creativa e brava a risolvere i problemi in modi non convenzionali. Uno per team. Monitor Evaluator: il logico, prende decisioni imparziali e pesa in modo razionale le opzioni del team. Co-ordinators: aiuta a mantenere il focus del team, fa emerge i membri del team e delega in modo appropriato. Resource Investigators: migliora i processi e porta la voce del team fuori. Implementers: il motore che pianifica strategie efficaci e le porta a compimento. Completer Finishers: intervengo alla fine per completare il task rimuovendo errori e ottimizzando la qualita’. Teamworkers: sono il collante del team, si identificano con il team e aiutano nel lavoro di squadra. Shapers: il leader, fa in modo che il team non perda focus e spinta. “Specialist”: ha una conoscenza molto specifica nella key area del progetto. emerged. Sunday, February 5, 12
  • 81. Scrum Master •Una persona con backgroud differenti, es: Engineering, Testing, Quality Control, Product Management, Project Management •Energica e umile •Dedicata full-time su grossi progetti •In Team piccoli puo’ essere un membro del Team •ATTENZIONE PM o Team Leaders che diventate Scrum Master: dovete cambiare molto il vostro approccio, e’ un lavoro completamente diverso! Favorire l’auto-organizzazione! Sunday, February 5, 12
  • 82. Scrum Master Cosa fa  Tutor del team  Aiuta Team e PO ad avere successo nel progetto  Protegge il Team dai fattori esteri  Facilita le relazioni  Toglie gli impedimenti  E’ al servizio del Team  Aiuta a capire il flow-value Cosa non dovrebbe fare  Il project manager  Il team leader  Il product owner  Assegna Task  Dice alle persone cosa fare Sunday, February 5, 12
  • 83. Scrum roles – note importanti Scrum Master e Productr Owner NON possono essere lo stesso individuo E il Project Manager? NON ESISTE! I ruoli di PM sono divisi tra i tre ruoli di Scrum: Scrum Master Product Owner Team Un cambio di approccio e’ fondamentale! Da assegnare attivita’, verificare lo stato a  Aiutare, supportare, fare coaching e mentoring, rimuovere gli impedimenti  Essere al servizio del team! Sunday, February 5, 12
  • 84. Scrum Artifacts Sunday, February 5, 12
  • 86. Product Backlog Lista di features con priorita’ Roadmap del prodotto Responsabilita’ del Product Owner Tutto quello che e’ nel Product backlog e’ il prodotto Quello fuori NON ESISTE! Il product backlog evolve nel tempo: Priorita’ Descrizione e dettagli (raffinamento del Product Backlog) Stime NE ESISTE UNO SOLO Sunday, February 5, 12
  • 87. Esempio – Product backlog Sunday, February 5, 12
  • 88. Cosa include Funzionalita’/requisiti cliente Miglioramenti tecnici/tecnologici Esplorazioni su nuovi aspetti del prodotto/del software Bugs conosciuti Sunday, February 5, 12
  • 89. Come viene descritto Scrum non definisce un metodo Le user stories sono uno dei metodi piu’ usati Si possono usare anche Work Breakdown Structure (WBS) A volte viene creato un Release Backlog come sottoinsieme del BP per definire l’ambito della release del prodotto Sunday, February 5, 12
  • 90. User Story "As a <role>, I want <goal/desire> so that <benefit>" Sunday, February 5, 12
  • 92. User Story ID Front Back Busin alarm.searc h "As a User I want to search alarms by name, type, application, date, range of dates and free text search so that I can analyze problems on the system" filters are automatically added looking at column names and can be combined in OR and AND (like workflow in console) ess Value Priori ty Estim ated Story Point TBD VH 5 Sunday, February 5, 12
  • 93. Sprint Backlog L’insieme di task da completare in uno sprint Uno o piu’ task sono relativi a un item del Product Backlog Ogni task ha una stima in ore Ogni task e’ assegnato a una persona che lo richiede in modo volontario Sunday, February 5, 12
  • 94. Product Backlog a muro Sunday, February 5, 12
  • 96. Definition of Done Definizione di completato Tipicamente e’ una regola di backgroud di tutto il progetto Es: una feature si considera completata se: Codificata Gli unit test sono tutti passed Il codice e’ commentato La funzionalita’ e’ utilizzabile dall’utente e soddisfa i requisiti di usabilita’ definiti nella sua user story E’ integrata nel setup/ambiente di deploy E’ taggata sotto repository Ha la documentazione utente Sunday, February 5, 12
  • 97. PSPI Potentially Shippable Product Increment Ogni Sprint idealmente finisce con un prodotto potenzialmente rilasciabile MAI lasciare le cose a meta’: meglio chiudere una cosa in meno e spostarla nel prossimo sprint che lasciare le cose aperte a fine sprint Chiudere sempre secondo la Definition of Done concordata! Sunday, February 5, 12
  • 98. Motivazioni del PSPI •Permette di raccogliere i feedback velocemente •Riduce i rischi (bugs non alla fine) •Aiuta il cliente finale a prendere confidenza del prodotto •Migliora l’apprendimento Sunday, February 5, 12
  • 99. Un momento di analisi del Product Sunday, February 5, 12
  • 101. Esercizio Creare il product backlog per la presentazione di un’idea di applicazione iPad che favorisca la diffusione di Agile e di Scrum Sunday, February 5, 12
  • 102. Scrum Workflow Sunday, February 5, 12
  • 104. Sprint Planning – Part 1  Durata: 2-4 ore  Partecipanti: Product Owner, Scrum Master, Team  Strumenti: Product Backlog a muro, Definition of Done  Obiettivo: estrazione degli item per lo sprint Sunday, February 5, 12
  • 105. Sprint Planning – Part 2 Durata: 2-4 ore Partecipanti: Scrum Master, Team Strumenti: Sprint Backlog a muro Obiettivo: definizione e stima dei task per lo Sprint Backlog Sunday, February 5, 12
  • 107. Running the Sprint  Durata: 1-6 settimane (2 consigliate)  Partecipanti: Product Owner, Scrum Master, Team  Strumenti: Product & Sprint Backlog a muro, Definition of Done  Attivita’:  Sviluppo  Rifinitura del Product Backlog (5-10%)  Ri-Stima degli item del backlog  Ri-Prioritizzazione del product backlog  Analisi di dettaglio Sunday, February 5, 12
  • 108. Daily Meeting  Durata: 15’, ogni gg, alla stessa ora, nello stesso posto (possibilmente in piedi davanti allo Sprint Backlog)  Partecipanti: Scrum Master, Team  Strumenti: Sprint Backlog a muro  Attivita’:  Ogni team member dice: cosa ha fatto, cosa fara’, che impedimenti ha  Si fissano le riunioni Sunday, February 5, 12
  • 109. Sprint Review  Durata: 2-4 ore  Partecipanti: Product Owner, Scrum Master, Team  Strumenti: PSPI  Obiettivo: validare con il Product Owner la chiusura dello Sprint Sunday, February 5, 12
  • 110. Sprint Retrospective  Durata: 1.5-3 ore  Partecipanti: Scrum Master, Team  Strumenti: Sprint Backlog, PSPI  Obiettivo: evidenziare le cose positive dello sprint e ricercare i motivi degli errori, metabolizzare il processo Sunday, February 5, 12
  • 111. Previsioni e Stime 1.Una previsione metereologica e’ valida 1-2 giorni 2.Al terzo giorno e’ gia’ molto incerta 3.Oltre il terzo e’ una speculazione Sunday, February 5, 12
  • 112. Scrum Planning Sunday, February 5, 12
  • 113. Pianificare in Agile??? Si pianifica di piu’ e piu’ spesso! Me tenere sotto controllo il flusso del valore (Value Flow) la pianificazione e la stima sono fondamentali Riflettere sulle sitme a posteriori aiuta a stimare meglio la volta dopo Sunday, February 5, 12
  • 114. Poker game con Fibonacci Sunday, February 5, 12
  • 115. Stime • Il Product Owner e’ responsabile per assegnare il business value di ogni item del BP • Il Team e’ responsabile per stimare l’effort di sviluppo di ogni item del PB • Il Team e il Product Owner fanno un’analisi di rischio • Lo Scrum Master aiuta in questa fase • Scrum non definisce tecniche di stima • Story Points e Ideal Time • Range Estimation • PERT Sunday, February 5, 12
  • 116. Stime – Poker Game • Ogni membro del team si crea delle carte con la sequenza di Fibonacci: 1, 2, 3, 5, 8, 13, 21, BIG • Le user stories sono visibili a muro o sul pavimento o su un tavolo • Lo scrum master sceglie una User Story rappresentativa della quale si conoscono abbastanza dettagli e che sia piccola • Il team concorda che quella vale 1 • Lo Scrum Master scegli un’altra User Story • Ogni membro del team di nascosto sceglie una carta • Quanto tutti hanno scelto scoprono la carta • La maggioranza vince, si discute sulle differenze se ci sono disaccordi e si rivota • Si itera il processo fino a quando non sono finite le User Stories selezionate Sunday, February 5, 12
  • 117. Stime - PERT ID Days --> optim um likely worst pert var 1 Global Analysis 1.1 Analysi s 1,00 1,00 1,00 1,00 0,00 1.2 Design 2,00 2,00 2,00 2,00 0,00 2 Codin g 2.1 Desktop container 2.1.1 Window Manager 1,00 2,00 2,00 1,83 0,17 2.1.2 Background 0,20 0,50 1,00 0,53 0,13 2.1.3 Screen resize 0,20 0,20 0,50 0,25 0,05 2.1.4 HTML Integration 0,10 0,20 0,50 0,23 0,07 2.1.5 Unit Testing 0,50 1,00 1,00 0,92 0,08 Sunday, February 5, 12
  • 119. Risk analysis Tenere un registro dei rischi del progetto Stimare un peso dell’impatto Stimare una probabilita’ che il rischio possa manifestarsi Definire dei piani di contigency Attribuire dei responsabili ad ogni rischio Si possono usare analisi di Montecarlo (vedi Riskology - http://www.systemsguild.com/riskology)  Tutte le attivita’ di risk vanno nello Sprint Backlog Sunday, February 5, 12
  • 120. Esempio di Risk register Risk Category Risk Name Risk Number Probability (1-3) Impact (1-3) Risk Score Mitigation Contingency Action By Action When Guests The guests find the party boring 1.1. 2 2 4 Invite crazy friends, provide sufficient liquor Bring out the karaoke Mack within 2hrs Guests Drunken brawl 1.2. 1 3 3 Don’t invite crazy friends, don't provide too much liquor Bring in the guards Jerry Now *da wikipedia Sunday, February 5, 12
  • 121. Priorita’! 3 variabili Costo Valore Rischio Priorita’ Product Owner Priorita’ massima: minor costo, maggior valore (rischio minimo) Sunday, February 5, 12
  • 122. Esercizio Fare la stima del vostro product backlog Sunday, February 5, 12
  • 123. Scrum Reporting Sunday, February 5, 12
  • 124. Report in Scrum Product Burndown Chart Sprint Burndown Chart Test reports Architecture diagram status Sunday, February 5, 12
  • 125. Trasparenza a diversi livelli I Chicken NON devono vedere lo Sprint Burndowchart La trasparenza e’ sulle features completate NON su come il team si auto organizza Lo sprint backlog e’ per il team, meglio su carta! Sunday, February 5, 12
  • 126. Velocity = 43 points in 10 days Sunday, February 5, 12
  • 128. Alcuni scrum anti-patterns •Ottimizzazione prematura del processo Scrum •Accumulare lavoro non fatto e continuare a farne di nuovo •Lavorare come singoli paladini e non in Team •Piu’ di un Product Owner •Nessun Stakeholder •“Copiate e migliorate quello che c’era prima” •Nuove storie sono aggiunte allo Sprint backlog durante lo sprint (con la scusa Sunday, February 5, 12
  • 129. 12 Principi di Agile http://agilemanifesto.org/iso/it/principles.html Sunday, February 5, 12
  • 130. “La nostra massima priorità è soddisfare il cliente rilasciando software di valore, fin da subito e in maniera continua.” Unit Tesing + Continuos Integration Jenkins-CI Sunday, February 5, 12
  • 132. “Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo. I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente.” Prendere le decisioni architetturali il piu’ tardi possibile per poterle cambiare quando serve. Prendere le decisioni di valore. Semplicita’!!!! Sunday, February 5, 12
  • 133. “Consegnamo frequentemente software funzionante, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi.” Ritmo e buone abitudini Sunday, February 5, 12
  • 134. “Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto.” Stesso ufficio openspace oppure Video conferenze Sunday, February 5, 12
  • 135. “Fondiamo i progetti su individui motivati. Diamo loro l'ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacità di portare il lavoro a termine.” No incentivi singoli Incentivi sul team Trasparenza Comunicazione Autonomia Fiducia Sunday, February 5, 12
  • 136. “Una conversazione faccia a faccia è il modo più efficiente e più efficace per comunicare con il team ed all'interno del team.” Non dire le cose per email quando si possono dire di persona Sunday, February 5, 12
  • 137. “Il software funzionante è il principale metro di misura di progresso.” I feedback del cliente sono la piu’ grande misura del successo del progetto Sunday, February 5, 12
  • 138. “I processi agili promuovono uno sviluppo sostenibile. Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere indefinitamente un ritmo costante.” Ritmo sostenibile Sunday, February 5, 12
  • 139. “La continua attenzione all'eccellenza tecnica e alla buona progettazione esaltano l'agilità.” Eccellenza e progettazione portano alla semplicita’ Sunday, February 5, 12
  • 140. “La semplicità - l'arte di massimizzare la quantità di lavoro non svolto - è essenziale.” Imports System.Console Class HelloWorld Public Shared Sub Main() WriteLine("Hello, world!") End Sub End Class
  • 142. ANTI-IF CAMPAGN esercizio Sunday, February 5, 12
  • 143. “Le architetture, i requisiti e la progettazione migliori emergono da team che si auto-organizzano.” No micro gestione Si’ ritmo e abitudini No best practices Si’ preferred practices Sunday, February 5, 12
  • 144. “A intervalli regolari il team riflette su come diventare più efficace, dopodiché regola e adatta il proprio comportamento di conseguenza.” Essere leali e obiettivi Saper gioire per i successi Saper riconoscere gli sbagli Non vivere con l’incubo dell’errore ma con la consapevolezza di saper riconoscere e correggere gli errori Sunday, February 5, 12
  • 145. 5 WHYs esercizio Sunday, February 5, 12
  • 146. Esercizio A coppie scrivere su un foglio a muro • 4 valori di Agile • 12 principi sottostanti ad Agile Sunday, February 5, 12
  • 147. Simuliamo un progetto Agile Agile: The Board Game Sunday, February 5, 12
  • 148. Limiti di Scrum •Si tende a pianificare solo lo sprint successivo. •Si tende ad isolare il team dal management. •Si tende ad applicare prima di avere software di qualita’ e testato in modo automatico. •Scrum non dice come fare le cose •Si pensa che i team auto-organizzati, da soli, possano migliorare il processo. Non basta, il middle-management ha un ruolo findamentale. •La colocation e il single project sono molto utopici. Sunday, February 5, 12
  • 149. XP - eXtreme programming Sunday, February 5, 12
  • 150. Pratiche XP • Pair Programming: sviluppare le parti piu’ critiche insieme sullo stesso pc condividendo le scelte e il codice • Test Driven Development: scrivere il test e poi sviluppare la funzionalita’ • Continuos Integration: integrare in modo continuo tutti i componenti software riducendo il rischio di integrazione posticipata • Refactoring: rivedere periodicamente il codice migliorandolo e rendendolo piu’ mantenibile • Collective Code Ownership: il codice sorgente e’ di tutti e tutti sanno metterci le mani • Simple design: tenere sempre il sistema semplice Sunday, February 5, 12
  • 151. Lean •Ha origini dal TPS (Toyota Production System) sviluppato tra il 1948-1975 •TPS si basa su •Continuo miglioramento - Kaizen •Rispetto per le persone •Una vision a lungo termine •Il giusto processo crea i giusti risultati •Creare valore attraverso lo sviluppo delle persone •Risolvere subito i problemi •Ha due pilastri •Just-in-time •Automation •Uno scopo •Ridurre gli sprechi •Dare valore subito al cliente Sunday, February 5, 12
  • 152. Lean Flow Spostare l’attenzione dalla creazione del prodotto al processo produttivo: “the production flow” http://www.lean.org/WhatsLean/Principles.cfm Sunday, February 5, 12
  • 153. 5 principi di Lean 1.Definire il valore, per ogni famiglia di prodotto, dal punto di vista del cliente finale. 2.Identificare i passi del value stream, per ogni famiglia di prodotto, eliminando possibilmente tutti gli step che non creano valore. 3.Assicurarsi che i vari passi del value siano vicini e possano creare un flusso veloce verso il cliente finale. 4.Una volta che il value stream e’ attivato favorire l’intervento del cliente per atto ad aumentare il valore degli step. 5.Una volta che il valore e’ definito, il value stream identificato, gli sprechi rimossi e il flusso introdotto ricominciare di nuovo il processo fino a quando il valore e’ prodotto senza sprechi. Sunday, February 5, 12
  • 154. Fresare Saldare Verniciare Assemblare Value Stream Mapping Sunday, February 5, 12
  • 156. 10 maggiori cause di spreco Qualsiasi cosa che non aggiunge valore al cliente finale e’ considerata uno spreco: 1. Produzione di cose non necessarie 2. Attesa 3. Delegare il lavoro 4. Processi non necessari 5. Lavoro non completato 6. Cambio continuo di attivita’ 7. Evidenziare i difetti alla fine del progetto 8. Team che non lavora al suo potenziale 9. Perdita di conoscenza 10.Assecondare i desideri piu’ che le necessita’ razionali Sunday, February 5, 12
  • 157. Inbox La posta non letta e’ un esempio di spreco: Aumento consistente di giorno in giorno della posta non letta (“teoria del vetro rotto”) Mancanza di evidenza dell’importanza dei vari messaggi Maggior tempo per discriminare la posta importante da quella meno importante Lentezza del client di posta! Google ha proposto la priority inbox e funziona! Oppure cancellate la posta che non vi serve  Sunday, February 5, 12
  • 158. Bugs Una lista molto lunga di bugs “vecchi” non aiuta a mantenere il flusso di valore: Se un bug e’ piu’ vecchio di X mesi significa che non e’ importante (altrimenti sarebbe venuto giu’ il mondo!) Avere tanti bugs e non risolverli non aiuta a dare le giuste priorita’ Meglio mettere nel cassetto i bugs e riaprire il cassetto quando si avra’ il tempo Meglio non avere bugs! Sunday, February 5, 12
  • 159. Gemba In Toyota e’ la pratica di andare a vedere la linea di produzione I manager non guardano email, grafici, report, ma direttamente la linea di produzione I problemi sono vissuti sul campo, ci si rende conto della complessita’ e delle persone. Nei progetti software cos’e’ il Gemba? Sunday, February 5, 12
  • 161. Title: What you are talking about. Background Current Situation Goal Analysis Recommendations Plan Follow - up Why are you talking about it? Where do we stand? Where we need to be? What is the specific change you want to accomplish now? -What is the root cause(s) of the problem? - What is your proposed countermeasure(s)? What activities will be required for implementation and who will be responsible for what and when? How we will know if the actions have the impact needed? What remaining issues can be anticipated? A3 -Verble/Shook What’s the problem? Sunday, February 5, 12
  • 163. Title: Background Current Situation Goal Analysis Recommendations Plan Follow - up A3 -Verble/Shook  Sunday, February 5, 12
  • 164. Il tempo non basta mai sett 1 sett 2 sett 3 sett 4 sett 5 Done Done Done Sunday, February 5, 12
  • 165. Funziona? Pro  Si pensa di essere piu’ produttivi  Diversificare aiuta a non annoiarsi  Si puo’ star dietro a piu’ clienti  Si possono sfruttare i “tempi morti” Contro  Sotto stress  Ore piccole  Tempo perso nel cambio di contesto Sunday, February 5, 12
  • 166. … e se fossimo monotasking? sett 1 sett 2 sett 3 sett 4 sett 5 Done Done Done Sunday, February 5, 12
  • 167. Pomodoro Technique 1. Scegli il task da completare 2. Imposta il Pomodoro a 25 minuti (Il Pomodoro è il timer) 3. Lavora sul task senza distrazioni o interruzioni fino a che il Pomodoro non suona, dopo metti una spunta nel tuo foglio della To Do List 4. Prenditi un piccolo break (5 minuti vanno bene) 5.Ogni 4 pomodori prenditi una pausa un po' più lunga www.pomodorotechnique.com Sunday, February 5, 12
  • 168. L’importanza del time-boxing •Aiuta a concentrarsi su una singola attivita’ •Da quell’adrenalina positiva per portare a termine un compito •Permette di semplificare i task •Riduce il lavoro inutile •Incrementa la concretezza (stare con i piedi per terra) •Permette di avere un ritmo nel lavoro (non ci sono piu’ riunioni senza fine che finiscono con un ‘?’) •Aiuta a trovare accordi con se stessi e con il team •Permette di pianificare meglio le attivita’ e stimarne il costo Sunday, February 5, 12
  • 169. WIP Ridurre il Work In Progress aiuta a •Aumetare la qualita’ del lavoro finito •Semplificare processi e procedure •Aumentare la reattivita’ a richieste spot •Migliorare la vita in azienda Sunday, February 5, 12
  • 170. Kanban Board Sunday, February 5, 12
  • 171. Questa e’ molto molto semplice. Tipicamente si mettono le fasi di progetto e le code di attesa. - WIP limitato - Persone assegnate solo quando server - Continua revisione priorita’ - Piu’ progetti insieme, anche di diversa natura Sunday, February 5, 12
  • 172. Altro esempio di Kanban board Sunday, February 5, 12
  • 174. Agile anti-patterns Never meeting iteration commitments Testing late Poor estimating Not trying to improve Not assigning action items http://www.agileforall.com/2009/06/03/agile-antipattern-insanity- 5-insanity-antipatterns/ http://agileantipatterns.com/ Sunday, February 5, 12
  • 175. Scrum# E’ una evoluzione di Scrum ponendo Scrum all’interno del Lean Thinking Rilassa certi aspetti a seconda dei progetti. Es: Iterazioni: time boxed oppure flow-based. Prodotto: il team e’ responsabile del prodotto. Management: i manager guida e fa coach al team. Si lavora insieme. Imparare: dal modello del flow con la big picture sempre presente. Priorita’: non solo valore per il cliente ma anche sulla riduzione degli sprechi. Continuos Integration: build che funzionano in automatico Acceptance Test: definiti prima di codificare. Limitare il WIP: non iniziare nuove storie se non sono concluse quelle precendenti. Sunday, February 5, 12
  • 176. Scrum Scaling Sunday, February 5, 12
  • 177. Scrum di Scrum Ogni team lavora con un suo Scrum Ogni settimana un membro del team si incontra con gli altri membri degli altri team per fare un Daily meeting Puo’ essere scalato in modo indefinito I rappresentanti possono cambiare di volta in volta Sunday, February 5, 12
  • 178. Team Virtuali E’ possibile applicare Scrum da remoto su team dislocati geograficamenti E’ difficile farlo funzionare I tools di comunicazione sono fondamentali, devono permettere un editing live degli oggetti (es: Google Docs) Chat, Call e Video Call devono essere sempre accessibili Il repository del codice sempre condiviso I server di test e di continuos integration hanno un ruolo molto importante perche’ evidenziano i problemi che di solito non emergono naturalmente nei team co-located Sunday, February 5, 12
  • 179. Cosa evitare Fare Scrum Team per componenti Il codice e’ di tutti, non del Team singolo, NO CODICE PRIVATO Non esistono gruppi speciali: il gruppo degli architect, il gruppo dei designer ecc  I gruppi sono Cross Funzionali Feature Teams! SI’! Sunday, February 5, 12
  • 180. Introdurre Agile in Azienda Sunday, February 5, 12
  • 181. Introdurre una metodologia Agile in Azienda Sunday, February 5, 12
  • 183. Come aiutare Fare un A3 della situazione con Value Stream Mapping Affrontare un problema alla volta Non cercare di ottimizzare tutto subito Avere una spinta molto forte dai top-manager Cercare consenso dal basso Introdurre un Changing Agent Chiedere la consulenza di un Coach. Il Coach e’ una persona che riduce di molto la fase di caos e poi se ne va. Sunday, February 5, 12
  • 184. Una ricetta per Kanban 1. Concentrarsi a rilasciare sempre software di Qualita': TDD, Code Inspection, Arcihtecture and Design Patterns e Software Factories 2.Ridurre il Work-in-Progress (WIP) 3.Rilasciare spesso 4.Bilanciare la domanda di nuove funzionalita' con il lavoro che si riesce a smaltire (Throughput) 5.Dare priorita' alle cose 6.Ridurre le cause di variabilita' migliorando la predicibilita' da “Kanban: Successful Evolutionary Change for Your Technology Business” Sunday, February 5, 12
  • 186. La chiusura di un progetto Raccogliere le lesson learned Celebrare il successo e imparare degli errori Non disperdere il know-how http://www.svgopen.org/2008/papers/47- Real_time_monitor_in_SVG_a_use_case_in_Machining_Technology_HMI/ Sunday, February 5, 12
  • 187. Le certificazioni Agile SCRUM - www.scrumalliance.org Master Practitioner Coach Trainer PMI-ACP - www.pmi.org Atern DSDM - www.dsdm.org Sunday, February 5, 12
  • 188. Studiare come Scrum Master Seguire il corso di Scrum Master di due giorni insegnato da un Scrum Trainer Certificato Applicare Scrum su un progetto e/o partecipare ad un progetto Scrum Studiare il libro di Ken Schware “Agile Project Management with Scrum” Sostenere un esame online con 40 domande in 60 minuti. Sunday, February 5, 12
  • 189. Studiare per PMI-ACP Pre-requisiti: 2000h di PM + 1500h di Agile PM + 21h di Training su Agile (16 ore questo corso) Studiare i libri: Agile Project Management with Scrum The Art of Agile development User Stories Applied Agile Estimation and Plannig Scaling Lean Agile Development: Thinking and Organizational Tools for Large-Scale Scrum The Software Project Manager's Bridge to Agility Lean-Agile Software Development: Achieving Enterprise Agility Coaching Agile Teams: A Companion for ScrumMasters, Agile Coaches, and Project Manager... Agile Project Management: Creating Innovative Products (2nd Edition) Agile Retrospectives: Making Good Teams Great Kanban: Successful Evolutionary Change for Your Technology Business Inoltre questo link ti da una panoramica di tutte le aree da studiare - http://agiletraining.com/ 2011/09/24/pmi-acp-agile-certification-exam-study-tips Qui l’handbook PMI - http://www.pmi.org/Certification/~/media/PDF/Certifications/PMI-ACP_ Handbook.ashx Sunday, February 5, 12
  • 190. Links e tools utili casi d'uso: www.scrumalliance.org/resources?tag=experience+report libri consigliati: www.scrumalliance.org/pages/scrum_student_resources presentazioni: www.scrumalliance.org/resources?tag=Presentations docs: www.scrumalliance.org/resources?tag=2010+Shanghai+Gathering fumetti: www.implementingscrum.com/section/blog/cartoons/ contratti: agile rfp - www.methodsandtools.com/archive/archive.php? id=84 agile manifesto: agilemanifesto.org/iso/it/principles.html pmi: pmi.org lean: www.lean.org scrum alliance: www.scrumalliance.org pecha-kucha: www.pecha-kucha.org/ Sunday, February 5, 12
  • 191. Letture consigliate Sunday, February 5, 12
  • 192. Progetti Complessi Persone Mercato e Requisiti dinamici Controllare il Progetto Motivare il Team Prodotti/Servizi di Qualita’ e Valore A GILE! Agile quando? Sunday, February 5, 12
  • 193. Riferimenti Giulio Roggero roggero@intre.it www.intre.it http://it.linkedin.com/in/giul ioroggero Sunday, February 5, 12
  • 194. Ringraziamenti Si ringraziano tutti i partecipanti ai corsi 2011 per i preziosi feedback e la grande partecipazione al corso. Si ringrazia Michael Vizdos che con i suoi fumetti mi ha ispirato e divertito - www.implementingscrum.com. Ringrazio tutti i colleghi di Intré che fanno da cavia per tutte le mie sperimentazioni. Ringrazio Elena, Arturo e Edoardo per la pazienza che hanno avuto durante le mie sere di studio e ricerca. Sunday, February 5, 12
  • 195. Diritti Queste slide sono il frutto di un anno di lavoro e dieci anni di esperienza. Non posso dire che siano complete e perfette ma possono essere una buona base di partenza. Ho deciso di pubblicarle Open Source per favorire la diffusione di Agile e del Project Management in generale. In questo periodo di difficile cambiamento sono convinto che applicare questi concetti permetterà a molte aziende di diventare più competitive nel mercato e più vivibili al loro interno. Potete usare questo materiale come meglio ritenete opportuno secondo la licenza Creative Common Attribution-ShareAlike 3.0 http://creativecommons.org/licenses/by-sa/3.0/ Sunday, February 5, 12