Incoraggia gli ingegneri del software a tenere traccia del tempo

24

Come posso incoraggiare i miei colleghi a tenere traccia del tempo trascorso a risolvere i problemi e implementare le funzionalità? Abbiamo software per farlo, ma semplicemente non inseriscono i numeri.

Voglio che il team migliori nel fornire stime di progetti confrontando le nostre stime passate con il tempo effettivo trascorso. Sospetto che i miei colleghi non vedano il beneficio personale, dal momento che non sono spesso coinvolti nella pianificazione del progetto.

    
posta M. Dudley 03.06.2011 - 15:04
fonte

14 risposte

41

I suspect that my coworkers don't see the personal benefit, since they're not often involved in project scheduling.

È risolvibile.

Rendili coinvolti nella pianificazione.

    
risposta data 03.06.2011 - 15:26
fonte
21

Joel Spolsky ha scritto un articolo su Pianificazione basata sull'evidenza che può aiutarti a trovare alcuni argomenti.

Devi convincere i tuoi collaboratori che una migliore capacità di stima può aiutarli a produrre un software migliore. Ecco alcuni punti a favore del tempo di attività di monitoraggio:

  • Se hai una scadenza di gestione arbitraria, le buone stime ti diranno cosa puoi effettivamente realizzare in quel momento. Come bonus hai alcuni grafici carini per convincere il manager che sai di cosa stai parlando.
  • Devi pensare al progetto con più attenzione. L'articolo che ho collegato dichiara: "Devi interrompere la tua pianificazione in attività molto piccole che possono essere misurate in ore ." Dal momento che hai pensato praticamente ad ogni aspetto del progetto (magari scrivendo una specifica !), Sei molto meno probabile essere sorpreso da qualcosa a cui non hai pensato.
  • Ti rende uno sviluppatore migliore. Vedrai nel tempo quali tipi di attività tendi a sottovalutare, in modo che tu possa trascorrere un po 'di tempo a migliorare quelle attività specifiche piuttosto che a ottimizzare ciecamente.
risposta data 03.06.2011 - 15:23
fonte
10

Puoi farlo nel modo standard - carote e bastoncini.

La carota in questo caso potrebbe essere "migliorata stima futura comprendendo la nostra velocità attuale" - ma dovresti seguire.

Il tuo commento sul fatto che non sono spesso coinvolti nella pianificazione del progetto potrebbe renderlo una vendita difficile.

I più efficienti tra loro, in particolare se hai dei follower di PSP , è che li stai aiutando meglio.

Il bastone più comune (picchiarli con, non tenere la carota di fronte a loro) è "è obbligatorio, fallo". Mentre non molto di un motivatore; almeno la posizione è chiara.

Infine, il software che stai utilizzando contribuisce alla reticenza? È goffo? Devono cercare codici temporali nel sistema A, prima di dedicare il loro tempo al sistema B? E 'troppo granulare, non consente il tempo di "off" e richiede una contabilità di 8 ore al giorno. Rendilo il più privo di attrito possibile per aiutare anche l'adozione.

Good Luck

    
risposta data 03.06.2011 - 15:20
fonte
8

Nella mia esperienza, i seguenti sono i problemi con la maggior parte del software di monitoraggio del tempo:

  • Lo sviluppatore non ha l'abilità o l'autorità per suddividere un'attività in sottotag più facilmente valutabili al volo.
  • Non c'è un buon modo per tenere conto delle sottoattività che non conoscevi finché non hai iniziato a lavorare su qualcosa, una situazione che appare sempre nello sviluppo e nel debug del software.
  • Il tempo trascorso viene inserito dopo il fatto, quando è difficile ricordare esattamente quale sforzo specifico è stato dedicato a un'attività e quanto è andato alle riunioni, alle domande dei colleghi, alle revisioni tra pari e altri costi generali.
  • Non esiste un buon modo per tenere conto delle attività non tracciate. Alla fine della giornata, metti giù 8 ore anche se sei di quelle sono state spese a trattare riunioni e simili?
  • Non esiste un modo valido per tenere conto e comunicare l'incertezza nelle stime.

Ho affrontato molti di questi problemi iniziando ad usare la tecnica del pomodoro per me stesso. Se lavoro 25 minuti senza interruzioni su un'attività, viene registrato in quel momento e le mie stime sono fatte in termini di intervalli ininterrotti. Sto ancora lavorando all'integrazione di una pianificazione basata sull'evidenza per comunicare l'incertezza, e sulla traduzione del mio tracciamento a grana fine nel programma approssimativo, le stime sono piaciute a PM, ma finora è stato sicuramente un miglioramento.

    
risposta data 03.06.2011 - 16:16
fonte
6

