Alcuni libri sulle metriche che probabilmente la tua biblioteca universitaria ha probabilmente includono Metriche e metriche e modelli nell'ingegneria della qualità del software . Quei 2 dovrebbero darti un punto di partenza. Nel mondo industriale, pochissime aziende hanno una sorta di programma di misurazione metrica.
La maggior parte delle aziende ha un modo, non deve essere un programma elegante, per misurare metriche significative?
Visual Studio include alcuni strumenti di analisi del codice che possono iniziare. La maggior parte delle aziende non ha nemmeno qualcosa per misurare la peggiore metrica possibile: righe di codice. "Fallo e basta" sembra essere la forza trainante del settore e le preoccupazioni di manutenibilità ricevono un'attenzione molto breve alle preoccupazioni dei manager di "riceverò il mio bonus quest'anno?" e "sarà fatto nel tempo che ho promesso?" Anche con prodotti che si ripercuotono di anno in anno con cambiamenti incrementali, queste 2 preoccupazioni hanno sminuito gli sviluppatori riguardo alla manutenibilità e alla rilevazione / prevenzione dei bug.
Quali metriche, singole o combinate, ti aiutano a restringere l'ambito e le stime dei tuoi progetti?
Trovo che la complessità e l' accoppiamento ciclomatici siano forti indicatori di quanto il buggy o quanto difficile sarà mantenere il codice. Se la complessità ciclomatica è di circa 20, trovo che sarà quasi impossibile testarlo (poiché avrà fino a 2 ^ 20 percorsi attraverso il codice) e dovrebbe essere scomposto in pezzi più piccoli. Non è possibile eliminare la complessità, ma è possibile suddividerla in blocchi più gestibili.
Se stai cercando una stima , probabilmente vorrai studiare i punti funzione .
La copertura del codice% sta riducendo drasticamente ogni iterazione, avvisate gli sviluppatori del problema
Trovo che la maggior parte dei manager si preoccupi del numero di check-in e del numero di bug che vengono corretti. Il mio attuale manager si oppone ai test unitari (pensa che sia una perdita di tempo) e il mio precedente manager pensava che il tempo speso per i test unitari fosse il tempo che avrebbe dovuto essere impiegato a scriverlo in primo luogo.
L'argomento canonico utilizzato dagli sviluppatori è che se si misura qualcosa, questo è solo ciò che si otterrà. Questo argomento nasce dall'idea che l'unica metrica sia la riga di codice.