Sappiamo tutti che può essere estremamente difficile stimare la dimensione e il costo di un progetto. Poiché un progetto per definizione è unico per natura, spesso un nuovo prodotto, servizio o cambiamento di business, è difficile prevedere la data di consegna. Più la dimensione e la complessità del progetto diventano grandi, più difficile può essere farlo correttamente. Ma ci sono diverse tecniche disponibili che possono migliorare notevolmente il processo di stima del progetto e l’accuratezza.
In questo post, cercherò di coprire alcune delle tecniche di stima più conosciute che possono essere usate per giudicare la dimensione di qualsiasi progetto.
È importante sottolineare che queste cose si applicano indipendentemente dal fatto che tu stia facendo agile (Scrum, Kanban, ecc.) o preferisca la più tradizionale cascata (Prince2, PMI, ecc.). Avrai bisogno di fare alcune di queste cose ad un certo punto in qualsiasi tipo di progetto!
Questo post è rivolto principalmente ai Project Manager con poca o nessuna esperienza nella stima del progetto. Se sei un Project Manager con molti anni di esperienza, credo ancora che tu possa imparare alcuni nuovi trucchi dai concetti di questo post, quindi potresti volerlo scremare comunque. Ecco cinque semplici passi da seguire.
Scopo del progetto
La stima del progetto non può essere fatta correttamente senza almeno qualche comprensione dello scopo del progetto. Se non sai cosa il progetto sta cercando di raggiungere, allora ci sono poche possibilità di essere in grado di stimare accuratamente lo sforzo richiesto.
Una buona regola empirica è che più dettagliata è la portata del progetto, più dettagliata e accurata sarà la stima del progetto. La dimensione, la complessità e la fase del progetto avranno un grande impatto sul livello di accuratezza richiesto.
Anche l’allineamento dei requisiti di stima del progetto, e quindi il consumo di tempo necessario per creare le stime, alla precisione richiesta, all’ambito e alla fase del progetto deve essere considerato.
Livelli di accuratezza della stima del progetto
La stima del progetto può essere fatta tipicamente con più successo con una mentalità agile. Con questo voglio dire che le stime dovrebbero essere generate il più presto possibile, per esempio nella fase di proposta e poi continuamente raffinate nel tempo, sia prima che dopo l’inizio del progetto. Questi raffinamenti possono essere pensati come livelli o versioni che diventano sempre più accurati.
Quando si stima un progetto è importante capire in quale fase si trova l’ambito e la definizione del progetto perché questo determinerà il livello di accuratezza richiesto. L’accuratezza sarà il fattore decisivo per quante percentuali sopra o sotto il progetto ci si può aspettare che finisca una volta completato. Per esempio, se la stima è definita come una stima di “Ordine di grandezza”, avrà un’accuratezza di circa più o meno 50-100%.
Questo significa che se la stima del progetto è di $200 con un’accuratezza di stima del 50%, l’azienda sa che il progetto costerà almeno $100 e al massimo $300 da completare.
Il punto è di fornire una stima “di base” usando le informazioni disponibili al momento. Poiché la stima del progetto è un processo, la stima sarà sempre sottoposta a diverse iterazioni di perfezionamento. L’accuratezza della stima migliorerà quindi man mano che l’ambito del progetto viene compreso più a fondo. Questo significa anche che l’incertezza diminuirà man mano che il progetto progredisce verso il completamento.
Tecniche di stima del progetto
In questa sezione descriverò alcuni dei possibili metodi che possono essere usati per generare una stima.
Prima di farlo, è importante sottolineare che gli input alle stime dovrebbero, per quanto possibile, provenire da “esperti” o “esecutori” dei requisiti dello scopo, perché questo darà i migliori risultati. È tipicamente il ruolo del Project Manager di raccogliere queste conoscenze o individuare gli esperti con cui consultarsi. E’ anche tipicamente responsabilità del Project Manager valutare qualsiasi rischio che potrebbe presentarsi prima, durante o dopo il progetto.
Detto questo, approfondiamo le diverse tecniche di stima.
Stima analogica
La stima analogica usa uno o più progetti passati simili per stimare la durata o il costo del tuo progetto attuale. Questo è usato quando ci sono informazioni limitate riguardo al progetto da pianificare. Una stima analoga è considerata “dall’alto verso il basso” e generalmente non è accurata come altre tecniche di stima se usata esclusivamente.
Per esempio, se è costato 100 dollari sviluppare un sito web di 2 pagine qualche mese fa e tu sei responsabile dello sviluppo di un nuovo sito web di 2 pagine, lo stimi a 100 dollari. Potresti anche dedurre che sviluppare un sito web di 4 pagine costerà 200 dollari.
Stime bottom-up / Work Breakdown Structure (WBS) / Activity breakdown
Questi sono metodi che coinvolgono la suddivisione del problema in parti più piccole e gestibili fino a quando è possibile stimare con ragionevole precisione manuale. A seconda della precisione necessaria questo può essere suddiviso in ogni singola attività o aggregato ad un livello più alto di pacchetti di lavoro o pietre miliari. I costi individuali di ogni pacchetto di lavoro sono poi sommati per formare la stima completa del progetto bottom-up.
La stima “bottom-up” richiedeva la maggior quantità di tempo per prepararsi, ma a condizione che si tenga conto del dettaglio sufficiente dei componenti, questa tecnica di stima del progetto può fornire il più alto livello di accuratezza e può essere automatizzata con l’intelligenza artificiale.
Stime top-down
La stima top-down è un completo contrario dell’approccio bottom-up. In sostanza, seguire questa strada significa che hai un progetto a prezzo fisso o sai quanto potrebbero costare specifiche pietre miliari sulla base della tua esperienza condivisa con progetti passati. La sfida di questo approccio è che dovrai scomporre il progetto in compiti in un modo che sia redditizio per il business, che è spesso difficile da realizzare senza capire come ogni attività influisce sulle tue finanze e sulla linea di base del progetto.
La stima top-down è applicata in situazioni in cui gli account executive vendono il progetto e i project manager sono portati a trovare il perfetto equilibrio tra le aspettative del cliente e gli obiettivi aziendali. Ciò che è importante in questo caso è allocare le risorse in modo intelligente, essere in grado di comparare il preventivo iniziale al pianificato ai reali, e assicurarsi di non attraversare i perimetri del piano iniziale.
Stime a tre punti
La stima a tre punti è una delle tecniche più semplici perché non solo può aumentare notevolmente l’accuratezza delle stime del progetto, ma l’intero approccio rende anche più facile per più di un esperto fornire il proprio input. È simile alla stima bottom-up ma più accurata e può essere usata meglio anche ad alto livello.
La stima a tre punti, conosciuta anche come PERT (Project Evaluation and Review Technique), fornisce una gamma di stime del progetto e calcola la media ponderata di quella gamma. Questo significa che 3 punti di dati, il “caso migliore”, il “caso più probabile” e il “caso peggiore”, devono sempre essere forniti per ogni parte della stima.
- Best Case – Qual è lo scenario più ottimistico per costruire X?
- Most Likely Case – Qual è lo scenario probabile per costruire X?
- Worst Case – Qual è lo scenario più pessimistico per costruire X?
Un vantaggio di questa metodologia è che psicologicamente può essere più facile fornire un numero all’interno di un intervallo e iniziare con il caso peggiore spesso porta a meno resistenza. Questa tecnica riduce anche il rischio di stime gonfiate.
Per esempio, nel caso del nostro esempio di sito web di 2 pagine di cui sopra, potremmo dire che il costo più ottimistico da completare è 80 dollari, il caso probabile è 100 dollari e il più costoso sarà mai 200 dollari. Senza entrare nei dettagli del calcolo di questo, usando 3 punti equivarrebbe ad una stima di $114.
Stima parametrica
La stima parametrica è simile alla stima analogica ma fornisce un maggior livello di precisione grazie alla natura statistica della tecnica di stima. Essenzialmente, una stima parametrica è determinata identificando il costo unitario o la durata e il numero di unità richieste per il progetto o l’attività. È importante che la misura sia scalabile per essere accurata.
Per esempio, se ho impiegato due ore per falciare il mio cortile di un acro la settimana scorsa e questa settimana sto falciando quattro acri, potrei stimare che ci vorranno otto ore per falciare.
Tuttavia, se la prima ora è stata spesa per trasportare il mio trattore e prepararlo per falciare, la stima dovrebbe essere scalata adeguatamente: 1 ora per il trasporto e poi quattro ore per la falciatura, per un totale di cinque ore.
Size-based / Story Points / Function Points / Use Case Points
Un modo comune per prendere la mano con le tecniche size-based è calcolare stime basate sull’uso di una formula derivata da dati storici. Per ricavare qualsiasi significato da questo tipo di punti, che è una dimensione arbitraria, è necessario guardare indietro nei dati storici per ricavare quante ore costituiscono un singolo punto. Se non esistono dati storici è possibile partire da una baseline standard da dati di settore fino a quando non si raccolgono abbastanza dati nell’organizzazione.
Per esempio, in base al numero di punti storia assegnati ad una singola storia utente, si può risalire a quante ore in media ci vorranno per sviluppare un punto. Così, una stima completa del progetto può essere data se l’intero backlog è noto prima che il progetto sia iniziato. Spesso non è possibile conoscere l’intera portata del backlog ma comunque la versione preliminare di esso può dare una buona indicazione della totalità del progetto anche se potrebbe non essere accurata al 100%.
Combinazione di più tecniche di stima
Nessuna singola tecnica di stima del progetto sarà adatta a tutti i progetti. Per ottenere i risultati più accurati, suggeriamo di usare e combinare alcune di queste tecniche di stima per fornire una maggiore accuratezza alle tue stime di progetto. Per esempio puoi usare un metodo bottom-up come 3 punti e combinarlo con un metodo top-down come Function Points.
Sappiamo che lo sforzo coinvolto nel combinare diverse metodologie il più delle volte non è un modo realistico di procedere. In questo caso raccomandiamo di attenersi ad un unico metodo per tutto, perché questo vi darà almeno alcuni numeri storici comparabili che possono essere usati proattivamente per imparare da.
Incertezza e rischio
Ovviamente nessuna stima viene senza un rischio, altrimenti non sarebbe una stima, il che significa che anche i rischi e le incertezze dovrebbero essere presi in considerazione. Queste possono assumere molte forme, ma è sempre una buona idea includere una sorta di allentamento nel piano, preferibilmente basato su dati storici, sotto forma di ore extra, un buffer per costi imprevisti e/o entrambi. Questo è spesso gestito attraverso un budget di “contingenza”.
Best practice
Come la maggior parte delle tecniche di stima del progetto, ognuna ha i propri vantaggi e limiti. Alcune considerazioni chiave quando si lavora con qualsiasi tecnica sono:
- Come il progetto differisce da quello dei dati storici?
- Quali fattori esterni non sono stati considerati?
- La stima può essere verificata da un esperto del settore?
- Quanto è completa la comprensione delle specifiche del progetto?
- Quanto sforzo in termini di tempo e costi sarà assegnato per sviluppare le stime?
- Con quali tecniche l’organizzazione ha esperienza di lavoro?
Se devi scegliere una e una sola metodologia da usare, e non hai molta esperienza, ti consigliamo sempre di fare l’analisi a 3 punti, perché questa dà i risultati più accurati e ti permette anche di valutare rapidamente i rischi associati alle tue stime. Un altro vantaggio di questo metodo è che puoi facilmente arrivare rapidamente ad una stima di alto livello e poi scomporla ulteriormente quando si scoprono più informazioni sul progetto.
Come passo successivo, potresti anche voler imparare alcune buone pratiche per assicurare che le tue stime rimangano valide: