Velocity in Scrum: come valutare e migliorare le prestazioni

Atlassian Di Atlassian
Esplora argomenti

Vuoi scoprire la velocity reale del tuo team Scrum? Velocity è un tachimetro per i progetti Agile che fornisce approfondimenti impareggiabili sulla capacità di lavoro del team. Questa guida illustra i principi della velocity in Scrum, spiega come calcolarla e come utilizzare questa potente metrica per prevedere le prestazioni future del tuo team.

Cos'è la velocity in Scrum?

In Scrum e in altri framework di gestione dei progetti Agile, la velocity funge da metrica Agile per fornire una stima del lavoro che un team Scrum può completare in un determinato intervallo di tempo, in genere durante un singolo sprint.

Puoi indicare la velocity in Story Point, un'unità di misura utilizzata per quantificare le storie utente o i task in termini di complessità, rischio e incertezza. Gli story point forniscono una stima del lavoro più dettagliata rispetto alle metriche basate sul tempo, come le ore o i giorni.

Prendi in esame, ad esempio, una storia utente per lo sviluppo di una schermata di accesso a un'applicazione. Il team potrebbe assegnare a questo task un valore di 3 story point, in base alla complessità percepita e all'impegno richiesto per completarlo. L'integrazione di un gateway di pagamento avanzato potrebbe richiedere un valore di 8 a causa della maggiore complessità e dei potenziali rischi.

Molti fattori determinano il numero di story point che ogni membro del team può completare durante uno sprint di due settimane, come l'esperienza individuale, la complessità dei task e le dinamiche di lavoro del team. I nuovi team Scrum generalmente dispongono in media di 5-10 story point a persona per ogni sprint di due settimane.

La velocity aiuta a prevedere il miglioramento continuo che può raggiungere un team negli sprint futuri: in questo modo si possono pianificare e definire obiettivi realistici. Questa metrica aiuta i team a sviluppare un ritmo di lavoro stabile, a prevedere le timeline dei progetti e a gestire le aspettative degli stakeholder.

Come calcolare la velocity in Scrum

In genere, la velocity si calcola alla fine di ogni sprint sommando gli story point o altre unità di misura di tutte le storie utente completate.

Ecco la procedura dettagliata per calcolare la velocity in Scrum:

1. Pianifica uno sprint

Prima dell'inizio di uno sprint, definisci e assegna i punti a tutte le storie utente nel backlog di prodotto. Ad esempio:

  • Assegnare l'autenticazione utente: 5 punti
  • Aggiungere l'integrazione di un gateway di pagamento: 8 punti
  • Implementare la funzionalità di ricerca: 3 punti
  • Sviluppare una pagina di profilo utente: 13 punti
  • Implementare le notifiche via e-mail: 2 punti
  • Ottimizzare le query sul database: 21 punti
  • Creare una dashboard di amministrazione: 5 punti

Il team dovrà eseguire il commit per completare le storie utente nello sprint successivo basandosi sulla velocity media degli sprint precedenti e su altri fattori, come le festività o le dipendenze esterne. Ad esempio, se la velocity media è di 15 punti senza festività o dipendenze esterne, il team potrebbe eseguire il commit sulle storie utente per totalizzare circa 15 punti per lo sprint successivo.

2. Elenca le storie utente completate

Crea un elenco di tutte le storie utente completate alla fine di ogni sprint. Le storie devono aver soddisfatto i criteri di accettazione ed essere state approvate dallo Scrum Master e dall'owner di prodotto.

Se una storia utente è stata eseguita al 90%, il lavoro non può considerarsi del tutto completato. Il team dovrebbe passare allo sprint successivo e rivalutare i punti in base ai task rimanenti.

3. Verifica i punti

Il team avrebbe già dovuto assegnare gli story point a tutte le storie utente completate.Se, per qualsiasi motivo, gli story point devono essere rivalutati, questo è il momento giusto per farlo.

Supponiamo che il team abbia completato tre storie utente nello sprint in corso: ha assegnato l'autenticazione utente, ha aggiunto l'integrazione del gateway di pagamento e ha implementato la funzionalità di ricerca. Puoi assegnare questi task con i seguenti story point:

  • Assegnare l'autenticazione utente: 5 punti
  • Aggiungere l'integrazione di un gateway di pagamento: 8 punti
  • Implementare la funzionalità di ricerca: 3 punti

4. Somma i punti per calcolare la velocity

Successivamente, dovrai sommare gli story point di tutte le storie utente completate. Il totale degli story point corrisponde alla velocity dello sprint.

Nello scenario precedente il totale è di 16 punti (5+8+3 punti), che indica la velocity dello sprint in esame.

5. Media della velocity

Puoi ottenere una valutazione più attendibile degli sprint successivi calcolando la media della velocity sul numero di sprint completati dal team. Ciò è particolarmente utile per i team appena creati o per quelli che hanno modificato le proprie dimensioni o la struttura.

Ad esempio, se le velocity degli ultimi tre sprint fossero 14, 16 e 15, la velocity media sarebbe (14+16+15)/3=15 punti.

Fattori che possono influire sulla velocity in Scrum

Esistono vari fattori che possono influenzare le metriche Scrum e la velocity. La loro comprensione può aiutare a pianificare e migliorare continuamente le prestazioni del team.

Dimensioni del team e livello di competenza

Il numero dei membri di un team e i rispettivi livelli di abilità possono influenzare il lavoro che il team è in grado di completare durante uno sprint. Un team numeroso può completare più story point in uno sprint. D'altra parte, più membri potrebbero causare problemi di comunicazione e organizzazione.

