Top Banner
SCAI S.p.A. 1 Agile Methodologies: Scrum. Kanban & Co. di Alessandro Graps Bologna, 28/10/2013 Project & Delivery Area
305

Agile methodologies

Apr 16, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Agile methodologies

SCAI S.p.A. 1

Agile Methodologies: Scrum. Kanban & Co.di

Alessandro Graps

Bologna, 28/10/2013

Project & Delivery Area

Page 2: Agile methodologies

SCAI S.p.A. 2

There are no best practices...

Only good practices...

IN THE CONTEXT...

Project & Delivery Area

Page 3: Agile methodologies

SCAI S.p.A. 3

IndiceTeorico

Metodologia tradizionaleAgile Methodologies

ScrumKanbanXPScrum vs KanbanPerche’ utilizzarle

ConclusioniWorkshop

Project & Delivery Area

Page 4: Agile methodologies

SCAI S.p.A. 4

Brief History of Development Methodologies

WATERFALL (Royce)

Requirements, designimplementation, verification & maintenance

1960 85 9119801970

V-MODEL (Anon)

Aligns testing toWaterfall development

SPIRAL MODEL (Barry Boehm)

Iterative

RAD(James Martin)

Prototyping, iterative, time-boxed, user driven

RUP (Rational)

Object oriented, iterative, time-boxed, user driven

AGILE e.g. XP(Kent Beck)

Incremental, user driven, low process

98 99

Waterfall V-Model

Spiral Model

RAD

RUP

Metodhologies

Project & Delivery Area

Page 5: Agile methodologies

SCAI S.p.A. 5

Metodologia Tradizionale: Waterfall

Requirements

Design

Implementation

Verification

Manteinance

Project & Delivery Area

Page 6: Agile methodologies

SCAI S.p.A. 6

Metodologia Tradizionale

Strutturata

Project & Delivery Area

Page 7: Agile methodologies

SCAI S.p.A. 7

Metodologia Tradizionale

StrutturataGrandi Progetti

Project & Delivery Area

Page 8: Agile methodologies

SCAI S.p.A. 8

Metodologia Tradizionale

StrutturataGrandi ProgettiSequenziale

Project & Delivery Area

Page 9: Agile methodologies

SCAI S.p.A. 9

Metodologia Tradizionale

StrutturataGrandi ProgettiSequenzialeAdatta a situazioni dove il cambiamento non e’ comune

Project & Delivery Area

Page 10: Agile methodologies

SCAI S.p.A. 10

Metodologia Tradizionale

StrutturataGrandi ProgettiSequenzialeAdatta a situazioni dove il cambiamento non e’ comune

Interna

Project & Delivery Area

Page 11: Agile methodologies

SCAI S.p.A. 11

Metodologia Tradizionale

StrutturataGrandi ProgettiSequenzialeAdatta a situazioni dove il cambiamento non e’ comune

InternaUn processo che richiede chiarezza sulla definizione dei requisiti

Project & Delivery Area

Page 12: Agile methodologies

SCAI S.p.A. 12

Metodologia Tradizionale:Vantaggi

L’approccio a cascata cerca di acquisire ed analizzare tutti i requisiti del progetto prima di avviare il disegno dell’applicazione.

Project & Delivery Area

Page 13: Agile methodologies

SCAI S.p.A. 13

Metodologia Tradizionale:Vantaggi

L’approccio a cascata cerca di acquisire ed analizzare tutti i requisiti del progetto prima di avviare il disegno dell’applicazione.

Prevede tempi e costi in anticipo controllando il contenuto per rispettarli.

Project & Delivery Area

Page 14: Agile methodologies

SCAI S.p.A. 14

Metodologia Tradizionale:Vantaggi

L’approccio a cascata cerca di acquisire ed analizzare tutti i requisiti del progetto prima di avviare il disegno dell’applicazione.

Prevede tempi e costi in anticipo controllando il contenuto per rispettarli.

In caso di turnover tra il personale, la quantita’ di documentazione permette un minimo impatto del nuovo personale sul progetto

Project & Delivery Area

Page 15: Agile methodologies

SCAI S.p.A. 15

Metodologia Tradizionale:Svantaggi

Una volta che uno step e’ completato,non si puo’ tornare allo step precedente

Project & Delivery Area

Page 16: Agile methodologies

SCAI S.p.A. 16

Metodologia Tradizionale:Svantaggi

Una volta che uno step e’ completato,non si puo’ tornare allo step precedente

Si basa fortemente sui requisiti iniziali. Se tali requisiti sono difettosi, il progetto e’ destinato a fallire

Project & Delivery Area

Page 17: Agile methodologies

SCAI S.p.A. 17

Metodologia Tradizionale:Svantaggi

Una volta che uno step e’ completato,non si puo’ tornare allo step precedente

Si basa fortemente sui requisiti iniziali. Se tali requisiti sono difettosi, il progetto e’ destinato a fallire

Il processo iniziera’ da capo se sara’ rilevato un’errore di requisito oppure abbiamo necessita’ di un cambiamento di requisito

Project & Delivery Area

Page 18: Agile methodologies

SCAI S.p.A. 18

Metodologia Tradizionale:Svantaggi

Una volta che uno step e’ completato,non si puo’ tornare allo step precedente

Si basa fortemente sui requisiti iniziali. Se tali requisiti sono difettosi, il progetto e’ destinato a fallire

Il processo iniziera’ da capo se sara’ rilevato un’errore di requisito oppure abbiamo necessita’ di un cambiamento di requisito

Test solo alla fine

Project & Delivery Area

Page 19: Agile methodologies

SCAI S.p.A. 19

Metodologia Tradizionale:Svantaggi

Non si prendono in considerazione le continue evoluzioni del cliente. Ogni cambiamento sara’ causa di ritardi.

Project & Delivery Area

Page 20: Agile methodologies

SCAI S.p.A. 20

Facciamo un Test

Test di interferenza• Rosso• Giallo• Verde• Blu• Rosso • Blu • Giallo• Verde• Blu

Non leggete le parole. Provate ad elencare i colori rapidamente ad alta voce.

Project & Delivery Area

Page 21: Agile methodologies

SCAI S.p.A. 21

Interferenza

Nel color test la maggior parte delle persone legge le parole anche se e’ stato chiesto di elencare i colori

Quando si guarda la figura si vedono sia i colori che le parole. Queste due cose sono in contrasto tra loro. E’ necessario quindi prendere una decisione

Project & Delivery Area

Page 22: Agile methodologies

SCAI S.p.A. 22

Interferenza

Poiche’ l’esperienza insegna che il significato di una parola e’ piu’ importante del colore con cui e’ scritta c’e’ un’interferenza quando si cerca di porre attenzione al suo colore

Questo esperimento dimostra che non si ha sempre il controllo completo su cio’ sui cui si pone attenzione: il rumore di fondo interferisce

Project & Delivery Area

Page 23: Agile methodologies

SCAI S.p.A. 23

Rumore

E’ funzione:Dei PrerequisitiDelle PersoneDella TecnologiaDei Disturbi

Project & Delivery Area

Page 24: Agile methodologies

SCAI S.p.A. 24

Agile Methodologies

Project & Delivery Area

Page 25: Agile methodologies

SCAI S.p.A. 25

Agile Methodologies

Cosa?

Project & Delivery Area

Page 26: Agile methodologies

SCAI S.p.A. 26

Agile Methodologies

Cosa?I metodi agili si propongono di sviluppare software che abbia un alto valore per il cliente, rilasciandolo presto e a ritmo costante

Project & Delivery Area

Page 27: Agile methodologies

SCAI S.p.A. 27

Agile Methodologies

Quando?

Project & Delivery Area

Page 28: Agile methodologies

SCAI S.p.A. 28

Agile Methodologies

Quando?Nel 2001 17 proffessionisti di spicco si radunarono in una localita’ sciistica dello Utah per discutere assiame del futuro del mondo software

Project & Delivery Area

Page 29: Agile methodologies

SCAI S.p.A. 29

Agile Methodologies

Perche’?

Project & Delivery Area

Page 30: Agile methodologies

SCAI S.p.A. 30

Agile Methodologies

Perche’?... Stanchi di assistere ad una percentuale sempre crescente di progetti sofware che si frantumavano sulle rocce al termine della cascata o rimanevano impantanati in cicli infiniti e fallimentari lungo la strada

Project & Delivery Area

Page 31: Agile methodologies

SCAI S.p.A. 31

Agile Methodologies

Quindi?

Project & Delivery Area

Page 32: Agile methodologies

SCAI S.p.A. 32

Agile Methodologies

Quindi?Dall’incontro di queste persone si genero’ una riflessione profonda e limpida: il metodo ingegneristico applicato al sofware non e’ detto che funzioni in quanto lo sviluppo sofware e’ un’attivita’ creativa e non produttiva, richiede l’apporto di knowledge worker e non di operatori con una fore componente artigianale e di iterazione umana

Project & Delivery Area

Page 33: Agile methodologies

Agile Methodologies

SCAI S.p.A. 33Project & Delivery Area

Page 34: Agile methodologies

SCAI S.p.A. 34

Agile Methodologies

Project & Delivery Area

Page 35: Agile methodologies

SCAI S.p.A. 35

Agile Methodologies

12 Regole

Project & Delivery Area

Page 36: Agile methodologies

SCAI S.p.A. 36

Agile Methodologies

La nostra massima priorita’ e’ soddisfare il cliente rilasciando software di valore, fin subito e in maniera continua

Project & Delivery Area

Page 37: Agile methodologies

SCAI S.p.A. 37

Agile Methodologies

Accogliamo i cambiamenti nei requisiti, anche a stadi avanzati dello sviluppo. I processi agili sfruttano il cambiamento a favore del vantaggio competitivo del cliente.

Project & Delivery Area

Page 38: Agile methodologies

SCAI S.p.A. 38

Agile Methodologies

Consegnamo frequentemente software, con cadenza variabile da un paio di settimane a un paio di mesi, preferendo i periodi brevi

Project & Delivery Area

Page 39: Agile methodologies

SCAI S.p.A. 39

Agile Methodologies

Committenti e sviluppatori devono lavorare insieme quotidianamente per tutta la durata del progetto

Project & Delivery Area

Page 40: Agile methodologies

SCAI S.p.A. 40

Agile Methodologies

Fondiamo i progetti su individui motivati.Diamo loro l’ambiente e il supporto di cui hanno bisogno e confidiamo nella loro capacita’ di portare a termine il lavoro

Project & Delivery Area

Page 41: Agile methodologies

SCAI S.p.A. 41

Agile Methodologies

Una conversazione faccia a faccia e’ il modo piu’ efficace per comunicare con il team ed all’interno del team

Project & Delivery Area

Page 42: Agile methodologies

SCAI S.p.A. 42

Agile Methodologies

Il software funzionante e’ il principale metro di misura di progresso

Project & Delivery Area

Page 43: Agile methodologies

SCAI S.p.A. 43

Agile Methodologies

I processi agili promuovono uno sviluppo sostenibile.

Gli sponsor, gli sviluppatori e gli utenti dovrebbero essere in grado di mantenere indefinitivamente un ritmo costante.

Project & Delivery Area

Page 44: Agile methodologies

SCAI S.p.A. 44

Agile Methodologies

La continua attenzione all’eccellenza tecnica e alla buona progettazione esaltano l’agilita’

Project & Delivery Area

Page 45: Agile methodologies

SCAI S.p.A. 45

Agile Methodologies

La semplicita’ – l’arte di massimizzare la quantita’ di lavoro non solto- e’ essenziale

Project & Delivery Area

Page 46: Agile methodologies

SCAI S.p.A. 46

Agile Methodologies

Le architetture, i requisiti e la progettazione migliori emergono da team che si auto organizzano

Project & Delivery Area

Page 47: Agile methodologies

SCAI S.p.A. 47

Agile Methodologies

A intervalli regolari il team riflette su come diventare piu’ efficace, dopodiche’ regola e adatta il proprio comportamento di conseguenza

Project & Delivery Area

Page 48: Agile methodologies

SCAI S.p.A. 48

Agile Methodologies

Project & Delivery Area

Scr

um

Kan

ban

XP

Altr

e

Agile

Page 49: Agile methodologies

SCAI S.p.A. 49

Agile Methodologies

Project & Delivery Area

How is agile

different?

Change in

feedback

Emphasis

(SCRUM)

Reduction in

evolution costs(KANB

AN)

Reduction in

coordination costs(XP)

Page 50: Agile methodologies

SCAI S.p.A. 50

SCRUM

Project & Delivery Area

Page 51: Agile methodologies

Scrum

SCAI S.p.A. 51

Hirotaka Takeuchi and Ikujiro Nonaka, “The New Product Development Game”, Harvard Business Review, January 1986.

“l'approccio a 'staffetta' nello sviluppo di un prodotto... potrebbe entrare in conflitto con l'obiettivo di massimizzare flessibilità & velocità. Al contrario, un approccio “olistico” (a mischia stile rugby), dove una squadra cerca di avanzare un passo alla volta, potrebbe essere più funzionale per centrare i requisiti di competitività.”

Page 52: Agile methodologies

SCAI S.p.A. 52

SCRUM

CancelGift wrapReturn

Sprint2-4 weeks

ReturnSprint goal

Sprint backlog

Potentially shippableproduct increment

Productbacklog

CouponsGift wrapCoupons

Cancel

24 hours

Project & Delivery Area

Page 53: Agile methodologies

SCAI S.p.A. 53

SCRUM:Mettiamo tutto insieme

Project & Delivery Area

Page 54: Agile methodologies

SCAI S.p.A. 54

SCRUM:Sprint

Un progetto Scrum deve evolvere con una serie di Sprint

Project & Delivery Area

Page 55: Agile methodologies

SCAI S.p.A. 55

SCRUM:Sprint

Un progetto Scrum deve evolvere con una serie di SprintCome in un’iterazione XP

Project & Delivery Area

Page 56: Agile methodologies

SCAI S.p.A. 56

SCRUM:Sprint

Un progetto Scrum deve evolvere con una serie di SprintCome in un’iterazione XP

Ha una durata di 2-4 settimane o un mese al massimo

Project & Delivery Area

Page 57: Agile methodologies

SCAI S.p.A. 57

SCRUM:Sprint

Un progetto Scrum deve evolvere con una serie di SprintCome in un’iterazione XP

Ha una durata di 2-4 settimane o un mese al massimo

Una durata costante di ogni Sprint aiuta a sviluppare meglio il ritmo

Project & Delivery Area

Page 58: Agile methodologies

SCAI S.p.A. 58

SCRUM:Sprint

Un progetto Scrum deve evolvere con una serie di SprintCome in un’iterazione XP

Ha una durata di 2-4 settimane o un mese al massimo

Una durata costante di ogni Sprint aiuta a sviluppare meglio il ritmo

Designed, sviluppo e test devono essere eseguiti durante lo sprint

Project & Delivery Area

Page 59: Agile methodologies

SCAI S.p.A. 59

SCRUM:Nessun cambiamento durante lo Sprint

Project & Delivery Area

Change

Page 60: Agile methodologies

SCAI S.p.A. 60

SCRUM:Nessun cambiamento durante lo Sprint

Project & Delivery Area

Change

Una buona pianificazione aiutera’ ad evitare i cambiamenti

Page 61: Agile methodologies

SCAI S.p.A. 61

SCRUM:Framework

RuoliProduct OwnerScrum MasterTeam

Project & Delivery Area

Page 62: Agile methodologies

SCAI S.p.A. 62

SCRUM:Ruoli:Product Owner

Definisce le caratteristiche del prodotto

Project & Delivery Area

Page 63: Agile methodologies

SCAI S.p.A. 63

SCRUM:Ruoli:Product Owner

Definisce le caratteristiche del prodottoDecide la data e i contenuti del rilascio

Project & Delivery Area

Page 64: Agile methodologies

SCAI S.p.A. 64

SCRUM:Ruoli:Product Owner

Definisce le caratteristiche del prodottoDecide la data e i contenuti del rilascioE’ responsabile della redditivita’ del prodotto (ROI)

Project & Delivery Area

Page 65: Agile methodologies

SCAI S.p.A. 65

SCRUM:Ruoli:Product Owner

Definisce le caratteristiche del prodottoDecide la data e i contenuti del rilascioE’ responsabile della redditivita’ del prodotto (ROI)

Definisce le priorita’ e le caratteristiche in base alle richieste del mercato

Project & Delivery Area

Page 66: Agile methodologies

SCAI S.p.A. 66

SCRUM:Ruoli:Product Owner

Definisce le caratteristiche del prodottoDecide la data e i contenuti del rilascioE’ responsabile della redditivita’ del prodotto (ROI)

Definisce le priorita’ e le caratteristiche in base alle richieste del mercato

Regola le caratterisitche e le priorita’ per ogni Sprint

Project & Delivery Area

Page 67: Agile methodologies

SCAI S.p.A. 67

SCRUM:Ruoli:Product Owner

Definisce le caratteristiche del prodottoDecide la data e i contenuti del rilascioE’ responsabile della redditivita’ del prodotto (ROI)

Definisce le priorita’ e le caratteristiche in base alle richieste del mercato

Regola le caratterisitche e le priorita’ per ogni Sprint

Accetta o rifiuta i risultati del lavoro

Project & Delivery Area

Page 68: Agile methodologies

SCAI S.p.A. 68

SCRUM:Ruoli:Scrum Master

Rappresenta la gestione del progetto

Project & Delivery Area

Page 69: Agile methodologies

SCAI S.p.A. 69

SCRUM:Ruoli:Scrum Master

Rappresenta la gestione del progettoResponsabile dei valori e le pratiche Scrum

Project & Delivery Area

Page 70: Agile methodologies

SCAI S.p.A. 70

SCRUM:Ruoli:Scrum Master

Rappresenta la gestione del progettoResponsabile dei valori e le pratiche Scrum

Rimuove gli ostacoli

Project & Delivery Area

Page 71: Agile methodologies

SCAI S.p.A. 71

SCRUM:Ruoli:Scrum Master

Rappresenta la gestione del progettoResponsabile dei valori e le pratiche Scrum

Rimuove gli ostacoliAssicursi che la squadra sia completamente funzionale e produttiva

Project & Delivery Area

Page 72: Agile methodologies

SCAI S.p.A. 72

SCRUM:Ruoli:Scrum Master

Rappresenta la gestione del progettoResponsabile dei valori e le pratiche Scrum

Rimuove gli ostacoliAssicursi che la squadra sia completamente funzionale e produttiva

Attiva una stretta collaborazione tra ruoli e funzioni

Project & Delivery Area

Page 73: Agile methodologies

SCAI S.p.A. 73

SCRUM:Ruoli:Scrum Master

Rappresenta la gestione del progettoResponsabile dei valori e le pratiche Scrum

Rimuove gli ostacoliAssicursi che la squadra sia completamente funzionale e produttiva

Attiva una stretta collaborazione tra ruoli e funzioni

Scherma la squadra da interferenze esterne

Project & Delivery Area

Page 74: Agile methodologies

SCAI S.p.A. 74

SCRUM:Ruoli:Team

Un gruppo auto-organizzato

Project & Delivery Area

Page 75: Agile methodologies

SCAI S.p.A. 75

SCRUM:Ruoli:Team

Un gruppo auto-organizzatoNon esiste nessun titolo

Project & Delivery Area

Page 76: Agile methodologies

SCAI S.p.A. 76

SCRUM:Ruoli:Team

Un gruppo auto-organizzatoNon esiste nessun titoloLa membership non dovrebbe mai cambiare

Project & Delivery Area

Page 77: Agile methodologies

SCAI S.p.A. 77

SCRUM:Framework

CerimonieSprint planningSprint reviewSprint retrospectiveDaily Scrum meeting (Morning Meeting o StandUp)

Project & Delivery Area

Page 78: Agile methodologies

SCAI S.p.A. 78

SCRUM:Cerimonie:Sprint planning

Project & Delivery Area

Sprint planning meeting

Sprint prioritization• Analyze and evaluate

product backlog• Select sprint goalSprint planning

• Decide how to achieve sprint goal (design)

• Create sprint backlog (tasks) from product backlog items (user stories / features)

• Estimate sprint backlog in hours

Sprintgoal

Sprintbacklog

Business conditions

Team capacityProduct backlog

Technology

Current product

Page 79: Agile methodologies

SCAI S.p.A. 79

SCRUM:Cerimonie:Sprint planning

Project & Delivery Area

Il team seleziona gli elementi dal backlog di prodotto che possono completare

Page 80: Agile methodologies

SCAI S.p.A. 80

SCRUM:Cerimonie:Sprint planning

Project & Delivery Area

Il team seleziona gli elementi dal backlog di prodotto che possono completare

Lo Sprint backlog viene creato

Page 81: Agile methodologies

SCAI S.p.A. 81

SCRUM:Cerimonie:Sprint planning

Project & Delivery Area

Il team seleziona gli elementi dal backlog di prodotto che possono completare

Lo Sprint backlog viene creatoLe attivita’ vengono identificate e ciascuna stimata (1-16 ore)

Page 82: Agile methodologies

SCAI S.p.A. 82

SCRUM:Cerimonie:Sprint planning

Project & Delivery Area

Il team seleziona gli elementi dal backlog di prodotto che possono completare

Lo Sprint backlog viene creatoLe attivita’ vengono identificate e ciascuna stimata (1-16 ore)

E’ un processo collaborativo, non e’ fatto solo dallo ScrumMaster

Page 83: Agile methodologies

SCAI S.p.A. 83

SCRUM:Cerimonie:Sprint planning

Project & Delivery Area

Il team seleziona gli elementi dal backlog di prodotto che possono completare

Lo Sprint backlog viene creatoLe attivita’ vengono identificate e ciascuna stimata (1-16 ore)

E’ un processo collaborativo, non e’ fatto solo dallo ScrumMaster

Progettazione ad alto livello

Page 84: Agile methodologies

SCAI S.p.A. 84

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano

Page 85: Agile methodologies

SCAI S.p.A. 85

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano15 minuti

Page 86: Agile methodologies

SCAI S.p.A. 86

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano15 minutiStand-up

Page 87: Agile methodologies

SCAI S.p.A. 87

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano15 minutiStand-upNon e’ il momento giusto per la soluzione dei problemi

Page 88: Agile methodologies

SCAI S.p.A. 88

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano15 minutiStand-upNon e’ il momento giusto per la soluzione dei problemi

Tutti sono invitati

Page 89: Agile methodologies

SCAI S.p.A. 89

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano15 minutiStand-upNon e’ il momento giusto per la soluzione dei problemi

Tutti sono invitatiSolo il team, SM e PO possono parlare

Page 90: Agile methodologies

SCAI S.p.A. 90

SCRUM:Cerimonie:Daily Meeting

Project & Delivery Area

Quotidiano15 minutiStand-upNon e’ il momento giusto per la soluzione dei problemi

Tutti sono invitatiSolo il team, SM e PO possono parlareAiuta ad evitare incontri inutili

Page 91: Agile methodologies

SCAI S.p.A. 91

SCRUM:Cerimonie:Daily Meeting::3 Domande

Project & Delivery Area

What did you do yesterday?1

Page 92: Agile methodologies

SCAI S.p.A. 92

SCRUM:Cerimonie:Daily Meeting::3 Domande

Project & Delivery Area

What will you do today?2

Page 93: Agile methodologies

SCAI S.p.A. 93

SCRUM:Cerimonie:Daily Meeting::3 Domande

Project & Delivery Area

Is anything in your way?3

Page 94: Agile methodologies

SCAI S.p.A. 94

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

Page 95: Agile methodologies

SCAI S.p.A. 95

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

DEMO

Page 96: Agile methodologies

SCAI S.p.A. 96

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

DEMOInformale

Page 97: Agile methodologies

SCAI S.p.A. 97

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

DEMOInformaleDurata di 2 ore

Page 98: Agile methodologies

SCAI S.p.A. 98

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

DEMOInformaleDurata di 2 oreNessuna diapositiva

Page 99: Agile methodologies

SCAI S.p.A. 99

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

DEMOInformaleDurata di 2 oreNessuna diapositivaTutta la squadra partecipa

Page 100: Agile methodologies

SCAI S.p.A. 100

SCRUM:Cerimonie:Sprint Review

Project & Delivery Area

Il Team presenta quello che ha fatto durante lo sprint

DEMOInformaleDurata di 2 oreNessuna diapositivaTutta la squadra partecipaTutti sono invitati

Page 101: Agile methodologies

SCAI S.p.A. 101

SCRUM:Cerimonie:Retrospettiva

Project & Delivery Area

Periodicamente ci si confronta su cosa non e’ andato

Page 102: Agile methodologies

SCAI S.p.A. 102

SCRUM:Cerimonie:Retrospettiva

Project & Delivery Area

Periodicamente ci si confronta su cosa non e’ andato

Di solito dura tutta la giornata

Page 103: Agile methodologies

SCAI S.p.A. 103

SCRUM:Cerimonie:Retrospettiva

Project & Delivery Area

Periodicamente ci si confronta su cosa non e’ andato

Di solito dura tutta la giornataFatto a fine sprint

Page 104: Agile methodologies

SCAI S.p.A. 104

SCRUM:Cerimonie:Retrospettiva

Project & Delivery Area

Periodicamente ci si confronta su cosa non e’ andato

Di solito dura tutta la giornataFatto a fine sprintTutta la squadra partecipa

Page 105: Agile methodologies

SCAI S.p.A. 105

SCRUM:Cerimonie:Retrospettiva

Project & Delivery Area

Periodicamente ci si confronta su cosa non e’ andato

Di solito dura tutta la giornataFatto a fine sprintTutta la squadra partecipaPossibilita’ di osservatori

Page 106: Agile methodologies

SCAI S.p.A. 106

SCRUM:Framework

ArtefattiProduct backlogSprint backlogBurndown charts

Project & Delivery Area

Page 107: Agile methodologies

SCAI S.p.A. 107

SCRUM:Artefatti:Product backlog

Project & Delivery Area

Elenco dei requisiti

Page 108: Agile methodologies

SCAI S.p.A. 108

SCRUM:Artefatti:Product backlog

Project & Delivery Area

Elenco dei requisitiLista di desideri (Richieste del cliente)

Page 109: Agile methodologies

SCAI S.p.A. 109

SCRUM:Artefatti:Product backlog

Project & Delivery Area

Elenco dei requisitiLista di desideri (Richieste del cliente)Ogni elemento e’ idealmente espresso in linguaggio non tecnico

Page 110: Agile methodologies

SCAI S.p.A. 110

SCRUM:Artefatti:Product backlog

Project & Delivery Area

Elenco dei requisitiLista di desideri (Richieste del cliente)Ogni elemento e’ idealmente espresso in linguaggio non tecnico

Priorita’ per il P.O.

Page 111: Agile methodologies

SCAI S.p.A. 111

SCRUM:Artefatti:Product backlog

Project & Delivery Area

Elenco dei requisitiLista di desideri (Richieste del cliente)Ogni elemento e’ idealmente espresso in linguaggio non tecnico

Priorita’ per il P.O.Le priorita’ vengono discusse all’inizio di ogni sprint

Page 112: Agile methodologies

SCAI S.p.A. 112

SCRUM:Artefatti:Sprint backlog

Project & Delivery Area

I componenti scelgono il lavoro

Page 113: Agile methodologies

SCAI S.p.A. 113

SCRUM:Artefatti:Sprint backlog

Project & Delivery Area

I componenti scelgono il lavoroIl lavoro non viene mai assegnato

Page 114: Agile methodologies

SCAI S.p.A. 114

SCRUM:Artefatti:Sprint backlog

Project & Delivery Area

I componenti scelgono il lavoroIl lavoro non viene mai assegnatoIl lavoro stimato rimanente viene aggiornato quotidianamente

Page 115: Agile methodologies

SCAI S.p.A. 115

SCRUM:Artefatti:Sprint backlog

Project & Delivery Area

I componenti scelgono il lavoroIl lavoro non viene mai assegnatoIl lavoro stimato rimanente viene aggiornato quotidianamente

Ogni membro del team puo’ aggiungere, eliminare o modificare il backlog sprint

Page 116: Agile methodologies

SCAI S.p.A. 116

SCRUM:Artefatti:Sprint backlog

Project & Delivery Area

I componenti scelgono il lavoroIl lavoro non viene mai assegnatoIl lavoro stimato rimanente viene aggiornato quotidianamente

Ogni membro del team puo’ aggiungere, eliminare o modificare il backlog sprint

Effort per lo sprint

Page 117: Agile methodologies

SCAI S.p.A. 117

SCRUM:Artefatti:Sprint backlog

Project & Delivery Area

I componenti scelgono il lavoroIl lavoro non viene mai assegnatoIl lavoro stimato rimanente viene aggiornato quotidianamente

Ogni membro del team puo’ aggiungere, eliminare o modificare il backlog sprint

Effort per lo sprintSe il task di backlog non e’ chiaro bisogna chiedere maggiore dettaglio o dividere il task se troppo complesso

Page 118: Agile methodologies

SCAI S.p.A. 118

SCRUM:Artefatti:Burndown chart

Project & Delivery Area

Rappresentazione grafica delle ore necessarie al team per ogni giorno della settimana

Lun Mar Mer Gio Ven0

10

20

30

40

50

60

Page 119: Agile methodologies

SCAI S.p.A. 119

SCRUM:Artefatti:Burndown chart

Project & Delivery Area

TasksCode the user interfaceCode the middle tierTest the middle tierWrite online help

Mon8

168

12

Tues Wed Thur Fri4

1216

711

81016 8

Page 120: Agile methodologies

SCAI S.p.A. 120

SCRUM:Artefatti:Burndown chart

Project & Delivery Area

Hour

s

40302010

0 Mon Tue Wed Thu Fri

50

Page 121: Agile methodologies

SCAI S.p.A. 121

SCRUM:Scalabilita’

Project & Delivery Area

Un tipico team e’ formato da 7 +/- 2 persone

E’ dipendente da diversi fattori:Tipo di applicazioneDimensioni del teamDispersione del teamDurata del progetto

Esistono esempi di progetti che hanno coinvolto più di 500 persone

Page 122: Agile methodologies

Scrum di Scrum

SCAI S.p.A. 122Project & Delivery Area

Page 123: Agile methodologies

SCAI S.p.A. 123Project & Delivery Area

Page 124: Agile methodologies

SCAI S.p.A. 124

Domande

Project & Delivery Area

Page 125: Agile methodologies

SCAI S.p.A. 125

Kanban

Project & Delivery Area

Page 126: Agile methodologies

SCAI S.p.A. 126

Cos’e’ Kanban?

Project & Delivery Area

Kan significa visuale e ban significa carta o lavagna

Page 127: Agile methodologies

SCAI S.p.A. 127

Cos’e’ Kanban?

Project & Delivery Area

Kan significa visuale e ban significa carta o lavagna

Kanban is a physical card used in Toyota Production System (TPS) to support non-centralized "pull" production control. It has spread to the manufacturing industry all over the world as a tool of Lean Manufacturing.

Page 128: Agile methodologies

SCAI S.p.A. 128

Kanban Practices

Project & Delivery Area

Mappa il valore del flusso

Page 129: Agile methodologies

SCAI S.p.A. 129

Kanban Practices

Project & Delivery Area

Mappa il valore del flussoOcchio particolare al lavoro

Page 130: Agile methodologies

SCAI S.p.A. 130

Kanban Practices

Project & Delivery Area

Mappa il valore del flussoOcchio particolare al lavoroLimita il WIP (Work in Progress)

Page 131: Agile methodologies

SCAI S.p.A. 131

Kanban Practices

Project & Delivery Area

Mappa il valore del flussoOcchio particolare al lavoroLimita il WIP (Work in Progress)Stabilisce una cadenza

Page 132: Agile methodologies

SCAI S.p.A. 132

Kanban Boards

Project & Delivery Area

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

Page 133: Agile methodologies

SCAI S.p.A. 133

Limita il Work in Progress

Project & Delivery Area

Riduce il multi tasking

Page 134: Agile methodologies

SCAI S.p.A. 134

Limita il Work in Progress

Project & Delivery Area

Riduce il multi taskingPrevenendo lo switching tra vari contesti

Page 135: Agile methodologies

SCAI S.p.A. 135

Limita il Work in Progress

Project & Delivery Area

Riduce il multi taskingPrevenendo lo switching tra vari contesti

Eseguire attivita’ in sequenza aumenta la produttivita’

Page 136: Agile methodologies

SCAI S.p.A. 136

Limita il Work in Progress

Project & Delivery Area

Riduce il multi taskingPrevenendo lo switching tra vari contesti

Eseguire attivita’ in sequenza aumenta la produttivita’

Massimizzazione della produttivita’

Page 137: Agile methodologies

SCAI S.p.A. 137

Limita il Work in Progress

Project & Delivery Area

Riduce il multi taskingPrevenendo lo switching tra vari contesti

Eseguire attivita’ in sequenza aumenta la produttivita’

