Come gestire le stime per i programmatori che si uniscono al team?


11

L'iterazione è già iniziata, il nuovo programmatore si unisce al team, l'attività X è già stata stimata in 30 ore da un altro sviluppatore.

Qual è la migliore pratica in questa situazione?

  • il nuovo sviluppatore funziona con la stima fornita (l'idea è che eventuali discrepanze saranno corrette per il calcolo della velocità?)
  • nuovo compito di rivalutazione dello sviluppatore? (in tal caso, cosa succede se è significativamente più alto e non si adatta più all'iterazione?)
  • alzare le mani e tornare alla cascata?
  • qualcos'altro interamente?

Risposte:


4

Quello che dico è:

Il nuovo sviluppatore rivaluta l'attività. Se deve essere rimosso dall'iterazione, viene rimosso.

Non sai se il nuovo sviluppatore sarà in grado o meno di farlo nel tempo impiegato dallo sviluppatore originale. E con metodologie agili è lo sviluppatore che fa il lavoro quello che dovrebbe dire quanto tempo ci vorrà.

Inoltre, applicherei un moltiplicatore (quanto grande dipende dallo sviluppatore), poiché lo sviluppatore deve adattarsi al team / progetto / azienda.


15

Non aggiungerei questa persona a questo singolo sprint. Invece assegnagli un altro compito su cui lavorare per aggiornarti sulla base di codice (correzioni di bug a bassa sospensione forse?).

L'aggiunta di una nuova persona al team rallenterà probabilmente i tuoi progressi su questo particolare obiettivo poiché dovrà abituarsi al tuo ambiente e imparare come funzionano le cose lì. Incorporalo nel prossimo sprint, con stime adeguate basate sul nuovo team.


6

Prima di tutto, sento "Agile Task" e penso da uno a due giorni di lavoro, non di una settimana. I compiti sono ciò in cui si spezzano le storie quando la storia stessa si inserisce nell'iterazione, ed è una vera rarità avere una storia che non può essere suddivisa in pezzi più piccoli.

In secondo luogo, stai sostanzialmente chiedendo a questo nuovo sviluppatore di mettersi in gioco. Se ci si può ragionevolmente aspettare che salti dentro e tenga il passo del resto della squadra, allora la stima originale dovrebbe essere valida. Se non ci riesce, probabilmente non dovrebbe essere tenuto a questa stima, almeno non da solo.

Terzo, qual è la situazione? Sono abbastanza sicuro che la situazione non fosse che il team ha stimato il loro lavoro, quindi qualcuno è uscito e tu l'hai sostituito il giorno successivo. Quindi, sto pensando che X ragazzi del team abbiano stimato il lavoro di questo sprint e preso in considerazione ciò che pensavano di poter gestire, e poi hai introdotto il nuovo ragazzo e ora ci sono X + 1 ragazzi a fare il lavoro inizialmente impegnato da X ragazzi . A meno che il team non abbia scelto il proprio carico di lavoro e che il management non abbia riempito l'arretrato, questa settimana non darei molto al nuovo ragazzo. Se il programma è stato impostato dalla direzione, non è Agile.

Personalmente, imposterei questo ragazzo per accoppiarlo con un programmatore più esperto per il suo primo sprint (se i tuoi programmatori non si accoppiano sempre, il che sto deducendo non lo fanno dal fatto che stai considerando di darne uno compito per un ragazzo). Guardandosi alle spalle e ponendo domande, inizierà a imparare la base di codice e, se la sua abilità di programmazione generale è all'altezza, sarà un revisore efficace del codice quasi immediatamente, individuando bug, codice inefficiente, ecc. Ecc.


Sfortunatamente la situazione era praticamente quella: qualcuno ha stimato il lavoro, quindi abbiamo perso una buona quantità di forza lavoro. Ora la nuova manodopera ha i compiti stimati dalla vecchia manodopera.

7
È un caso eccezionale, e in quel caso vorrei che il nuovo team (non solo il nuovo) rivalutasse l'arretrato. Vorrei anche considerare di annullare lo sprint; se metà della tua squadra è partita a metà sprint non è più la stessa squadra e non ci si dovrebbe aspettare che raggiungano gli obiettivi della vecchia; avranno una nuova velocità in regime stazionario e un modo diverso di vedere le cose.
KeithS,
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.