Agile Development

alcuni principi e concetti base

 

E vabbe', famo 'sto Scrum, però senza er planning, i standupp e le retrospettive, che qui dovemo lavorà, mica parlà de cazzate.

@agilegigi 

Che cos'è Agile?

La metodologia Agile è un insieme di metodi che consentono di raggiungere obiettivi prefissati con il massimo delle performance in maniera veloce e produttiva realizzando software testato e di qualità.

 

 

A che cosa serve?

Serve a raggiungere (o non) risultati in tempi brevi, tramite processi trasparenti, condivisi tra team e cliente e organizzati in una serie di microcicli adeguati alle risorse e al tempo a disposizione.

I valori

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

Alcuni principi

  • comunicazione stretta tra il team.
  • coinvolgimento del cliente.
  • release frequenti.
  • test integrati nello sviluppo.
  • fallire in fretta (per ripartire).

 

Epic, story, bug, task

le funzionalità finite da completare, genericamente le chiamiamo User Story.
In esse descriviamo il tipo di lavoro da svolgere utilizzando i seguenti campi principali:

descrizione
è tutto quello che dobbiamo sapere per svolgere il lavoro
estimate

è un valore che indica un misto tra complessità, tempo e rischio.

acceptance criteria
è un elenco di criteri che devono essere rispettati nel completare la storia.
Utili anche per i test.

Metodo Scrum

framework di metodi empirici
termine deriva da: pacchetto di mischia del rugby
si procede uniti verso la meta andando avanti ed indietro

 

- trasparenza

- adattabilità

- controllo

 

Ruoli Scrum

Product owner
Responsabile del prodotto. Colui che da la direzione commerciale e le priorità dei task da fare.

Scrum Master
Responsabile del flusso. Colui che aiuta il lavoro del team e lo mette in contatto con il PO, facilitando i task e i meeting.

Team di sviluppo
Chi sviluppa. Il team (3-9 persone) è indipendente ed auto-organizzato per lo sviluppo del progetto (team cross-funzionale).

(Stakeholders)
Portatori di interesse. Tutti quelli che sono coinvolti nel risultato del progetto (spesso il cliente)

Il flusso Scrum 

  • il product owner ordina il backlog per priorità con l'aiuto del team.
  • in fase di sprint planning lo scrum master aiuta al team a scegliere le story per lo sprint (iterazione di 2/4 settimane).
  • il team sviluppa le story con il supporto dello scrum master.
  • ogni giorno si fa un meeting per pianificare il lavoro quotidiano.
  • a fine sprint si fa una review con una demo in cui si mostra cosa si ha completato anche agli stakeholder.
  • se il PO approva, si rilascia il software.
  • riparte l'iterazione.

Schema di flusso

Gli step fondamentali dello sviluppo in scrum

Il backlog

La board

Metodo Kanban

deriva da: produzione Toyota
看板 - poster, cartellone.

visualizzare il flusso di lavoro eliminando i "colli di bottiglia" nella catena

 

Il flusso Kanban 

  • visualizzare il flusso (board).
  • settare un limite al work in progress (WIP).
  • sviluppare.
  • quando necessario si impostano meeting, review e demo.
  • misurare il limite di lead time (ciclo di rilascio).
  • continuare l'iterazione.

Visualizzare il flusso

Board Kanban

Scrum vs. Kanban scrum kanban
cadenza regolare e fissa (sprint 2-4 settimane) flusso continuo
rilascio alle fine di ogni sprint (se approvato dal PO) rilasci continui a discrezione del team
ruoli product owner, scrum master, team di sviluppo nessun ruolo; il team può essere aiutato da un agile coach
valori chiave velocity (estimate/items) cicli di rilascio
obiettivi fissati ad inizio sprint e costanti durante l'iterazione (goal) possono cambiare in ogni momento

Is this still Scrum?  I’m not sure, but does it really matter? Anything that works for you is right, anything that doesn’t is wrong.

 

Henrik Kniberg

Crisp/Spotify/Lego

 

#daje

Agile Development

By Manuel Zanettin

Agile Development

alcuni principi e concetti base

  • 1,358