He visto múltiples publicaciones sobre reescrituras de aplicaciones que son malas, las experiencias de las personas al respecto aquí en Programadores, y un artículo que he preparado de Joel Spolsky sobre el tema, pero no hay evidencia sólida o estudios de casos. Además de los dos ejemplos que dio Joel y algunas otras publicaciones aquí, ¿qué haces con una mala base de código y cómo decides qué hacer con base en estudios reales?
Para el caso en cuestión, hay dos clientes que conozco que ambos tienen código antiguo. Siguen cojeando con él porque, como uno de ellos descubrió, una reescritura fue un desastre, fue costoso y realmente no funcionó para mejorar mucho el código. Ese cliente tiene una lógica comercial muy complicada, como descubrieron rápidamente los reescritores.
En ambos casos, estas son aplicaciones de misión crítica que generan muchos ingresos para la empresa. El que intentó la reescritura sintió que golpearían una pared de ladrillos si el software heredado no se actualizara en algún momento en el futuro. Para mí, ese tipo de riesgo requiere investigación y análisis para garantizar un camino exitoso.
¿Ha habido estudios de casos reales que hayan investigado esto? No quisiera intentar una reescritura importante sin conocer algunas de las mejores prácticas, trampas y éxitos basados en estudios reales.
Consecuencias: bueno, después de más búsquedas, encontré tres artículos interesantes sobre estudios de casos:
- Reescribir o reutilizar . Hicieron un estudio sobre una aplicación Cobol que se convirtió a Java.
- El otro fue sobre la reutilización de software: experiencias y percepciones de los desarrolladores .
- Reutilizar o reescribir Otro estudio sobre costos de mantenimiento versus una reescritura.
Recientemente encontré otro artículo sobre el tema: The Great Rewrite . Allí, el autor parece tocar algunos de los principales problemas. Junto con esto, surgió la idea de crear prototipos mediante el uso de la nueva pila de tecnología propuesta y medir la rapidez con que los desarrolladores lo recogieron. Todo esto fue el preludio de una reescritura, ¡lo cual me pareció una gran idea!