If an estimate is not a promise then as a product owner how can I deliver my projects without knowing how long it will take?
Questo è uno dei più grandi equivoci su Scrum. La domanda "Quanto durerà il mio progetto?" presuppone che è possibile definire, ad un certo punto nel tempo, esattamente ciò che il progetto comporterà per il completamento. Ma l'intera idea di Scrum è che riconosce che le cose che apprendi su un progetto, mentre lavori al progetto, cambieranno la definizione del progetto.
Il modo più comune per definire un progetto è elencare le funzionalità che avrà. In genere, un progetto viene completato quando tutte le funzionalità sono state implementate. Ma cosa succede se, mentre lavori a un progetto, ti rendi conto che 5 delle funzionalità identificate all'inizio non saranno necessarie, ma ci sono 7 funzionalità che le persone pensavano nei primi 6 mesi che avrebbero dovuto essere incluse? Che cosa fa alla domanda quanto tempo ci vorrà?
Un altro fattore è che le cose che impari cambiano la tua comprensione di come implementare determinate funzionalità e, man mano che ti avvicini all'implementazione di ciascuna funzione, le tue stime cambieranno. Personalmente, resisto alle stime numeriche su tutto ciò che non si avvicina all'orizzonte di essere implementato - magari usando stime descrittive come "tiny", "small", "medium", "large" e "huge" o "epic". Quindi non intendi un'accuratezza superiore a quella che sei in grado di stimare.
Sinceramente, "Quanto tempo ci vorrà?", non è più responsabile di "Cosa sarà quando verrà fatto?". Ragionieri e uomini d'affari tradizionali odiano questo, motivo per cui è molto difficile allontanarsi da Waterfall in alcune organizzazioni.
È anche il motivo per cui devi parlare molto della velocità e delle metriche con un pizzico di sale. I progetti software hanno in sé una sorta di Principio di incertezza di Heisenberg, e se passi troppo tempo a mettere a punto le misure, finirai con un'assurdità estremamente precisa.
Quindi no, una stima non è una promessa. È una stima. La "promessa" è l'impegno che il team fa per completare un certo numero di caratteristiche o storie in uno Sprint particolare.
Le stime devono essere sufficientemente accurate da consentire al team di identificare il numero di caratteristiche (o storie) che possono essere contenute in uno Sprint. Ancora più importante dell'accuratezza delle stime è la coerenza, perché il team apprenderà quanto vale il lavoro di stime che possono essere contenute in uno Sprint, anche se il lavoro effettivo risulta essere solitamente il doppio di quanto stimato. Fintanto che è costantemente fuori, saranno in grado di pianificare.