Heredas un módulo legacy de 2.000 líneas sin tests y debes cambiarlo. ¿Cómo procedes de forma segura?
Respuesta
- Lee y mapea el comportamiento; encuentra la zona que debes cambiar y sus puntos de corte.
- Añade tests de caracterización que capturen el comportamiento actual (aunque sea extraño) alrededor de esa zona.
- Refactoriza en pasos pequeños que no cambien el comportamiento: extrae funciones, renombra, inyecta dependencias.
- Haz el cambio con los tests en su sitio; considera un feature flag.
- Para grandes reescrituras usa el patrón Strangler Fig: mueve las piezas al código nuevo poco a poco.
- Entrega en incrementos pequeños, monitoriza y mantén los commits revisables.
Practica esta pregunta en Repaso