Come conto delle attività modificate o dimenticate in un preventivo?


10

Per gestire le stime a livello di attività e i rapporti temporali, ho usato (approssimativamente) la tecnica descritta da Steve McConnell nel capitolo 10 della stima del software. In particolare, quando arriva il momento di creare stime a livello di attività (proprio prima dell'inizio della codifica su un progetto), determino le attività a un livello abbastanza granulare in modo che, quando possibile, non ho attività con un punto singolo, 50 % di stima della fiducia superiore a quattro ore. In questo modo, il processo di stima delle attività aiuta a costruire il software aiutandomi a non dimenticare le attività durante la stima. Mi viene in mente un intervallo di ore possibili anche per ogni attività e, usando i calcoli statistici descritti da McConnell insieme ai miei dati storici di accuratezza, posso generare stime ad altri livelli di confidenza quando lo desidero. Sento che questo metodo ha funzionato abbastanza bene per me. Ci viene richiesto di inserire le attività e le relative stime in TFS per il monitoraggio, quindi utilizzo le stime con la percentuale di confidenza che mi viene detto di utilizzare.

Non sono sicuro, tuttavia, che cosa fare quando dimentico un compito, o finisco per fare un lavoro che non rientra ordinatamente in uno dei compiti che ho stimato. Certo, cercare di evitare questa situazione è la cosa migliore, ma come posso tenere conto delle attività dimenticate / modificate? Voglio avere i migliori dati storici possibili per aiutarmi con le stime future, ma in questo momento sto fondamentalmente solo calcolando se ho fatto la stima del 50% di fiducia e se l'ho fatta all'interno della stima a distanza.

Sarò felice di chiarire cosa sto chiedendo se necessario - fammi sapere cosa non è chiaro.



Penso che dovrò dare un esempio di come sto facendo questi calcoli e del problema che sto cercando di risolvere. Non ho tempo al momento, ma ci arriverò appena posso.
Andrew,

Nella mischia non si danno stime del tempo; dai punti trama, che danno agli altri un'idea. Inoltre non si dimensiona dal basso verso l'alto. Non è necessario: la velocità è una cosa vaga.
Giobbe

@Job Al momento non siamo una mischia. Inoltre, diversamente da quanto suggerito da un altro risponditore, ho scoperto che le stime bottom-up hanno migliorato la mia precisione di stima, in gran parte riducendo notevolmente il numero di attività dimenticate durante la stima a livello di attività.
Andrew,

@blueberryfields - moltiplicare solo del 50% dovrebbe essere sufficiente, almeno in un'azienda con molti livelli gerarchici, in cui ognuno aggiunge il proprio fattore di sopravvalutazione.
mouviciel,

Risposte:


6

Il libro Waltzing With Bears: Managing Risk on Software Projects (di DeMarco e Lister, autori di Peopleware) ha un approccio formidabile a questo. Ecco la mia reinterpretazione:

Fai una stima "tutto va alla perfezione". Naturalmente, tutto raramente va perfettamente, quindi ciò ha una bassa probabilità di accadere, diciamo lo 0,1 percento. In altre parole, solo un progetto su mille andrà perfettamente alla pianificazione. Questo è ciò che la maggior parte delle persone usa come "stima" che è ovviamente folle.

Dovremmo invece considerare le stime come distribuzioni di probabilità. Questa stima del "mondo perfetto" è il punto più a sinistra sulla distribuzione della probabilità stimata.

Quindi fai una stima "se le cose vanno così come sono andate per progetti simili come questo". Questa stima ti aiuta a prendere la "visione esterna" ( http://wiki.lesswrong.com/wiki/Outside_view ), sfuggendo all'errore di pianificazione ( http://wiki.lesswrong.com/wiki/Planning_fallacy ).

Quindi fai una stima "Sono sicuro al 90% che saremo fatti da X". Sii molto, molto sicuro di voler dire sicuro al 90%. In altre parole, ti aspetti di impiegare più tempo di questa stima solo una volta ogni dieci progetti che fai.

Ora possiamo usare la tua prima stima come stima dello 0,1% e la seconda come stima del 50% (stagione a piacere) e la terza come stima del 90%, che ti darà una bella curva.

Supponi che le tue stime dello 0%, 50% e 90% siano state il 1 ° maggio, il 1 ° giugno e il 1 ° agosto, quindi la tua curva di stima sarebbe simile a questa:

     100 |                                  ......
         |                        ..........
% chance |                ........
of being |          ......
  done   |      ....
         |   ...
         |...
       0 +-----------------------------------------
          \           \           \           \
           May 1st     June 1st    July 1st    August 1st

Nota come la crescita della probabilità rallenta nel tempo. Se qualcuno ti chiedesse una stima del 99,9% in questo scenario, potrebbe essere il 1 ° gennaio dell'anno successivo.


Grazie per la risposta. Il metodo che ho già utilizzato mi consente di fare ciò che sembra stia proponendo, tuttavia, ma tiene anche conto (indirettamente, utilizzando una percentuale di precisione storica) del mio successo passato con le mie stime al fine di generare la percentuale- stime attendibili desiderate. Quello che sto chiedendo, tuttavia, è come incorporare le attività perse in quell'accuratezza storica quando l'accuratezza è sostanzialmente calcolata dal fatto che io abbia o meno terminato un'attività all'interno dell'intervallo che ho usato per la mia stima originale.
Andrew,

@Andrew, se ti capisco correttamente, i "compiti mancati" sono spiegati dalla probabilità inferiore al 100% di essere eseguiti in un dato momento. Se hai realizzato molti progetti come quello attuale, la tua curva si inclinerà rapidamente dallo 0% al (diciamo) 90%. Questo perché hai una grande fiducia che ci siano pochi compiti persi. Se hai poca fiducia, la pendenza sarà molto più graduale. Ciò vale per qualsiasi motivo, non solo compiti dimenticati, ma anche altri fattori di rischio.
Benji York,

Sì, le attività perse vengono coperte nell'insieme dagli intervalli a livello di attività, che figurano nei livelli di confidenza che do. Calcolo quei livelli usando un metodo che McConnell propone nel capitolo 10 della stima del software, come ho detto prima. Mi chiedo principalmente come conto di queste attività mancanti o modificate nei rapporti sulle ore TFS e di come includere queste ore nel calcolo della mia precisione storica.
Andrew,

5

In una parola: contingenza.

La contingenza è l'importo che aggiungi per "altre cose" - le cose che non puoi tenere conto altrove nel tuo preventivo. SMc lo copre nella stima del software? Non ricordo e la mia copia è al lavoro (sono in vacanza e rispondo a questo - quanto sono triste) ...

Ad ogni modo, in generale ci sono tre tipi di contingenza che consiglierei di guardare:

1) contingenza specifica del rischio : è qui che si identifica un rischio specifico e si aggiunge un certo periodo di tempo per coprire il potenziale superamento ad esso correlato. La prima cosa da chiarire qui è il rischio: è qualcosa che potrebbe accadere, che avrà un impatto negativo sul progetto, che è al di fuori del tuo controllo .

Quest'ultima parte è fondamentale - non è solo "le cose richiedono un po 'più di quanto pensassi", è "il modulo di programmazione di terze parti che ci è stato detto che dobbiamo usare in quanto è uno standard aziendale potrebbe non essere all'altezza del compito". Il modo in cui calcoli quanta contingenza di rischio aggiungere è la probabilità percentuale che il rischio possa manifestarsi espressa in decimali (quindi 50% = 0,5), moltiplicata per l'impatto di tale rischio (quindi nell'esempio dire che è necessario scrivere CRON manualmente lavori invece di utilizzare lo scheduler e questo richiederà 10 giorni, questo numero è di 10 giorni).

Quindi, se c'è una probabilità del 50% che il tuo rischio si verifichi, e ci vorranno 10 giorni di sforzo per aggirarlo se lo fa, aggiungi 5 giorni. Aggiungi tutti i valori per tutti i rischi identificati nel progetto e aggiungili al totale.

2) Shit Happens Contingency - La migliore descrizione che io abbia mai sentito per questo, anche se non è elegante. È un progetto IT, succede di merda. Non va mai come pensi che succederà, le cose richiedono più tempo, si perdono e così via. Generalmente la contingenza SH sarà compresa tra il 10% (minimo assoluto) e il 25% (sebbene possa essere più elevato) con il 15% circa tipico, il livello esatto dipende dal livello di incertezza e rischio generale (spostamento dei pali degli obiettivi, requisiti incerti e così via ).

Se il tuo PM non accetta la contingenza SH (ed è possibile, potrebbe non avere esperienza di progetti IT o essere un ottimista cieco), quindi aggiungilo a tutti i singoli importi. Se sa cosa sta facendo, avrà un registro dei rischi tutto suo e ti amerà per aver pensato a queste cose. Certamente se ha qualche tipo di qualifica PM (come PRINCE2) lo saprà.

3) Modifica contingenza : è qui che sei abbastanza sicuro che il cliente aumenterà le modifiche ma non vuoi che sia un punto di contesa. Aggiungi X giorni o X% e va in un piatto per le modifiche che il cliente solleva. Esistono due modi per gestirlo: o glielo dici ed è il loro da spendere o non glielo dici.

