Organizziamo 2 o 3 sessioni di stima con il potenziale cliente e i nostri sviluppatori in cui discutiamo del lavoro da svolgere e stabiliamo i criteri di accettazione. Gli sviluppatori stimano il lavoro nei punti storia durante la riunione.
In seguito vendiamo al cliente un numero di punti storia. Questo è possibile perché ha una buona idea del valore dei punti della storia. Gli diciamo che ha la possibilità di mettere a punto il suo backlog / scope durante il progetto e che sarà facile grazie all'utilizzo dei punti della storia. Gli diciamo anche che ci sarà una consegna frequente del software di lavoro in modo che possa monitorare i progressi e ottenere nuovi approfondimenti.
Accettando un certo numero di punti storia, al cliente è garantito un valore per i suoi soldi. Se non cambia il suo backlog, ha il suo progetto a prezzo fisso / ambito fisso, ma la mia esperienza è che farà dei cambiamenti. Effettuando le stime in presenza del potenziale cliente, cerchiamo di costruire una relazione basata sull'apertura e sulla fiducia.
Siamo riusciti a convincere clienti come te che descrivono, che "vogliono un budget e una scadenza", ed erano contenti di voler capire veramente di cosa avevano bisogno, invece di lavorare da un documento. Abbiamo dimostrato che volevamo investire in questi progetti.
Durante le sessioni di stima abbiamo stimato il loro intero arretrato. Questo ha dato x punti storia. Abbiamo suggerito di aggiungere il 25% per quelle funzionalità che non erano ancora chiare o conosciute al momento. Con il backlog stimato allegato al contratto sono stati rassicurati che avrebbero ottenuto tutto per il budget fisso.
Originariamente l'offerta era tempo e materiale. Siccome volevano avere un'offerta a prezzo fisso, abbiamo suggerito di lavorare per il prezzo che gli abbiamo dato e utilizzare il 25% di punti extra per contingency. Se le cose andassero bene, la parte del 25% che non è stata usata per coprire i ritardi riscontrati verrebbe utilizzata per fornire più funzionalità al cliente.
Ciò li ha stimolati in diversi modi: in primo luogo, hanno fatto tutto il possibile per consentire ai nostri sviluppatori di lavorare il più velocemente possibile, poiché ciò era chiaramente nel loro stesso interesse. Non abbiamo mai dovuto aspettare risposte alle domande. In secondo luogo, hanno veramente capito il concetto dei punti della storia. Prima che il progetto iniziasse, avevano già rimosso alcune delle storie e ci hanno chiesto di stimare altre storie. Per questo non sono state necessarie negoziazioni contrattuali complicate.
Li abbiamo tenuti informati dei progressi e mantenuto una comunicazione molto aperta. Hanno ottenuto un rapporto sullo stato di avanzamento ogni 2 settimane: x% dei punti storia effettuati in y% del tempo stimato lascia lo z% dei punti aggiuntivi disponibili. Abbiamo avuto un inizio un po 'difficile, ma siamo riusciti a recuperare le stime entro la fine del progetto, che ha lasciato il 100% dei punti extra disponibili per ulteriori sviluppi. Il cliente era felice perché ha ottenuto tutto ciò di cui aveva veramente bisogno (e questo era un po 'diverso dalle sue funzionalità inizialmente richieste, ne ha rimosse alcune e ne ha aggiunte altre).
Il cliente è stato anche contento perché tutto è stato consegnato nei tempi previsti (dove ha anche fatto tutto il possibile per aiutarci a cercare i biglietti, rispondere alle domande immediatamente, coinvolgere gli utenti nelle riunioni di analisi settimanali e coinvolgerli anche nei test funzionali).
La mia azienda è stata felice perché abbiamo consegnato in tempo e budget. La mia azienda era anche felice perché il successo di questo progetto ha aperto la porta a più progetti. Siamo persino stati citati nella rivista mensile del cliente che è stata inviata a persone di tutto il mondo.
Fare delle buone stime era la parte più difficile del progetto, ma avere le sessioni di stima in anticipo ci ha aiutato a capire la difficoltà e i rischi. Ci ha permesso di dare una stima basata sui fatti e rimosso molte delle incognite.