Massimizzazione della produttivita’Migliora il lavoro di squadra

Page 138: Agile methodologies

SCAI S.p.A. 138

Limita il Work in Progress

Project & Delivery Area

Riduce il multi taskingPrevenendo lo switching tra vari contesti

Eseguire attivita’ in sequenza aumenta la produttivita’

Massimizzazione della produttivita’Migliora il lavoro di squadra

Lavorare insieme per fare le cose ben fatte

Page 139: Agile methodologies

SCAI S.p.A. 139

Limita il Work in Progress

Project & Delivery Area

Riduce il multi taskingPrevenendo lo switching tra vari contesti

Eseguire attivita’ in sequenza aumenta la produttivita’

Massimizzazione della produttivita’Migliora il lavoro di squadra

Lavorare insieme per fare le cose ben fatte

Aumenta le cross-functionality

Page 140: Agile methodologies

SCAI S.p.A. 140

Pull, Don’t Push

Project & Delivery Area

Page 141: Agile methodologies

SCAI S.p.A. 141

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:

Page 142: Agile methodologies

SCAI S.p.A. 142

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:Piccole costanti

Page 143: Agile methodologies

SCAI S.p.A. 143

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:Piccole costantiNumero di sviluppatori

Page 144: Agile methodologies

SCAI S.p.A. 144

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:Piccole costantiNumero di sviluppatoriNumero di tester

Page 145: Agile methodologies

SCAI S.p.A. 145

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:Piccole costantiNumero di sviluppatoriNumero di tester

Misuriamo il tempo medio per completare un task:

Page 146: Agile methodologies

SCAI S.p.A. 146

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:Piccole costantiNumero di sviluppatoriNumero di tester

Misuriamo il tempo medio per completare un task:Ottimizziamo per renderlo il piu’ piccolo e prevedibile possibile

Page 147: Agile methodologies

SCAI S.p.A. 147

WIP Limite Strategico

Project & Delivery Area

Partiamo con valori iniziali:Piccole costantiNumero di sviluppatoriNumero di tester

Misuriamo il tempo medio per completare un task:Ottimizziamo per renderlo il piu’ piccolo e prevedibile possibile

Adattiamo ai nostri limiti

Page 148: Agile methodologies

SCAI S.p.A. 148

La Cadenza

Project & Delivery Area

“A regular cadence, or heartbeat, establishes the capability of a team to reliably deliver working software at a dependable velocity. An organization that delivers at a regular cadence has established its process capability and can easily measure its capacity.”

Page 149: Agile methodologies

SCAI S.p.A. 149

Kanban Metrics

Project & Delivery Area

Stories in progress (SIP) When story enters stories queue set

entry date (ED) When story enters first process step set

start processing date (SPD) When story is done set finish date (FD) Cycle time (CT) = FD – SPD Waiting time (WT) = SPD – ED Throughput (T) = SIP / CT

Page 150: Agile methodologies

SCAI S.p.A. 150

Workflow Diagram

Project & Delivery Area

Page 151: Agile methodologies

SCAI S.p.A. 151

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity

Page 152: Agile methodologies

SCAI S.p.A. 152

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration

Page 153: Agile methodologies

SCAI S.p.A. 153

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Page 154: Agile methodologies

SCAI S.p.A. 154

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Page 155: Agile methodologies

SCAI S.p.A. 155

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Failed retrospective meetings

Page 156: Agile methodologies

SCAI S.p.A. 156

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Failed retrospective meetings Retrospective meetings are waste

Page 157: Agile methodologies

SCAI S.p.A. 157

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Failed retrospective meetings Retrospective meetings are waste

Shared people

Page 158: Agile methodologies

SCAI S.p.A. 158

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Failed retrospective meetings Retrospective meetings are waste

Shared people We have a single pool of developers for some

projects

Page 159: Agile methodologies

SCAI S.p.A. 159

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Failed retrospective meetings Retrospective meetings are waste

Shared people We have a single pool of developers for some

projects Simplicity

Page 160: Agile methodologies

SCAI S.p.A. 160

Kanban:5 Ragioni errate per applicare Kanban

Project & Delivery Area

User stories diversity User stories vary in size a lot, large stories don’t

feet into an iteration Failed iterations

Many stories are not completed in a single iteration

Failed retrospective meetings Retrospective meetings are waste

Shared people We have a single pool of developers for some

projects Simplicity

Kanban is so simple, no planning, no retrospectives, no estimations

Page 161: Agile methodologies

SCAI S.p.A. 161

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime

Page 162: Agile methodologies

SCAI S.p.A. 162

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Page 163: Agile methodologies

SCAI S.p.A. 163

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly

Page 164: Agile methodologies

SCAI S.p.A. 164

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

Page 165: Agile methodologies

SCAI S.p.A. 165

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations

Page 166: Agile methodologies

SCAI S.p.A. 166

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

Page 167: Agile methodologies

SCAI S.p.A. 167

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate

Page 168: Agile methodologies

SCAI S.p.A. 168

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate Release when it is ready, do most important story

Page 169: Agile methodologies

SCAI S.p.A. 169

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate Release when it is ready, do most important story

Perfect flow visualization

Page 170: Agile methodologies

SCAI S.p.A. 170

Kanban:5 Ragioni per applicare Kanban

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate Release when it is ready, do most important story

Perfect flow visualization Clear view of current work in progress

Page 171: Agile methodologies

SCAI S.p.A. 171

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime

Page 172: Agile methodologies

SCAI S.p.A. 172

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Page 173: Agile methodologies

SCAI S.p.A. 173

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly

Page 174: Agile methodologies

SCAI S.p.A. 174

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

Page 175: Agile methodologies

SCAI S.p.A. 175

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations

Page 176: Agile methodologies

SCAI S.p.A. 176

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

Page 177: Agile methodologies

SCAI S.p.A. 177

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate

Page 178: Agile methodologies

SCAI S.p.A. 178

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate Release when it is ready, do most important story

Page 179: Agile methodologies

SCAI S.p.A. 179

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate Release when it is ready, do most important story

Perfect flow visualization

Page 180: Agile methodologies

SCAI S.p.A. 180

Kanban:When no Need in Iterations?

Project & Delivery Area

Ability to release anytime When user story is ready you may release it

Ability to change priorities on the fly Not started stories queue is always changeable

No need in iterations Iterate first then flow

No need to estimate Release when it is ready, do most important story

Perfect flow visualization Clear view of current work in progress

Page 181: Agile methodologies

SCAI S.p.A. 181

Kanban:When no Need to Estimate?

Project & Delivery Area

You are new to the project

Page 182: Agile methodologies

SCAI S.p.A. 182

Kanban:When no Need to Estimate?

Project & Delivery Area

You are new to the project Estimations don’t change plans

Page 183: Agile methodologies

SCAI S.p.A. 183

Kanban:When no Need to Estimate?

Project & Delivery Area

You are new to the project Estimations don’t change plans Velocity is not taken into account

Page 184: Agile methodologies

SCAI S.p.A. 184

Kanban:When no Need to Estimate?

Project & Delivery Area

You are new to the project Estimations don’t change plans Velocity is not taken into account Team is very experienced in breaking tasks

Page 185: Agile methodologies

SCAI S.p.A. 185

Kanban:When no Need to Estimate?

Project & Delivery Area

You are new to the project Estimations don’t change plans Velocity is not taken into account Team is very experienced in breaking tasks Average cycle time is enough for the customer

Page 186: Agile methodologies

SCAI S.p.A. 186

Kanban:Esempio

Project & Delivery Area

1

2

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

Page 187: Agile methodologies

SCAI S.p.A. 187

Kanban:Esempio

Project & Delivery Area

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

3

4

Page 188: Agile methodologies

SCAI S.p.A. 188

Kanban:Esempio

Project & Delivery Area

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

5

6

Page 189: Agile methodologies

SCAI S.p.A. 189

Kanban:Esempio

Project & Delivery Area

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

7

8

Page 190: Agile methodologies

SCAI S.p.A. 190

Kanban:Esempio

Project & Delivery Area

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

9

10

Page 191: Agile methodologies

SCAI S.p.A. 191

Kanban:Esempio

Project & Delivery Area

Source: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

11

12

Page 192: Agile methodologies

SCAI S.p.A. 192

Kanban per il P.O.

Project & Delivery Area

New Prioritized buffer Unlimited size