Al contrario, un team di dimensioni ridotte altamente qualificato potrebbe superarne uno più grande con meno competenze, gestendo efficientemente i task complessi.

Stabilità ed esperienza del team

Se i membri del team Scrum lavorano insieme su più sprint, è probabile che riescano a risolvere molti dei problemi che si presentano ai nuovi team. Definiscono modelli di comunicazione, conoscono perfettamente le competenze di ogni membro

e condividono le esperienze su cui fare affidamento in caso di problemi. Tale familiarità può migliorare notevolmente la velocity.

Complessità delle storie utente

Uno sprint con storie complesse di solito si traduce in una bassa velocity. Il dato sulla velocity sarà fuorviante se la complessità non riflette accuratamente gli story point assegnati.

Per mantenere costante la velocity, alcuni team mirano a trovare un equilibrio tra task che possono essere completati rapidamente e task più complessi all'interno di uno sprint.

Dipendenze e vincoli esterni

La velocity del tuo team potrebbe ridursi se, per completare gli aggiornamenti del database o le integrazioni delle API, si affida a un altro team e questo accumula un ritardo sulle operazioni. Essere consapevoli di queste dipendenze e pianificarle attraverso un'efficace comunicazione tra i team può limitare gli impatti negativi sulla velocity.

Nella pianificazione degli sprint è necessario includere i giorni festivi e gli eventi aziendali obbligatori che riducono l'orario di lavoro disponibile.

Utilizzare la velocity in Scrum

La velocity del tuo team, se compresa a fondo, rappresenta uno strumento efficace per numerosi aspetti della pianificazione degli sprint e della gestione dei progetti, tra cui:

Stima degli sprint successivi

Conoscere la velocity media del team contribuisce a eliminare le congetture. Se negli ultimi tre sprint la velocity media del tuo team corrisponde a 50 story point, disponi di una baseline di dati concreti per pianificare lo sprint successivo. Se il tuo prossimo backlog dello sprint ha circa 50 story point, l'impegno è accettabile.

Previsione delle timeline dei progetti

Gli stakeholder si affidano più alle stime basate sui dati che alle ipotesi o ai pronostici. Ad esempio, se il backlog del tuo progetto ha 200 story point e la velocity media del team è di 50 story points per ogni sprint, puoi prevedere con certezza che il team avrà bisogno di effettuare altri quattro sprint per completare il progetto.

Identificazione del troppo o dello scarso impegno

Bisogna prestare attenzione alla velocity di un team che improvvisamente scende a 30 o sale a 70 story point. Un calo sensibile potrebbe significare che il team percepisce un sovraccarico, mentre un aumento potrebbe indicare che i membri non sono sufficientemente motivati. Esserne consapevole ti consente di apportare modifiche in tempo reale, come riassegnare i task o rivedere gli obiettivi di sprint.

Monitoraggio dei miglioramenti e dell'avanzamento iterativo

Il monitoraggio della velocity nel tempo aiuta a stabilire se il team sta migliorando la propria efficienza o se è necessario prestare attenzione ai problemi in corso. Se la velocity sale da 40 a 60 nel corso di diversi sprint, è un segnale che i miglioramenti apportati al processo stanno generando i giusti risultati.

Monitoraggio della velocity in Jira Software

Jira Software include un grafico della velocity che illustra i dati sulle velocity precedenti del tuo team, semplificando la pianificazione degli sprint. È uno strumento completo per visualizzare quanto lavoro può gestire il tuo team e fissare più accuratamente gli obiettivi degli sprint successivi.

Offre inoltre tutte le altre funzionalità delle metriche Agile, degli approfondimenti, dei report e della gestione dei progetti di cui il tuo team ha bisogno per migliorare la pianificazione e le prestazioni.

Velocity in Scrum: domande frequenti

La velocity in Scrum corrisponde alla produttività?

No, la velocity in Scrum è diversa dalla produttività. La velocity è una metrica utilizzata principalmente per la pianificazione e la stima della quantità di lavoro che un team può gestire negli sprint successivi.

La produttività è generalmente una valutazione più ampia che può includere fattori come la qualità del lavoro, l'efficienza dei processi e il valore apportato all'azienda.

Come può un team migliorare la propria velocità?

I team possono migliorare la velocità tenendo riunioni retrospettive regolari per discutere di cosa abbia funzionato o meno e pianificare quindi miglioramenti per il prossimo sprint. Ridurre al minimo il cambio di contesto, riducendo i frequenti spostamenti tra diversi task o progetti, può portare a una velocità più elevata e costante.

Quali sono i limiti dell'uso della velocità in Scrum?

Sebbene la velocità sia uno strumento di pianificazione utile, presenta dei limiti e non dovrebbe essere l'unica metrica delle prestazioni per valutare un team. Per una visione più completa delle prestazioni del team, prendi in considerazione la possibilità di monitorare altre metriche Agile.

Una limitazione significativa è che la velocità non misura la qualità del lavoro o il valore aziendale fornito. È una misura quantitativa che non tiene conto degli aspetti qualitativi della complessità della storia utente singola.

La velocità è specifica del team, non è una misura per confrontare le prestazioni di team diversi. Ogni gruppo all'interno di un team può lavorare in modo diverso, con conseguenti variazioni di velocità. Una velocità complessiva inferiore non significa automaticamente che un team abbia meno successo di un altro.