Il primo modo è il migliore, ma ha bisogno di un cliente abbastanza educato ed equo - le cose sono classificate come cambiamenti e lui può spendere il suo piatto come meglio crede (in base a te che valuta le cose mentre escono).

Il secondo modo in cui dici che è un cambiamento, ma non cercare di addebitarlo di più. Devi annotare tutte le cose in cui lo spendi, quindi se arriva al punto in cui si esaurisce e devi tornare dal cliente e chiedere più tempo o denaro e loro dicono "aspetta, io" sto pagando blah blah blah "puoi indicare tutte le cose che sono già cambiate che non hai addebitato come segno che non sei del tutto irragionevole. Non sempre funziona, ma quasi sempre rafforza la tua mano nelle discussioni.

Nessuna di quelle tre copre specificamente le cose che hai dimenticato, ma penso che tra di esse riempirai molte lacune che hai.


La ringrazio per la risposta. Sollevi punti interessanti. Ho già incorporato questi tre elementi in vari modi nelle mie stime. Il tuo primo tipo, ho scoperto, può in genere essere articolato e associato a una o più attività. Il secondo tipo viene appena incorporato nelle mie stime sull'intervallo a livello di attività: non sono autorizzato ad avere un elemento aggiuntivo per questo (ne abbiamo discusso, e per ora, questa è la politica del nostro team). Per il terzo, i clienti interni accettano che le modifiche aumenteranno la nostra stima e che i clienti esterni ce l'hanno per iscritto, quindi non dovremmo prendere in considerazione le modifiche.
Andrew,