Preparing Work in Progress Limited to PO capacity Cycle time Promotion model

Ready Prioritized buffer 1-2 Team Velocity

In Progress Work in Progress Limited to Team WIP limit

Page 193: Agile methodologies

SCAI S.p.A. 193

Kanban:Best Practices

Project & Delivery Area

Bugs get top priority

Page 194: Agile methodologies

SCAI S.p.A. 194

Kanban:Best Practices

Project & Delivery Area

Bugs get top priority Set so minimal WIP as possible

Page 195: Agile methodologies

SCAI S.p.A. 195

Kanban:Best Practices

Project & Delivery Area

Bugs get top priority Set so minimal WIP as possible Stories should be ”minimal marketable

features”

Page 196: Agile methodologies

SCAI S.p.A. 196

Kanban:Best Practices

Project & Delivery Area

Bugs get top priority Set so minimal WIP as possible Stories should be ”minimal marketable

features” Create separate column with goals

Page 197: Agile methodologies

SCAI S.p.A. 197

Kanban:Best Practices

Project & Delivery Area

Bugs get top priority Set so minimal WIP as possible Stories should be ”minimal marketable

features” Create separate column with goals Add Scrum practices (daily scrum,

retrospectives, demos)

Page 198: Agile methodologies

SCAI S.p.A. 198

Kanban:Best Practices

Project & Delivery Area

Bugs get top priority Set so minimal WIP as possible Stories should be ”minimal marketable

features” Create separate column with goals Add Scrum practices (daily scrum,

retrospectives, demos) Add XP engineering practices

Page 199: Agile methodologies

SCAI S.p.A. 199

Uses Stories Mapping

Project & Delivery Area

Page 200: Agile methodologies

SCAI S.p.A. 200

Kanban:Issues

Project & Delivery Area

Mancanza di goal e di focus

Page 201: Agile methodologies

SCAI S.p.A. 201

Kanban:Issues

Project & Delivery Area

Mancanza di goal e di focus Meno prevedibilita’

Page 202: Agile methodologies

SCAI S.p.A. 202

Kanban:Issues

Project & Delivery Area

Mancanza di goal e di focus Meno prevedibilita’ Meno livello di impegno

Page 203: Agile methodologies

SCAI S.p.A. 203

Kanban:Issues

Project & Delivery Area

Mancanza di goal e di focus Meno prevedibilita’ Meno livello di impegno Disciplina

Page 204: Agile methodologies

SCAI S.p.A. 204

Kanban:Caso reale

Project & Delivery Area

Page 205: Agile methodologies

SCAI S.p.A. 205

Domande

Project & Delivery Area

Page 206: Agile methodologies

SCAI S.p.A. 206

Scrum vs Kanban

Project & Delivery Area

Kanban e’ meno prescrittivo

Page 207: Agile methodologies

SCAI S.p.A. 207

Scrum vs Kanban

Project & Delivery Area

Task flowSource: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

Scrum

Kanban

Page 208: Agile methodologies

SCAI S.p.A. 208

Scrum vs Kanban

Project & Delivery Area

