Perché lo sviluppatore commette statistiche dannose?

10

Da lungo tempo ho creduto (e sentito da altri) che tenere traccia delle statistiche di commit, come il numero di commit effettuati da ogni sviluppatore al giorno, è dannoso per il processo di sviluppo. La ragione sembra ovvia: gli sviluppatori si impegneranno in piccoli incrementi, massimizzando il loro numero di commit-per-day, ma rendendo più difficile il bisect (forse tutte le patch intermedie non lasceranno il repository ben formato) e più difficile da lavorare con la cronologia dei commit (un cambiamento sarà improvvisamente in più commit, invece di uno solo, il ripristino di una patch è più difficile ecc.)

Esistono studi che mostrano che le statistiche del commit sono dannose? Qualche articolo elegante e ben discusso sull'argomento? Altrettanto applicabile sarebbe qualsiasi cosa sul perché misurare la cosa sbagliata porti a persone che ottimizzano la cosa sbagliata, che questo problema è solo un caso speciale di.

    
posta Neil Mitchell 29.01.2012 - 15:04
fonte

2 risposte

8

link

È questo il tipo di cosa che stai cercando? Ci sono migliaia di articoli "ottieni solo ciò che misuri" trovato da Google.

    
risposta data 29.01.2012 - 15:22
fonte
5

È una statistica divertente da misurare, ma non più utile della registrazione del numero di ore di lavoro di uno sviluppatore durante la settimana.

Per uno, non tiene conto della qualità del codice. Uno sviluppatore potrebbe essere impegnato continuamente mentre continua a correggere i bug nel suo codice. Questo mostrerebbe un gran numero di commit, rispetto a uno sviluppatore che commette un pezzo di codice rifinito e lucido. Non penseresti che il ragazzo con il maggior numero di commit sia lo sviluppatore migliore.

Allo stesso modo, qualcuno che si allontana e naviga SO tutto il giorno solo per commettere una volta al giorno avrebbe lo stesso conteggio commit dello sviluppatore dedicato che ha dedicato tutto il giorno alla codifica solo per eseguire un commit finale alla fine del giorno per mantenere il suo codice cassetta di sicurezza.

Se si dispone di un sistema in cui vengono contate le righe di codice commesse, il tizio che esegue il refactoring di tutte le parentesi graffe nel proprio stile preferito avrà un valore enorme. Il tizio che ha fatto il bugfix 1-line sup-importante apparirà a malapena.

Quindi non produce alcuna statistica significativa anche se gli sviluppatori non giocano al sistema. Non dovrebbe fornirti nulla se non un bel grafico. Comunque a tutti piacciono le statistiche quindi direi di tenerle, ma non usarle per qualcosa di diverso dal divertimento.

    
risposta data 29.01.2012 - 15:56
fonte

Leggi altre domande sui tag