Instilling Scrum
Andrea Torino Rodriguez
rodryz@gmail.com
@agilerod

Raoul Buzziol
raoulus@gmail.com
@raoulbuzziol
Di cosa parliamo ?
•
•
•
•
•
•

Cos’è Agile
Genesi di Scrum
Imparare giocando
Applichiamo le “stille”
Miglioriamo
Feedback, please
Timeline …timeboxed, prima
•
•
•
•
•
•

Introduciamo Agile
Scrum in stille
Pronti, al posto…
Giochiamo in Team !
Retrospettive
Caffè !
Timeline …timeboxed, dopo
•
•
•
•
•

La nostra Vision
Backlog e Storie
Scrum all’opera
Retrospettive
Grazie !
Agile
L’Ingegneria del software
nel secondo millennio
Avete letto il Manifesto ?
Nel 2001 viene stilato il “Manifesto Agile”
“Stiamo scoprendo modi migliori di creare software, sviluppandolo
e aiutando gli altri a fare lo stesso. Grazie a questa attività siamo
arrivati a considerare importanti:
Gli individui e le interazioni più che i processi e gli strumenti
Il software funzionante
più che la documentazione esaustiva
La collaborazione col cliente più che la negoziazione dei contratti
Rispondere al cambiamento più che seguire un piano

Ovvero, fermo restando il valore delle voci a destra, consideriamo
più importanti le voci a sinistra.”
Progetto vs. Sviluppo
• I progetti software sono molto variabili
• Nei ns. tempi, i progetti sono molto dettagliati
• Fasi distinte di progettazione e costruzione…
…nel software vengono interpretate:

• Progettazione = Analisi, design, formalismi…
• Costruzione = Sviluppo, implementazione
Progetto vs. Sviluppo
• Qual’è il progetto dettagliato nel software ?

• Progettazione = Sviluppo, implementazione
• Costruzione = Build (automatica)
Agile
• Accettiamo la variabilità
• Dividiamo il progetto in (brevi) tappe
• Per ogni tappa applichiamo il metodo scientifico
1. Osservazione
2. Ipotesi
3. Esperimento

(analisi)
(teoria)
(validazione)
Agile, adattabilità
• Codice (progetto) strutturato per privilegiare
l’adattabilità alle modifiche
Agile, iterativo ed incrementale
• Pianificazione, analisi, sviluppo, test compressi in
tempi stretti e costanti; rilasci frequenti
Agile, orientato alle Persone
• Privilegiare le Persone rispetto ai processi, come
riportato nel manifesto
Scrum in stille
“Can a repeatable and defined
process really exist for software
Development?”
Genesi
• 1986: “The New New product development
game”
– Hirotaka Takeushi
– Hikujiro Nonaka

• 1998: “An extension pattern language for
hyperproductive software development”
–
–
–
–
–

Mike Beedle beedlem@fti-consulting.com
Martine Devos mdevos@argo.be
Yonat Sharon yonat@usa.net
Ken Schwaber virman@aol.com
Jeff Sutherland jeff.sutherland@idx.com
Perché “Scrum” ?

…rispondiamo alla domanda iniziale
Repeatable/Defined
• Repeatable/Defined Problem
ma solitamente i requisiti non sono mai completi e cambiano durante lo
sviluppo

• Repeatable/Defined Solution
ma le architetture solitamente evolvono a causa dei requisiti e del
processo creativo che le genera

• Repeatable/Defined Developers
ma le capacità ed abilità dei programmatori variano parecchio

• Repeatable/Defined Organizational environment
ma pressione, priorità, rapporto col Cliente, comportamento del
management, ecc. cambiano spesso
Avete letto la Guida ?
• Scrum NON è un processo

• Scrum NON è una tecnica
• Scrum è un Framework

• Applica il metodo Iterativo ed incrementale
• Si basa sul Controllo empirico di processo
– Trasparenza
– Ispezione
– Adattamento
Cosa c’é nel pacchetto ?
• Persone…

Product Owner

Scrum Master

Scrum Team
Team
Cosa c’é nel pacchetto ?
• Iterazioni…

Product Owner

Backlog
Cosa c’é nel pacchetto ?
• Iterazioni…

Product Owner

Planning
Team

Scrum Master
Cosa c’é nel pacchetto ?
• Iterazioni…

Sprint Backlog

Sprint

Team

Scrum Master
Cosa c’é nel pacchetto ?
• Iterazioni…

Potentially shippable
product (increment)

Team
Cosa c’é nel pacchetto ?
• Iterazioni…

Product Owner

Review
Team

Scrum Master
Scrum, vista panoramica
Ball Point Game
Un gioco per capire cosa è
Scrum
by

Boris Gloger
boris.gloger@gmail.com
Obiettivo
• Far “passare” più palle possibili fra le mani di ogni
membro del Team, partendo e terminando dallo
stesso punto, rispettando qualche semplice
regola
Svolgimento
• Introduzione, 2 min.
• Regole, 2 min.
• Preparazione Team, 2 min.

• Stime, 1 min.
• Iterazione, 2 min.
• Miglioramento, nuova stima, 1 min.

• X 5 Iterazioni
• Retrospettiva, 5-10 min.
Regole
• Siete un Team
• Le palle devono “stare in aria”
• Non potete passare la palla al vostro vicino diretto
• Palla valida = toccata da tutti
• Durata iterazione, 2 min.

• Fra ogni iterazione, 1 min. (breafing)
• 5 Iterazioni
Retrospettiva
• Cosa è successo ?
• Qual’è stata la migliore iterazione ?
• Avete provato/trovato un ritmo ?

…Inspect & Adapt, ci ricorda qualcosa ?
Inspect & Adapt in Scrum
• Ciclo di Deming (o PDCA)

È un modello studiato da W. Edwards Deming per il
miglioramento continuo della qualità
Scrum Flow
• Il Ciclo di Deming rappresenta la meccanica del
“Flusso” in Scrum

• Possiamo parlare di Flusso quando:
– L’obiettivo è raggiungibile
– Le persone non sono disturbate durante le iterazioni

– Il lavoro ha un significato
Vision
“Vision is the art of seeing
things invisible”
(Jonathan Swift)
Una buona Vision
• Condivisa
P.O., S.M., Team, management, clienti e altri stakeholder

• Chiara e stabile
• Avvincente
• Corta e attraente
10 sec. Prova dell’ascensore
La nostra Vision
• Per famiglie e temerari
• Che vogliono un’esperienza ad alta (e bassa)
velocità
• Lo SpeedBall Park
• È un parco multitematico con una pista (almeno)

• Dove sfrecciare in discesa, ma anche bersi una birra
SpeedBall Park
Requisiti
• Pista
 Partenza
 Arrivo
 Salto
 Curva
 Giro della morte
 Rimbalzo
 1 metro di pista
 3 metri di pista
 10 metri di pista

•Biglietteria
•Ristorante
•Negozio souvenir
•Pulmino interno
•Navetta esterna
•Fermata del bus
•Parcheggio (disegnabile)
•Lago (disegnabile)
•Fiume (disegnabile)
•Spiaggia (disegnabile)
•Ponte
•Ruota panoramica
•Pista baby
User Stories
Un modo Agile per catturare le
funzionalità del prodotto
La User Story
• I requisiti sono le descrizioni dei bisogni del
prodotto; descrivono il problema
• Le User Stories sono soluzioni proposte dal punto di
vista dell’utente
• Hanno criteri di accettazione (test)
Collocazione architetturale
• Una User Story dovrebbe attraversare tutti i layer
architetturali
Come scriverla
• Template di scrittura
As a <type of user> i want to <do something>
so that <i can achieve some busn. value>
• Template di validazione: I.N.V.E.S.T.
– Independent
– Negotiable
– Valuable
– Estimable
– Small
– Testable
Product Backlog
Il tool fondamentale per il
Product Owner
Il Backlog
• E’ una lista di elementi, prioritizzata in base ad un
valore di business
• La lista di elementi include tutte le features che
“rilasciano” la Vision
• Gli elementi a più alta priorità della lista, devono essere
i più dettagliati
• La lista di elementi è in continua evoluzione, variazione,
aggiornamento
Esempio…
Backlog grooming
Un buon Backlog
• D.E.E.P.
– Detailed appropriately

– Estimated
– Emergent
– Prioritized