CadenzaSource: Crisp (http://www.crisp.se/henrik.kniberg/Kanban-vs-Scrum.pdf)

Scrum

Kanban

Page 209: Agile methodologies

SCAI S.p.A. 209

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile

Page 210: Agile methodologies

SCAI S.p.A. 210

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile Utilizzano la schedulazione dei task

Page 211: Agile methodologies

SCAI S.p.A. 211

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile Utilizzano la schedulazione dei task Entrambi limitano il WIP

Page 212: Agile methodologies

SCAI S.p.A. 212

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile Utilizzano la schedulazione dei task Entrambi limitano il WIP Trasparenza per monitorare e

migliorare i processi

Page 213: Agile methodologies

SCAI S.p.A. 213

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile Utilizzano la schedulazione dei task Entrambi limitano il WIP Trasparenza per monitorare e

migliorare i processi Focus su rilasci frequenti

Page 214: Agile methodologies

SCAI S.p.A. 214

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile Utilizzano la schedulazione dei task Entrambi limitano il WIP Trasparenza per monitorare e

migliorare i processi Focus su rilasci frequenti Gruppi auto-organizzati

Page 215: Agile methodologies

SCAI S.p.A. 215

Scrum vs Kanban:Somiglianza

Project & Delivery Area

Sono Lean ed Agile Utilizzano la schedulazione dei task Entrambi limitano il WIP Trasparenza per monitorare e

migliorare i processi Focus su rilasci frequenti Gruppi auto-organizzati Task

Page 216: Agile methodologies

SCAI S.p.A. 216

Scrum vs Kanban:Differenze

Project & Delivery Area

Page 217: Agile methodologies

ScrumBan

SCAI S.p.A. 217

Applicazione della tecnica Kanban nel ambito del Framework Scrum (Scrum non limita gli item per stato in quanto ha un numero totale di item limitato, limita il tempo) Rappresentazione visiva delle operazioni:

Da svolgere In svolgimentoConcluse

Project & Delivery Area

Page 218: Agile methodologies

SCAI S.p.A. 218

Domande

Project & Delivery Area

Page 219: Agile methodologies

SCAI S.p.A. 219

Extreme Programming

Project & Delivery Area

Page 220: Agile methodologies

An agile development methodology

SCAI S.p.A. 220

Extreme Programming: What is XP?

Project & Delivery Area

Page 221: Agile methodologies

An agile development methodology Created by Kent Beck in the mid 1990’s

SCAI S.p.A. 221

Extreme Programming: What is XP?

Project & Delivery Area

Page 222: Agile methodologies

An agile development methodology Created by Kent Beck in the mid 1990’s A set of 12 key practices taken to their

“extremes”

SCAI S.p.A. 222

Extreme Programming: What is XP?

Project & Delivery Area

Page 223: Agile methodologies

An agile development methodology Created by Kent Beck in the mid 1990’s A set of 12 key practices taken to their

“extremes” A mindset for developers and

customers

SCAI S.p.A. 223

Extreme Programming: What is XP?

Project & Delivery Area

Page 224: Agile methodologies

An agile development methodology Created by Kent Beck in the mid 1990’s A set of 12 key practices taken to their

“extremes” A mindset for developers and

customers A religion?

SCAI S.p.A. 224

Extreme Programming: What is XP?

Project & Delivery Area

Page 225: Agile methodologies

SCAI S.p.A. 225

Extreme Programming

Project & Delivery Area

Customer

Developers

communicationsimplicityfeedbackcourage

XP values

planning gameshort releasessimple designtest-first codingrefactoringpair programmingcontinouos integrationno overtimeon-site customercoding standard

XP practices

Page 226: Agile methodologies

The Planning Game Small Releases Metaphor Simple Design Testing Refactoring Pair Programming Collective Ownership Continuous Integration 40-Hour Workweek On-site Customer Coding Standards

SCAI S.p.A. 226

Extreme Programming: The 12 Practices

Project & Delivery Area

Page 227: Agile methodologies

Planning for the upcoming iteration Uses stories provided by the customer Technical persons determine schedules,

estimates, costs, etc A result of collaboration between the

customer and the developers

SCAI S.p.A. 227

Extreme Programming: 1 – Planning Game

Project & Delivery Area

Page 228: Agile methodologies

Reduction in time wasted on useless features

Greater customer appreciation of the cost of a feature

Less guesswork in planning

SCAI S.p.A. 228

Extreme Programming: 1 – Planning Game - Advantages

Project & Delivery Area

Page 229: Agile methodologies

Customer availability Is planning this often necessary?

SCAI S.p.A. 229

Extreme Programming: 1 – Planning Game - Disadvantages

Project & Delivery Area

Page 230: Agile methodologies

Small in terms of functionality Less functionality means releases

happen more frequently Support the planning game

SCAI S.p.A. 230

Extreme Programming: 2 – Small Releases

Project & Delivery Area

Page 231: Agile methodologies

Frequent feedback Tracking Reduce chance of overall project

slippage

SCAI S.p.A. 231

Extreme Programming: 2 – Small Releases - Advantages

Project & Delivery Area

Page 232: Agile methodologies

Not easy for all projects Not needed for all projects Versioning issues

SCAI S.p.A. 232

Extreme Programming: 2 – Small Releases - Disadvantages

Project & Delivery Area

Page 233: Agile methodologies

The oral architecture of the system A common set of terminology

SCAI S.p.A. 233

Extreme Programming: 3 – Metaphor

Project & Delivery Area

Page 234: Agile methodologies

Encourages a common set of terms for the system

Reduction of buzz words and jargon A quick and easy way to explain the

system

SCAI S.p.A. 234

Extreme Programming: 3 – Metaphor - Advantages

Project & Delivery Area

Page 235: Agile methodologies

Often the metaphor is the system Another opportunity for

miscommunication The system is often not well understood

as a metaphor

SCAI S.p.A. 235

Extreme Programming: 3 – Metaphor - Disadvantages

Project & Delivery Area

Page 236: Agile methodologies

K.I.S.S. “Keep It Simple, Stupid!” Do as little as needed, nothing more

SCAI S.p.A. 236

Extreme Programming: 4 – Simple Design

Project & Delivery Area

Page 237: Agile methodologies

Time is not wasted adding superfluous functionality

Easier to understand what is going on Refactoring and collective ownership is

made possible Helps keeps programmers on track

SCAI S.p.A. 237

Extreme Programming: 4 – Simple Design - Advantages

Project & Delivery Area

Page 238: Agile methodologies

What is “simple?” Simple isn’t always best

SCAI S.p.A. 238

Extreme Programming: 4 – Simple Design - Disadvantages

Project & Delivery Area

Page 239: Agile methodologies

Unit testing Test-first design All automated

SCAI S.p.A. 239

Extreme Programming: 5 – Testing

Project & Delivery Area

Page 240: Agile methodologies

Unit testing promote testing completeness

Test-first gives developers a goal Automation gives a suite of regression

test

SCAI S.p.A. 240

Extreme Programming: 5 – Testing - Advantages

Project & Delivery Area

Page 241: Agile methodologies

Automated unit testing isn’t for everything

Reliance on unit testing isn’t a good idea

A test result is only as good as the test itself

SCAI S.p.A. 241

Extreme Programming: 5 – Testing - Disadvantages

Project & Delivery Area

Page 242: Agile methodologies

Extreme Programming: 6 – Refactoring

Changing how the system does something but not what is done

Improves the quality of the system in some way

Project & Delivery Area SCAI S.p.A. 242

Page 243: Agile methodologies

Extreme Programming: 6 - Refactoring – Advantages

Prompts developers to proactively improve the product as a whole

Increases developer knowledge of the system

SCAI S.p.A. 243Project & Delivery Area

Page 244: Agile methodologies

Extreme Programming: 6 - Refactoring – Disadvantages

Not everyone is capable of refactoring Refactoring may not always be

appropriate Would upfront design eliminate

refactoring?

SCAI S.p.A. 244Project & Delivery Area

Page 245: Agile methodologies

Extreme Programming: 7 – Pair Programming

Two Developers, One monitor, One Keyboard

One “drives” and the other thinks Switch roles as needed

SCAI S.p.A. 245Project & Delivery Area

Page 246: Agile methodologies

Extreme Programming: 7 - Pair Programming – Advantages

Two heads are better than one Focus Two people are more likely to answer

the following questions: Is this whole approach going to

work? What are some test cases that may

not work yet? Is there a way to simplify this?

SCAI S.p.A. 246Project & Delivery Area

Page 247: Agile methodologies

Extreme Programming: 7 - Pair Programming – Disadvantages

Many tasks really don’t require two programmers

A hard sell to the customers Not for everyone

SCAI S.p.A. 247Project & Delivery Area

Page 248: Agile methodologies

Extreme Programming: 8 – Collective Ownership

The idea that all developers own all of the code

Enables refactoring

SCAI S.p.A. 248Project & Delivery Area

Page 249: Agile methodologies

Extreme Programming: 8 - Collective Ownership – Advantages

Helps mitigate the loss of a team member leaving

Promotes developers to take responsibility for the system as a whole rather then parts of the system

SCAI S.p.A. 249Project & Delivery Area

Page 250: Agile methodologies

Extreme Programming: 8 - Collective Ownership - Disadvantages

Loss of accountability Limitation to how much of a large

system that an individual can practically “own”

SCAI S.p.A. 250Project & Delivery Area

Page 251: Agile methodologies

Extreme Programming: 9 – Continuous Integration

New features and changes are worked into the system immediately

Code is not worked on without being integrated for more than a day

SCAI S.p.A. 251Project & Delivery Area

Page 252: Agile methodologies

Extreme Programming: 9 - Continuous Integration - Advantages

Reduces to lengthy process Enables the Small Releases practice

SCAI S.p.A. 252Project & Delivery Area

Page 253: Agile methodologies

Extreme Programming: 9 - Continuous Integration – Disadvantages

The one day limit is not always practical

Reduces the importance of a well-thought-out architecture

SCAI S.p.A. 253Project & Delivery Area

Page 254: Agile methodologies

Extreme Programming: 10 – 40-Hour Week

The work week should be limited to 40 hours

Regular overtime is a symptom of a problem and not a long term solution

SCAI S.p.A. 254Project & Delivery Area

Page 255: Agile methodologies

Extreme Programming: 10 - 40-Hour Week – Advantage

Most developers lose effectiveness past 40-Hours

Value is placed on the developers well-being

Management is forced to find real solutions

SCAI S.p.A. 255Project & Delivery Area

Page 256: Agile methodologies

Extreme Programming: 10 - 40-Hour Week - Disadvantages

The underlying principle is flawed 40-Hours is a magic number Some may like to work more than 40-

Hours

SCAI S.p.A. 256Project & Delivery Area

Page 257: Agile methodologies

Extreme Programming: 11 – On-Site Customer

Just like the title says! Acts to “steer” the project Gives quick and continuous feedback

to the development team

SCAI S.p.A. 257Project & Delivery Area

Page 258: Agile methodologies

Extreme Programming: 11 - On-Site Customer – Advantages

Can give quick and knowledgeable answers to real development questions

Makes sure that what is developed is what is needed

Functionality is prioritized correctly

SCAI S.p.A. 258Project & Delivery Area

Page 259: Agile methodologies

Extreme Programming: 11 - On-Site Customer – Disadvantages

Difficult to get an On-Site Customer The On-Site customer that is given

may not be fully knowledgeable about what the company

May not have authority to make many decisions

Loss of work to the customer’s company

SCAI S.p.A. 259Project & Delivery Area

Page 260: Agile methodologies

Extreme Programming: 12 – Coding Standards

All code should look the same It should not possible to determine

who coded what based on the code itself

SCAI S.p.A. 260Project & Delivery Area

Page 261: Agile methodologies

Extreme Programming: 12 - Coding Standards – Advantages

Reduces the amount of time developers spend reformatting other peoples’ code

Reduces the need for internal commenting

Call for clear, unambiguous code

SCAI S.p.A. 261Project & Delivery Area

Page 262: Agile methodologies

Extreme Programming: 12 - Coding Standards – Disadvantages

Degrading the quality of inline documentation

SCAI S.p.A. 262Project & Delivery Area

Page 263: Agile methodologies

Extreme Programming - Manager and Customer Bill of Rights

You have the right to an overall plan, to know what can be accomplished, when, and at what cost.

SCAI S.p.A. 263Project & Delivery Area

Page 264: Agile methodologies

Extreme Programming - Manager and Customer Bill of Rights

You have the right to an overall plan, to know what can be accomplished, when, and at what cost.

You have the right to get the most value out of every programming week.

SCAI S.p.A. 264Project & Delivery Area

Page 265: Agile methodologies

Extreme Programming - Manager and Customer Bill of Rights

You have the right to an overall plan, to know what can be accomplished, when, and at what cost.

You have the right to get the most value out of every programming week.

You have the right to see progress in a running system, proven to work by passing repeatable tests that you specify.

SCAI S.p.A. 265Project & Delivery Area

Page 266: Agile methodologies

Extreme Programming - Manager and Customer Bill of Rights

You have the right to an overall plan, to know what can be accomplished, when, and at what cost.

You have the right to get the most value out of every programming week.

You have the right to see progress in a running system, proven to work by passing repeatable tests that you specify.

You have the right to change your mind, to substitute functionality, and to change priorities without paying exorbitant costs.

SCAI S.p.A. 266Project & Delivery Area

Page 267: Agile methodologies

Extreme Programming - Manager and Customer Bill of Rights

You have the right to an overall plan, to know what can be accomplished, when, and at what cost.

You have the right to get the most value out of every programming week.

You have the right to see progress in a running system, proven to work by passing repeatable tests that you specify.

You have the right to change your mind, to substitute functionality, and to change priorities without paying exorbitant costs.

You have the right to be informed of schedule changes, in time to choose how to reduce scope to restore the original date. You can cancel at any time and be left with a useful working system, reflecting investment to date.

SCAI S.p.A. 267Project & Delivery Area

Page 268: Agile methodologies

Extreme Programming - Programmer Bill Of Rights

You have the right to know what is needed, with clear declarations of priority.

SCAI S.p.A. 268Project & Delivery Area

Page 269: Agile methodologies

Extreme Programming - Programmer Bill Of Rights

You have the right to know what is needed, with clear declarations of priority.

You have the right to produce quality work at all times.

SCAI S.p.A. 269Project & Delivery Area

Page 270: Agile methodologies

Extreme Programming - Programmer Bill Of Rights

You have the right to know what is needed, with clear declarations of priority.

You have the right to produce quality work at all times.

You have the right to ask for and receive help from peers, superiors, and customers.

SCAI S.p.A. 270Project & Delivery Area

Page 271: Agile methodologies

Extreme Programming - Programmer Bill Of Rights

You have the right to know what is needed, with clear declarations of priority.

You have the right to produce quality work at all times.

You have the right to ask for and receive help from peers, superiors, and customers.

You have the right to make and update your own estimates.

SCAI S.p.A. 271Project & Delivery Area

Page 272: Agile methodologies

Extreme Programming - Programmer Bill Of Rights

You have the right to know what is needed, with clear declarations of priority.

You have the right to produce quality work at all times.

You have the right to ask for and receive help from peers, superiors, and customers.

You have the right to make and update your own estimates.

You have the right to accept your responsibilities instead of having them assigned to you.

SCAI S.p.A. 272Project & Delivery Area

Page 273: Agile methodologies

Extreme Programming - Advantages

Built-In Quality

SCAI S.p.A. 273Project & Delivery Area

Page 274: Agile methodologies

Extreme Programming - Advantages

Built-In Quality Overall Simplicity

SCAI S.p.A. 274Project & Delivery Area

Page 275: Agile methodologies

Extreme Programming - Advantages

Built-In Quality Overall Simplicity Programmer Power

SCAI S.p.A. 275Project & Delivery Area

Page 276: Agile methodologies

Extreme Programming - Advantages

Built-In Quality Overall Simplicity Programmer Power Customer Power

SCAI S.p.A. 276Project & Delivery Area

Page 277: Agile methodologies

Extreme Programming - Advantages

Built-In Quality Overall Simplicity Programmer Power Customer Power Synergy Between Practices

SCAI S.p.A. 277Project & Delivery Area

Page 278: Agile methodologies

Extreme Programming - Disadvantages

Informal, little, or no documentation

SCAI S.p.A. 278Project & Delivery Area

Page 279: Agile methodologies

Extreme Programming - Disadvantages

Informal, little, or no documentation Scalability

SCAI S.p.A. 279Project & Delivery Area

Page 280: Agile methodologies

Extreme Programming - Disadvantages

Informal, little, or no documentation Scalability Contract Issues

SCAI S.p.A. 280Project & Delivery Area

Page 281: Agile methodologies

Extreme Programming - Disadvantages

Informal, little, or no documentation Scalability Contract Issues Misconception on the cost of change

SCAI S.p.A. 281Project & Delivery Area

Page 282: Agile methodologies

Extreme Programming - Disadvantages

Informal, little, or no documentation Scalability Contract Issues Misconception on the cost of change Tailoring

SCAI S.p.A. 282Project & Delivery Area

Page 283: Agile methodologies

Extreme Programming - Application – Advantageous

Highly uncertain environments

SCAI S.p.A. 283Project & Delivery Area

Page 284: Agile methodologies

Extreme Programming - Application – Advantageous

Highly uncertain environments Internal projects

SCAI S.p.A. 284Project & Delivery Area

Page 285: Agile methodologies

Extreme Programming - Application – Advantageous

Highly uncertain environments Internal projects Joint ventures

SCAI S.p.A. 285Project & Delivery Area

Page 286: Agile methodologies

Extreme Programming - Application – Disadvantageous

Large, complex environments

SCAI S.p.A. 286Project & Delivery Area

Page 287: Agile methodologies

Extreme Programming - Application – Disadvantageous

Large, complex environments Safety critical situations

SCAI S.p.A. 287Project & Delivery Area

Page 288: Agile methodologies

Extreme Programming - Application – Disadvantageous

Large, complex environments Safety critical situations Well understood requirements

SCAI S.p.A. 288Project & Delivery Area

Page 289: Agile methodologies

Extreme Programming - Application – Disadvantageous

Large, complex environments Safety critical situations Well understood requirements Distant or unavailable customer

SCAI S.p.A. 289Project & Delivery Area

Page 290: Agile methodologies

Extreme Programming - Who benefits from XP?

get clear requirements & priorities

can do a good job can make technical

decisions don’t work overtime

get most business value first get accurate feedback can make informed business

decisions can change their mind

Programmers: Customers:

SCAI S.p.A. 290Project & Delivery Area

Page 291: Agile methodologies

SCAI S.p.A. 291

Domande

Project & Delivery Area

Page 292: Agile methodologies

… IN THE CONTEXT

Le agile methodologies vengono considerate come condizione necessaria e sufficiente per portare a termine e con SUCCESSO un progetto.

PURTROPPO QUESTO NON E’ CORRETTO!!!

SCAI S.p.A. 292Project & Delivery Area

Page 293: Agile methodologies

… IN THE CONTEXT

Si possono seguire tutte le pratichi agili (essere il “guro” delle metodologie) e FALLIRE. Il fallimento puo’ essere dovuto alle condizioni ereditate dal team e dall’azienda

SCAI S.p.A. 293Project & Delivery Area

Page 294: Agile methodologies

… IN THE CONTEXT

Affinche’ un progetto abbia successo, e’ necessario che tutti remino nella stessa direzione e che in aggiunta ogni team abbia gli attributi fondamentali, come ad esempio le competenze degli sviluppatori, la conoscenza del business da parte del P.O., etc.

SCAI S.p.A. 294Project & Delivery Area

Page 295: Agile methodologies

… IN THE CONTEXT

Analogamente un progetto software puo’ avere successo anche senza usare nessuna pratica agile. Se tutto va bene in questo modo, sono il primo a dire: “continuate in questa direzione, magari aggiungendo qualche processo che possa giovare e non distruggere il progetto”.

SCAI S.p.A. 295Project & Delivery Area

Page 296: Agile methodologies

… IN THE CONTEXT

Non scegliete di cambiare il proprio modus operandi per un capriccio o per una moda, si rischiera’ di portare solo problemi

SCAI S.p.A. 296Project & Delivery Area

Page 297: Agile methodologies

SCAI S.p.A. 297Project & Delivery Area

There are no best practices...

Only good practices...

IN THE CONTEXT...

Page 298: Agile methodologies

Non dimenticate!!!

ANY process or methodology (that is not actively destructive), applied to a skilled,disciplined, high-functioning,

motivated team, will succeed, regardless of the process.

Likewise, any process applied to a low-functioning team will likely fail.

SCAI S.p.A. 298Project & Delivery Area

Page 299: Agile methodologies

SCAI S.p.A. 299

Domande

Project & Delivery Area

Page 300: Agile methodologies

SCAI S.p.A. 300

Grazie

Project & Delivery Area

Page 301: Agile methodologies

SCAI S.p.A. 301

Workshop:Cooking

Project & Delivery Area

Page 302: Agile methodologies

SCAI S.p.A. 302

Workshop:Cooking

Project & Delivery Area

Pizza Kanban

Page 303: Agile methodologies

SCAI S.p.A. 303

Workshop:Cooking

Project & Delivery Area

Durata:Turni da 10 minutiRetrospettiva

Page 304: Agile methodologies

SCAI S.p.A. 304

Workshop:Cooking

Project & Delivery Area

Ingredienti pizza1 base3 fette di mozzarella3 fette di prosciutto

Page 305: Agile methodologies

SCAI S.p.A. 305

Workshop:Cooking

Project & Delivery Area

Punteggio:Ogni pizza vale 5 puntiProdotti non usati: -Punti

Base di pizza non usata -2 punti - 0.5 per ogni pezzo di prosciutto o

mozzarella avanzati