Permítame agregar detalles: trabajo en un lugar institucional con muchos programadores, evaluadores, analistas de control de calidad, propietarios de productos, etc. y aquí hay algo que me molesta:
Hemos podido vender software de mala calidad (aunque bastante funcional) durante más de una década. Tiene muchas características y el producto es competitivo, pero hay algunos errores graves, así como miles de "recortes de papel", pequeñas molestias a las que los clientes deben acostumbrarse.
Me duele mirar algunas de las cosas porque creo firmemente que si las computadoras no ayudan a hacernos la vida más fácil, entonces no debemos usarlas. Tengo confianza en mis colegas: son inteligentes, capaces y pueden mejorar las cosas cuando la atención se centra en hacerlo.
Pero, puede ser difícil archivar errores contra alguna funcionalidad antigua sin verlos cerrados u olvidados. "Funcionó así por eones" es una respuesta típica. Además, cuando el control de calidad hace una regresión, tienden a buscar cualquier cosa que sea diferente a cualquier cosa que no parezca correcta. Por lo tanto, una solución a un viejo problema puede escribirse como un error, porque "ha sido así incluso antes de mi tiempo".
El joven codificador en mí piensa: ¡reescribe esta maldita cosa! Como alguien que tuvo la oportunidad de estar cerca de las ventas, clientes, quiero dar un beneficio de una duda a este enfoque.
Estoy interesado en su opinión / experiencia también. Intente tener en cuenta el riesgo, el costo-beneficio y otros factores no técnicos.