Ottimo modo

Usa il software, che in effetti lo rende facile e quasi trasparente, come ad esempio Mylyn. Combinalo con strumenti come ad esempio un grafico di burn-down dell'ora.

Cattivo modo

Forzali a riempire i noiosi fogli di lavoro, dove devi specificare manualmente il progetto, l'attività, le date e le ore esatte, ecc.

    
risposta data 03.06.2011 - 16:38
fonte
2

Se non sei il responsabile della squadra / PM, allora avrai difficoltà con questo. Le persone non amano ascoltare i loro coetanei se richiede loro di dover fare più lavoro di quanto assolutamente necessario (nella mia esperienza, comunque, è il caso). Prova a prenderlo con il tuo capo squadra o PM, e se sono d'accordo con il tuo caso, probabilmente possono semplicemente rendere obbligatorio il logging temporale (è quello che è successo dove lavoro attualmente).

Se sei il lead / PM del team devi essere più strong nel tuo ruolo: queste persone sono lì per fare ciò che dici (in modo efficace), e se hai bisogno di più informazioni per fare il tuo lavoro dovresti prenderle fornire tali informazioni. Se non sono disposti ad aiutarti a ottenere le informazioni probabilmente è perché non capiscono perché è utile, prova a parlare con loro per spiegare come i tuoi progetti spesso vanno fuori programma / diventano sopravvalutati / qualsiasi cosa e perché causano hai problemi, vedi se riesci a girarli!

    
risposta data 03.06.2011 - 15:17
fonte
2

Tieni traccia del tuo tempo o non ti viene pagato. Milioni di persone lo fanno (consulenti, avvocati, ecc.), Perché non possono?

Alcuni potrebbero pensare che questo sia piuttosto draconiano, ma non lo è. Se lavori a Starbucks, devi pulire il bagno . Se lavori in una banca, indossi giacca e cravatta per lavorare ogni singolo giorno e se sei un ingegnere informatico in una squadra che ha bisogno di te per tenere traccia del tuo tempo, fai it

A volte dobbiamo fare cose nel nostro lavoro che non ci piace. Siamo tutti grandi ragazzi e ragazze, penso che dovremmo essere in grado di gestirlo.

    
risposta data 03.06.2011 - 17:31
fonte
1

Ovviamente la miglior risposta dipende interamente dalla miscela psicologica della tua squadra. Sono competitivi? Progetta un concorso ricorrente che premia il vincitore per aver inserito il proprio tempo nel sistema. Regola e accorda il concorso in modo che i giocatori pensino che sia giusto e divertente. Fallo diventare un gioco.

Forse temono che se ci fosse trasparenza sul tempo in cui effettivamente hanno speso nell'esecuzione di un'attività, ci sarebbero state conseguenze negative. Mi sono sempre chiesto come progettare uno "strumento di tracciamento dello sforzo" che fosse anonimo e in cui i bucket fossero sufficientemente di livello sufficientemente alto da consentire a più persone di versare gli importi spesi per sforzo in ciascun bucket che i singoli contributori non potevano essere individuati. Anche solo ottenere costi di sforzo più accurati per i bucket di progetto di alto livello potrebbero essere dati utili per la pianificazione del progetto e la velocità complessiva del team, ma questo eviterebbe "OMG, non posso credere che Joe abbia preso 3x la sua stima per fare qualcosa di così semplice .. . "o quello che le persone hanno paura di segnalare in un sistema tradizionale di tracciatura del tempo.

Suppongo che questi siano solo due esempi, ma in realtà, avere una buona conoscenza della composizione psicologica del tuo team ti darà la risposta giusta su come incentivare o altrimenti incoraggiarli a contribuire con le informazioni sul costo dello sforzo.

    
risposta data 03.06.2011 - 16:23
fonte
1

Pensa a perché potrebbe essere che non rispondono bene a questa richiesta. Non dare per scontato di essere pigri o di evitare sforzi.

Gli sviluppatori che evitano di produrre prove di solito sono

  • Preoccupato per come potrebbe essere usato e / o
  • Preoccupato per la validità dei dati

