Ho lavorato in un'applicazione con circa 100k LOC e fondamentalmente abbiamo rielaborato le funzionalità per conformarci a una nuova architettura basata su un nuovo stack tecnologico. Questo lavoro è quasi finito ma abbiamo dovuto conservare il vecchio codice perché dovevamo garantire un ambiente stabile in caso di bug critici nel nuovo.
Questo ha portato a una situazione in cui abbiamo un sacco di codice morto che si mescola con un sacco di codice funzionante, rendendo così difficile stimare quanto tempo ci sarebbe voluto per rimuovere questo codice morto.
Questo codebase in particolare è molto problematico in quanto non ha test di unità / integrazione diverso da quello generato nel processo di rielaborazione delle caratteristiche che abbiamo migrato alla nuova architettura e inoltre penso che una buona parte del nuovo codice sia intrecciato con il codice morto (mediante chiamate statiche, utilizzando le eccezioni generate in precedenza).
Quale sarebbe un buon punto di partenza per stimare quanto tempo occorrerebbe per rimuovere il codice in modo sicuro?