Ho a che fare, ancora, con un'applicazione C ++ disordinata, tonnellate di classi con nomi confusi, oggetti che hanno puntatori l'uno nell'altro e in tutto, lunghi tipi di dati Boost e STL, ecc. (Metti in pausa e considera il tuo terrore preferito codice legacy disordinato. Probabilmente ce l'abbiamo.) La frase "code rot" mi viene in mente quando lavoro a questo progetto.
Esiste un metodo quantitativo per misurare la decomposizione del codice? Non mi aspetterei nulla di molto significativo o scientifico, dal momento che nessun'altra misura della produttività o della qualità del codice è così buona. Non sto cercando un semplice opposto delle misure di qualità del codice, ma in particolare una misura di quante cose brutte sono accadute dopo che una serie di "ingegneri" del software di manutenzione si sono trasformati in hacking al codice.
Una misura generale applicabile a qualsiasi lingua, o molte lingue, sarebbe ottima. Se non c'è nulla di simile, almeno per C ++, che è un linguaggio migliore della media per creare problemi.
Forse qualcosa che riguarda una misura della topologia del modo in cui gli oggetti si connettono durante il runtime, un conteggio di blocchi di codice commentato, come viene sparpagliata l'estensione di una variabile tipica, non lo so ... ma sicuramente ora, un decennio nel 21 ° secolo, qualcuno ha tentato di definire una sorta di misura del marciume.
Sarebbe particolarmente interessante automatizzare una serie di checkout svn, misurare la "rottenosità" di ciascuno e tracciare il decadimento nel tempo.