Ecco perché la stima basata su punti e il dimensionamento della maglietta sono decollati negli ultimi anni. Prende in considerazione la natura molto incerta del processo di stima e consente di "magia" (alias, in media fuori dalle incertezze) per prendere il controllo della programmazione.

E, anche se può non sembrare logico, funziona per lo più - almeno così come un sistema basato su ore o giorni. È anche molto difficile battere una squadra o un individuo in testa con quello che hanno raggiunto in un mese se è fatto in modo arbitrario.

Scrum consente inoltre agli sviluppatori di controllare la velocità, il che significa che stanno facendo una promessa per ottenere qualsiasi cosa tu scelga tra A, B e C o A, Y e Z. Quando hanno fatto quella promessa, agli sviluppatori non piace fallire; ma se tu fai quella promessa per loro, a loro non importa. È colpa tua se è sbagliato.

Capisco che tu stia dicendo che non useresti le riconsiderazioni in questo modo, ma quanto sono certe le persone della tua squadra?

    
risposta data 03.06.2011 - 16:29
fonte
1

Qualsiasi strumento che richieda ai programmatori di dedicare ancora più tempo alla programmazione non è necessariamente una grande cosa. I programmatori hanno già un sacco di spese generali, non stanno avendo incontri da 5 minuti e poi stanno programmando una tempesta.

Se hai il potere, puoi costringerlo a farlo. Ma la soluzione migliore è di creare uno strumento senza cuciture che lo renda indolore. Non posso dirvi come farlo per la progettazione, ma per la codifica, si desidera registrare le modifiche apportate nell'ambiente di sviluppo. Questa era una barra incredibilmente alta, ma se stai usando qualcosa come Eclipse, non è così male, forse esiste già. In questo modo, puoi misurare il tempo trascorso in ogni file e potenzialmente in Java, ciascun metodo. Si tratta di informazioni molto più dettagliate di quelle che ottieni chiedendo loro di comunicare e può essere abbastanza preciso.

Allo stesso modo, se hai uno strumento per inserire disegni, puoi intercettarlo lì.

    
risposta data 03.06.2011 - 20:11
fonte
0

Dipende da come e perché vuoi che tengano traccia del tempo, inoltre contiamo solo il tempo trascorso in ufficio o il tempo trascorso in viaggio per lavorare pensando anche al problema?

La pianificazione del progetto è difficile e ci sono buone probabilità che le metriche ottenute non siano così utili come si potrebbe pensare. Non ci sono due problemi uguali, quindi un compito può richiedere otto ore, mentre un altro può durare fino a 32 ore.

Si potrebbe voler esaminare la pianificazione basata sull'evidenza in quanto ha lo stimatore dello sviluppatore per quanto tempo impiegherà un task e quindi si aggiusterà nel tempo in base a quanto sono valide le loro stime; tuttavia, non è buono per i progetti di grandi dimensioni in quanto potresti non conoscere tutti i compiti in anticipo. Per i progetti di grandi dimensioni è meglio guardare a progetti precedenti di portata simile e utilizzarli come criterio piuttosto che cercare di aggregare stime individuali.

    
risposta data 03.06.2011 - 15:20
fonte
0

Prova ad introdurli a sistemi di organizzazione personale come tecnica Pomodoro per esempio (ce ne sono molti altri ma è quello che ho io sto provando ora)

The technique uses a timer to break down periods of work into 25-minute intervals called 'Pomodori' (from the Italian word for 'tomatoes') separated by short breaks. Closely related to concepts such as timeboxing and iterative and incremental development used in software design, the method has been adopted in pair programming contexts. The method is based on the idea that frequent breaks can improve mental agility..

    
risposta data 03.06.2011 - 15:35
fonte
0

Invece di convincerli a inserire i loro numeri, usa un software che funzioni senza sforzo. Sto utilizzando ScreenAware: link Tiene traccia automaticamente il tuo tempo e lo assegna ai rispettivi progetti. Quindi è sempre preciso e nessuno deve indovinare più

    
risposta data 26.06.2017 - 17:18
fonte
-1

Hai preso in considerazione l'utilizzo del tuo sistema di ticket esistente? Il nostro sistema di ticket monitora il tempo che intercorre tra la creazione di un ticket e la chiusura. Se crei biglietti per le attività e rendi un numero di biglietto un requisito per l'invio di codice, stai ricevendo più soldi per te.

    
risposta data 03.06.2011 - 17:47
fonte