Story Points: cosa sono?

Quando si condivide la scelta di introdurre la metodologia Agile, i primi dubbi che sorgono sono: Che cos’è uno story point? e In che modo garantire un’adeguata pianificazione del progetto e la consegna entro i tempi stabiliti, utilizzando gli story points nel processo di stima?

Nel modello Waterfall, la stima è solitamente effettuata basandosi sul tempo come unità di misura. Il carico di lavoro per ogni task è calcolato in termini di ore o giorni ed è assegnato in base al tempo totale a disposizione di ogni membro del Team. Le ore sono una metrica realistica e facilmente comprensibile da tutti i soggetti, ma è davvero la soluzione migliore, più accurata ed efficace?

Story Points e metodologia Agile

La metodologia Agile non prevede un unico modo per stimare il lavoro del Team Scrum e propone l’utilizzo di una metrica più astratta per quantificare il carico di lavoro. La stima, infatti, si effettua utilizzando gli story points, i quali misurano la complessità relativa dello sforzo richiesto per terminare un’attività, rispetto a uno standard definito.
Ad esempio, i dati geografici ci dicono che la superficie dello Stato cinese è pari a 9.597.000 km², ma è più facile comprenderne l’effettiva estensione considerando come standard le dimensioni dell’Italia e visualizzando la Cina come grande 31 volte il Belpaese. In altre parole, si prende in considerazione un requisito ben compreso da qualsiasi membro del Team e si confrontano tutte le altre user stories con quella ritenuta standard (nel nostro esempio, le dimensioni dell’Italia), per valutare il livello di complessità dei task.

post it

Gli story points sono in genere assegnati nella fase di creazione dello story mapping, in seguito all’identificazione da parte del Product Owner delle user stories del proprio progetto.
Bisogna assegnare gli story points a ogni story prima di poter mettere in ordine queste ultime verticalmente in sprint; è importante infatti ricordare che i membri del Team si troveranno ad affrontare delle scadenze per concludere le stories assegnate a ogni sprint.

Metodi per effettuare alcune stime da utilizzare per quantificare gli Story Points

Gli story points sono quindi delle misure variabili e relative. Tuttavia, sono stati ideati dei metodi per effettuare alcune stime di base da utilizzare per quantificarli.
In particolare, i metodi più diffusi includono:

  • le sequenze lineari crescenti (1, 2, 3, 4, 5, 6, etc.), le taglie delle t-shirts (XS, S, M, L, XL)
  • la sequenza di Fibonacci (1, 2, 3, 5, 8, 13, etc.) e così via. Qualunque sia il metodo utilizzato, è fondamentale che ogni membro del Team comprenda chiaramente i valori della scala utilizzata.

Se, per esempio, il Team decide di adottare la sequenza Fibonacci e assegna 3 story points alla user story standard, tale valore dovrà essere assegnato a tutte le user stories che sono simili in termini di complessità. Se una user story è più complicata, con probabilità sarà stimata con 5 story points, mentre per una user story considerata circa il doppio più complessa della user story standard, allora potrebbero essere assegnati 8 story points. Bisognerà quindi partire dalla user story standard e utilizzarla come base di confronto per stimare le altre user stories.

È comunque importante sottolineare che i 3 story points assegnati alla user story di un determinato progetto non corrispondono necessariamente al valore di 3 story points stimati in un progetto differente; lo standard preso in considerazione dal Team può infatti variare anche in modo considerevole da un progetto all’altro.

Vantaggi dell’utilizzo degli Story Points

Possiamo confermare che i vantaggi nell’usare gli story points sono molteplici:

  • Assicurare che l’intera squadra sia responsabile della stima, rendendola più affidabile; ciò aiuta i Team a rendersi conto della difficoltà di ogni task per una preparazione adeguata.
  • Eliminare il time tracking, che può essere piuttosto stressante.
  • Le user stories vengono solitamente stimate in modo indipendente dallo sviluppatore che deve realizzarle. Questo, quindi, lo rende un approccio unico e universale alla stima dei compiti.

Se comparassimo le stime effettuate tramite gli story points e quelle effettuate nella modalità classica a ore, potremmo evidenziare che:

  • Le stime basate sul tempo sono in genere effettuate dagli sviluppatori e non richiedono l’impegno dei membri del Team. Sono predisposte da un unico individuo, che ha spesso il compito anche di realizzare l’attività. Tuttavia, le stime in story points coinvolgono l’intero Team che viene a conoscenza della complessità del progetto. Pertanto, si elimina l’onere della stima individuale che porta con sé una buona dose di difetti.
  • La stima con gli story points utilizza una formula simile a quella di Fibonacci, come 1, 2, 3, 5, mentre per le ore si può usare il tempo, come 12 ore o addirittura i giorni. La sequenza di Fibonacci utilizzata negli story points aiuta ad ottenere stime rapide, poiché presenta scelte discrete che il Team deve compiere basandosi anche su esperienze pregresse.

Una stima effettuata tramite l’utilizzo degli story points in una fase iniziale potrebbe essere difficoltosa, soprattutto per un Team giovane nell’utilizzo di tali metriche e della metodologia Agile; con il tempo, però, alcune aziende hanno notato che la stima tramite story points è più veloce rispetto alle pratiche di stima Waterfall presenti nelle aziende stesse e le stime fornite sono altrettanto buone o addirittura migliori.

La strada verso il mondo Agile, tuttavia, non è immediata e può essere molto accidentata. Per questo motivo Planetica ha raccolto gli insegnamenti e le best practice di settore, al fine di supportare e guidare i propri Clienti nel passaggio dalla metodologia Waterfall all’Agile per un cambiamento di successo.

Entra in contatto

Hai bisogno di maggiori informazioni o di una consulenza personalizzata?

Lascia i tuoi dati per essere contattato e scoprire insieme come possiamo aiutarti a raggiungere i tuoi prossimi obiettivi.