Il Planning Poker è una tecnica di stima spesso utilizzata nei progetti gestiti con la metodologia Agile.
E’ finalizzata ad attribuire un ponteggio a ciascuna user story o caso d’uso descrittivi dei requisiti della committenza.
Il punteggio è definito in story point proporzionali alla complessità di un user story e al tempo necessario a realizzare ciascuna funzionalità presente in una user story.
Il Planning Poker racchiude in sé elementi di stima comparativa coniugata con tecniche decisionali di gruppo.
Normalmente un team che lavora ad un progetto Agile avrà al suo interno persone caratterizzate da modalità di stima basate su criteri diversi, che hanno differenti livelli di esperienza e competenze tecniche differenziate.
Per ridurre le divergenze fra le stime espresse da profili professionali e cognitivi eterogenei e consentire a tutti di contribuire al processo di stima, il planning poker parte dal principio che è necessario stimare in termini di story point anziché in ore o giorni.
Uno story point è una misura relativa della dimensione e complessità di una user story (da qui l’affinità con la stima comparativa).
Durante l’incontro di pianificazione di ciascuno sprint il team inizia da una storia relativamente semplice a cui assegnerà il valore di 1.
Questa rappresenta la storia ‘baseline’ come riferimento per attribuire story points alle altre user stories.
Professionisti a diversi livelli di esperienza possono impiegare tempi diversi per sviluppare la baseline ma concorderanno sul fatto che si tratta di un lavoro semplice e chiaramente descritto.
Ad una user story leggermente più complessa può essere assegnato un valore di 2 story point e così via.
Con questa logica il processo di stima prevede l’acquisizione del parere di tutti i membri del team, senza pregiudizi.
È qui che entrano in gioco le carte da Planning Poker.
Viene distribuito a tutti i membri del team un mazzo di carte che hanno valori liberamente basati sulla sequenza di Fibonacci (1, 2, 3, 5, 8, 13, 21 …).
Il motivo per cui queste carte non seguono una progressione lineare (1, 2, 3, 4, 5 …) consiste nel fatto che più un’attività è grande e complessa, più è difficile stimarla accuratamente.
Può essere aggiunta una carta ‘infinito’ che può essere usata per indicare che non si crede che l’attività possa essere completata, mentre la carta ‘?’ (punto interrogativo) viene usata se non si è in grado di fornire una stima.
Il processo inizia con l’esame di una user story e con una breve discussione riguardo alle sue implicazioni.
In seguito ognuno assegna individualmente un valore in story point (partendo dalla comparazione con la storia baseline).
È importante che in questa fase le persone non si consultino fra loro. Viene poi chiesto a tutti i partecipanti di rivelare la propria stima mettendo contemporaneamente una carta sul tavolo. Ciò evita che la discussione sia eccessivamente influenzata dalla prima stima che potrebbe altrimenti influenzare le stime degli altri.
Se tutte le stime rientrano nel valore di due carte consecutive (ad esempio tutti 3 e 5 o tutti 5 e 8), alla storia viene assegnato il valore più alto fra i due.
Se invece il divario fra le stime è maggiore di quello normale, il facilitatore chiederà a qualcuno che ha fornito la stima più bassa e a qualcuno che ha dato quella più alta di spiegare il proprio ragionamento.
L’intervallo di stima può quindi essere ridotto chiarendo meglio la storia consultando eventualmente l’utente da cui parte l’esigenza, oppure cercando di arrivare ad una visione condivisa della complessità dell’attività e ripetere quindi il processo.
Il Planning Poker è quindi una tecnica che garantisce un corretto bilanciamento fra il processo decisionale di gruppo e quello individuale, garantendo l’indipendenza di quest’ultimo ma promuovendo al tempo stesso una maggiore interazione e una migliore comunicazione fra i partecipanti.
Questo rende il Planning Poker una tecnica otima per facilitare il processo decisionale anche al di fuori di contesti agili.