Per quanto riguarda se McConnell copre le contingenze, anche la mia copia è al lavoro, quindi dovrei controllare. Penso che quello che sto chiedendo sia come tenere conto delle attività mancanti / modificate quando si calcolano i dati storici per informare la stima successiva e dove assegnare le ore in TFS, dal momento che un'attività di emergenza non è normalmente consentita nel nostro gruppo.
Andrew,

0

Quando ti viene chiesto un preventivo per un'attività, fornisci una stima di fascia alta al team e fai una stima di fascia bassa per te stesso, facendo ciò avrai sempre tempo dopo che l'attività è stata completata per lavorare su qualcosa che potresti aver dimenticato di menzionare in primo luogo.


Grazie per la risposta. Le gamme che mi vengono in mente, nel loro insieme, tendono a concedermi abbastanza tempo per aggiungere compiti dimenticati senza perdere la stima per l'intero progetto. La mia domanda parla di più sull'uso di queste informazioni nella procedura di calcolo che sto usando dal libro McConnell.
Andrew,

0

Sei preoccupato che aggiungendo le attività extra, altererai la tua precisione storica? O pensi che non includere le attività extra comprometterà l'accuratezza?

Penso che per il meglio del progetto, i compiti dovrebbero essere inseriti nel sistema di monitoraggio. Sono sicuro che il responsabile del progetto sarà in grado di offrire una spiegazione adeguata alla direzione per discrepanze ...


Potrei solo aspettare fino a domani e dirtelo di persona. :) Sono più preoccupato per l'imprecisione della storia se le attività extra non sono in qualche modo incluse. Chiaramente, perdere un'attività durante la stima dell'attività è una "mancanza" per quanto riguarda l'accuratezza, ma quale cifra dell'accuratezza? Quello che effettivamente uso in senso quantitativo è se la mia prestazione effettiva per ciascuna attività rientrava nell'intervallo previsto. L'altra misura, più qualitativa, è la frequenza con cui incontro le mie stime single point sicure al 50%. Troppo al di sopra o al di sotto del 50% e dovrei adeguare il "giudizio di esperti" per future stime del 50%.
Andrew,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.