Instilling Scrum Workshop

  • 1.
    Instilling Scrum Andrea TorinoRodriguez rodryz@gmail.com @agilerod Raoul Buzziol raoulus@gmail.com @raoulbuzziol
  • 2.
    Di cosa parliamo? • • • • • • Cos’è Agile Genesi di Scrum Imparare giocando Applichiamo le “stille” Miglioriamo Feedback, please
  • 3.
    Timeline …timeboxed, prima • • • • • • IntroduciamoAgile Scrum in stille Pronti, al posto… Giochiamo in Team ! Retrospettive Caffè !
  • 4.
    Timeline …timeboxed, dopo • • • • • Lanostra Vision Backlog e Storie Scrum all’opera Retrospettive Grazie !
  • 5.
  • 6.
    Avete letto ilManifesto ? Nel 2001 viene stilato il “Manifesto Agile” “Stiamo scoprendo modi migliori di creare software, sviluppandolo e aiutando gli altri a fare lo stesso. Grazie a questa attività siamo arrivati a considerare importanti: Gli individui e le interazioni più che i processi e gli strumenti Il software funzionante più che la documentazione esaustiva La collaborazione col cliente più che la negoziazione dei contratti Rispondere al cambiamento più che seguire un piano Ovvero, fermo restando il valore delle voci a destra, consideriamo più importanti le voci a sinistra.”
  • 7.
    Progetto vs. Sviluppo •I progetti software sono molto variabili • Nei ns. tempi, i progetti sono molto dettagliati • Fasi distinte di progettazione e costruzione… …nel software vengono interpretate: • Progettazione = Analisi, design, formalismi… • Costruzione = Sviluppo, implementazione
  • 8.
    Progetto vs. Sviluppo •Qual’è il progetto dettagliato nel software ? • Progettazione = Sviluppo, implementazione • Costruzione = Build (automatica)
  • 9.
    Agile • Accettiamo lavariabilità • Dividiamo il progetto in (brevi) tappe • Per ogni tappa applichiamo il metodo scientifico 1. Osservazione 2. Ipotesi 3. Esperimento (analisi) (teoria) (validazione)
  • 10.
    Agile, adattabilità • Codice(progetto) strutturato per privilegiare l’adattabilità alle modifiche
  • 11.
    Agile, iterativo edincrementale • Pianificazione, analisi, sviluppo, test compressi in tempi stretti e costanti; rilasci frequenti
  • 12.
    Agile, orientato allePersone • Privilegiare le Persone rispetto ai processi, come riportato nel manifesto
  • 13.
    Scrum in stille “Cana repeatable and defined process really exist for software Development?”
  • 14.
    Genesi • 1986: “TheNew New product development game” – Hirotaka Takeushi – Hikujiro Nonaka • 1998: “An extension pattern language for hyperproductive software development” – – – – – Mike Beedle beedlem@fti-consulting.com Martine Devos mdevos@argo.be Yonat Sharon yonat@usa.net Ken Schwaber virman@aol.com Jeff Sutherland jeff.sutherland@idx.com
  • 15.
  • 16.
    Repeatable/Defined • Repeatable/Defined Problem masolitamente i requisiti non sono mai completi e cambiano durante lo sviluppo • Repeatable/Defined Solution ma le architetture solitamente evolvono a causa dei requisiti e del processo creativo che le genera • Repeatable/Defined Developers ma le capacità ed abilità dei programmatori variano parecchio • Repeatable/Defined Organizational environment ma pressione, priorità, rapporto col Cliente, comportamento del management, ecc. cambiano spesso
  • 17.
    Avete letto laGuida ? • Scrum NON è un processo • Scrum NON è una tecnica • Scrum è un Framework • Applica il metodo Iterativo ed incrementale • Si basa sul Controllo empirico di processo – Trasparenza – Ispezione – Adattamento
  • 18.
    Cosa c’é nelpacchetto ? • Persone… Product Owner Scrum Master Scrum Team Team
  • 19.
    Cosa c’é nelpacchetto ? • Iterazioni… Product Owner Backlog
  • 20.
    Cosa c’é nelpacchetto ? • Iterazioni… Product Owner Planning Team Scrum Master
  • 21.
    Cosa c’é nelpacchetto ? • Iterazioni… Sprint Backlog Sprint Team Scrum Master
  • 22.
    Cosa c’é nelpacchetto ? • Iterazioni… Potentially shippable product (increment) Team
  • 23.
    Cosa c’é nelpacchetto ? • Iterazioni… Product Owner Review Team Scrum Master
  • 24.
  • 25.
    Ball Point Game Ungioco per capire cosa è Scrum by Boris Gloger boris.gloger@gmail.com
  • 26.
    Obiettivo • Far “passare”più palle possibili fra le mani di ogni membro del Team, partendo e terminando dallo stesso punto, rispettando qualche semplice regola
  • 27.
    Svolgimento • Introduzione, 2min. • Regole, 2 min. • Preparazione Team, 2 min. • Stime, 1 min. • Iterazione, 2 min. • Miglioramento, nuova stima, 1 min. • X 5 Iterazioni • Retrospettiva, 5-10 min.
  • 28.
    Regole • Siete unTeam • Le palle devono “stare in aria” • Non potete passare la palla al vostro vicino diretto • Palla valida = toccata da tutti • Durata iterazione, 2 min. • Fra ogni iterazione, 1 min. (breafing) • 5 Iterazioni
  • 29.
    Retrospettiva • Cosa èsuccesso ? • Qual’è stata la migliore iterazione ? • Avete provato/trovato un ritmo ? …Inspect & Adapt, ci ricorda qualcosa ?
  • 30.
    Inspect & Adaptin Scrum • Ciclo di Deming (o PDCA) È un modello studiato da W. Edwards Deming per il miglioramento continuo della qualità
  • 31.
    Scrum Flow • IlCiclo di Deming rappresenta la meccanica del “Flusso” in Scrum • Possiamo parlare di Flusso quando: – L’obiettivo è raggiungibile – Le persone non sono disturbate durante le iterazioni – Il lavoro ha un significato
  • 32.
    Vision “Vision is theart of seeing things invisible” (Jonathan Swift)
  • 33.
    Una buona Vision •Condivisa P.O., S.M., Team, management, clienti e altri stakeholder • Chiara e stabile • Avvincente • Corta e attraente 10 sec. Prova dell’ascensore
  • 34.
    La nostra Vision •Per famiglie e temerari • Che vogliono un’esperienza ad alta (e bassa) velocità • Lo SpeedBall Park • È un parco multitematico con una pista (almeno) • Dove sfrecciare in discesa, ma anche bersi una birra
  • 35.
  • 36.
    Requisiti • Pista  Partenza Arrivo  Salto  Curva  Giro della morte  Rimbalzo  1 metro di pista  3 metri di pista  10 metri di pista •Biglietteria •Ristorante •Negozio souvenir •Pulmino interno •Navetta esterna •Fermata del bus •Parcheggio (disegnabile) •Lago (disegnabile) •Fiume (disegnabile) •Spiaggia (disegnabile) •Ponte •Ruota panoramica •Pista baby
  • 37.
    User Stories Un modoAgile per catturare le funzionalità del prodotto
  • 38.
    La User Story •I requisiti sono le descrizioni dei bisogni del prodotto; descrivono il problema • Le User Stories sono soluzioni proposte dal punto di vista dell’utente • Hanno criteri di accettazione (test)
  • 39.
    Collocazione architetturale • UnaUser Story dovrebbe attraversare tutti i layer architetturali
  • 40.
    Come scriverla • Templatedi scrittura As a <type of user> i want to <do something> so that <i can achieve some busn. value> • Template di validazione: I.N.V.E.S.T. – Independent – Negotiable – Valuable – Estimable – Small – Testable
  • 41.
    Product Backlog Il toolfondamentale per il Product Owner
  • 42.
    Il Backlog • E’una lista di elementi, prioritizzata in base ad un valore di business • La lista di elementi include tutte le features che “rilasciano” la Vision • Gli elementi a più alta priorità della lista, devono essere i più dettagliati • La lista di elementi è in continua evoluzione, variazione, aggiornamento
  • 43.
  • 44.
  • 45.
    Un buon Backlog •D.E.E.P. – Detailed appropriately – Estimated – Emergent – Prioritized