Me he unido a un proyecto de rails como contratista. El proyecto ha estado funcionando por más de un año. El código está escrito por aproximadamente 10 desarrolladores diferentes y la mayoría de ellos también son contratistas. Tienen un estilo de código diferente. Algunos de ellos vinieron de Java. El código tiene puntajes horribles con metric_fu. Muchas funciones son muy largas (100 - 300 líneas). Algunas funciones tienen una cantidad insensata de ramas lógicas, bucles y recursiones. Cada solicitud genera una tonelada de consultas sql. El rendimiento es muy malo. Muchos códigos obsoletos que nunca se usan pero que nunca tuvieron la oportunidad de limpiarse. La arquitectura del núcleo está completamente equivocada o sobre ingeniería. La cobertura del código es solo de aproximadamente el 25%. Las vistas y los parciales son caóticos y terribles de leer y entender.¿Cómo convence a su gerente de que su proyecto necesita una gran refactorización?
El gerente está en una posición que intenta satisfacer al CEO agregando continuamente nuevas características, sin embargo, cada vez es más difícil implementar las funciones nuevas sin romper otra cosa. Él sabe que el código es malo, pero no quiere poner demasiado esfuerzo en solucionarlos, ya que la refacturación llevará demasiado tiempo.
Como contratista/desarrollador, ¿cuál es una buena manera de aclarar esta situación y conveniencia al gerente o al CEO para repartir algo de tiempo para refactorizar?
preguntas relacionadas
How can I convince skeptical management and colleagues to allow refactoring of awful code?
Dealing with illogical managers
Ad. 2 - Me pasa cada vez a mí, cuando me uno a un proyecto. +1 – samuil
También anuncio 2: Me pasa casi todo el tiempo cuando reanudo el trabajo en partes de mi propio código No he tocado por un tiempo ;-) – jens
A menos que haga algo drástico y desaconsejado como una amenaza de daño corporal, esto es lo que vas a obtener Tendrá que manipular la situación para refactorizar los módulos y convencerlos de la administración poco a poco para que tenga suficiente poder para realizar sus grandes cambios. –