Se riesce a convertire i punti in ore, sta stimando il numero di ore.

I punti storia e le ore non sono unità diverse della stessa cosa. Le ore misurano la durata: quanto tempo vi richiederà un’attività. I punti misurano lo sforzo relativo: quanto è grande questa attività rispetto alla storia di riferimento che tutti hanno già consegnato. Si tratta di assi diversi. Nel momento in cui scrive «1 punto = 4 ore» sul wiki, ha trasformato ogni conversazione sulla stima in una discussione sulla durata e ha rinunciato alla proprietà dello sforzo relativo che questa tecnica è stata concepita per offrirle.

Points and hours as orthogonal axes Duration (hours) Relative effort (points) reference story (the one everyone shipped) story A same size, junior dev story B same size, senior dev "1 point = 4 hours" collapses both axes
Due articoli della stessa lunghezza in punti possono richiedere tempi di elaborazione diversi. La linea di conversione fa finta che non sia così.

Il motivo per cui i team ricorrono alla conversione è concreto: qualcuno esterno al team ha bisogno di una data, e i punti non hanno unità di misura. La soluzione non è una tabella di conversione, bensì la velocità. La velocità mette già in relazione i punti con il tempo a livello di team. I punti per sprint moltiplicati per il numero di sprint forniscono una data che rispetta il ritmo di consegna effettivo del team, non uno fittizio.

Perché i punti esistono

Un team che effettua stime in ore presenta in realtà due stime distinte: quella a cui crede l’ingegnere senior e quella che l’ingegnere junior mette per iscritto dopo aver arrotondato per apparire responsabile. I voti nascosti e lo sforzo relativo consentono di aggirare entrambe. I punti consentono al team di concordare che «questo progetto è più impegnativo di quello che abbiamo già consegnato» senza dover concordare che «ci vorranno quattro ore», e il disaccordo che emerge durante la fase di rivelazione è proprio il momento in cui viene alla luce l’ambito nascosto.

Come si presenta una situazione positiva

Un team che utilizza correttamente i punti non parla di ore durante la sessione. Si concentra invece sulla storia di riferimento, sul lavoro simile già consegnato e sulle incognite. Il numero che ne risulta è un indicatore dello sforzo relativo che il team, e solo il team, può tradurre in una data attraverso la propria velocità.

”Ma quanto tempo ci vorrà?”

Questa è l’esigenza legittima che si cela dietro ogni richiesta di conversione dei punti in tempo, e merita una risposta concreta: un intervallo di tempo derivato dalla velocità. Se il Suo team ha registrato una media di 30 punti per ogni sprint di due settimane, una porzione di 60 punti del backlog corrisponde all’incirca a due sprint, e Lei la comunica come «circa un mese, a seconda di quanto riusciremo a portare a termine». Si tratta di una data che tiene conto delle variabili interne al team: le riunioni effettivamente in programma, il turno di reperibilità, i giorni festivi. Una conversione da punti a ore fornisce invece una data priva di tali variabili, che risulta errata con maggiore certezza.

Pertanto, monitorate la velocità, effettuate una proiezione sulla base di essa e ricalcolatela ogni pochi sprint. Questa è la versione più accurata per convertire i punti in tempo, e non richiede alcuna tabella di conversione. Il tempo di ciclo è invece una questione a sé stante: una storia a 3 punti può comunque rimanere in fase di revisione per una settimana, il che rappresenta un problema di flusso, non di stima.

Gli story point includono i fine settimana?

No, perché i punti non tengono affatto conto del tempo. Un 5 non corrisponde a 40 ore; significa semplicemente che “questo è più grande della storia di riferimento”. Il fatto che il team lavori nei fine settimana, si prenda il venerdì libero o adotti settimane lavorative di quattro giorni non influisce sulla stima, poiché la stima non è una misura del tempo di calendario.

L’aspetto in cui i fine settimana contano è la velocità. La velocità è espressa in punti per sprint, e la durata dello sprint è un periodo di tempo di calendario; pertanto, un team che si trovi ad affrontare un giorno festivo a metà sprint registrerà una velocità inferiore in quello sprint, poiché ha avuto a disposizione un numero inferiore di ore lavorative per dedicare lo stesso impegno. È proprio qui che i fine settimana devono entrare in gioco: a livello di calendario, non a livello di punti. I punti non conoscono i fine settimana. La velocità sì.

Eliminate la tabella di conversione. Utilizzate invece la velocità come base di calcolo.

Domande frequenti

A quante ore corrispondono 3 story point?

Non esiste una risposta univoca, ed è proprio questo il punto. Gli story point misurano lo sforzo relativo, non la durata. 3 punti corrispondono a «una storia leggermente più ampia rispetto alla nostra storia di riferimento», la cui realizzazione richiede tempi diversi a seconda dei team. Effettuate la conversione a livello di team tramite la velocità, mai per singola storia.

Un punto storia equivale a un giorno?

No. Uno story point non è affatto un’unità di tempo. Se il Suo team ha adottato la convenzione “1 punto = 1 giorno”, sta effettuando stime in giorni con una semplice “patina” di Fibonacci, e ha perso il segnale relativo allo sforzo che gli story point sono destinati a fornire.

Perché utilizzare gli story point anziché le ore?

Poiché il team può concordare sul fatto che «questo è più impegnativo di quello» senza doversi accordare su «ci metterò quattro ore». I voti nascosti, uniti alla valutazione relativa dell’entità del lavoro, consentono di evitare i pregiudizi legati all’ancoraggio e all’anzianità che le stime in ore comportano, mentre la velocità di sviluppo fornisce comunque una data quando è necessario.

È possibile convertire gli story point in ore?

Solo a livello di team e solo a posteriori: i punti completati per sprint (velocità) corrispondono al tempo effettivo impiegato da quel team specifico. Una tabella fissa per ogni storia del tipo “X punti = Y ore” rappresenta una modalità di fallimento. La elimini.

Gli story point includono i fine settimana?

No, perché i punti non tengono affatto conto del tempo. Un 5 indica che il progetto è “più ampio rispetto alla storia di riferimento”, non un numero di giorni. I fine settimana, i giorni festivi e le settimane lavorative di quattro giorni si riflettono nella velocità (punti per sprint), che è basata sul calendario, non nei punti stessi.

Approfondimenti