MANTENIMIENTO DE SOFTWARE
Tipos, procesos, y buenas prácticas

![]()
Tipos, procesos, y buenas prácticas

¡Qué es?
Correctivo:
Es el más conocido Consiste en corregir fallos, errores o defectos que aparecen cuando el software ya está en uso.
Ejemplo: Arreglar un botón que no funciona, solucionar un cálculo incorrecto o reparar una caída inesperada del sistema
Adaptativo:
Busca ajustar el programa a cambios en su entorno, para que siga funcionando correctamente.
Ejemplo: Actualizarlo para que sea compatible con una nueva versión de Windows, adaptarlo a una nueva ley de protección de datos o integrarlo con otro sistema nuevo.
Perfectivo:
Tiene como objetivo mejorar el rendimiento, la usabilidad o las funciones del software, sin que haya un error obligatorio que arreglar. Se hace para que sea más útil y agradable.
Ejemplo: Agregar una nueva opción de búsqueda, hacer que cargue más rápido o rediseñar el menú para que sea más fácil de usar.
Preventivo:
Se realiza antes de que aparezcan problemas, para evitar fallos futuros y facilitar futuras modificaciones Incluye limpieza y reestructuración del código.
Ejemplo: Documentar mejor el código, eliminar partes obsoletas o reestructurar el programa para que sea más fácil de entender y modificar después.
Son los pasos ordenados que se siguen para realizar cambios de forma segura y controlada:
4. Pruebas
Se verifica que el cambio funcione bien y que no haya dañado otras partes del sistema.
5. Liberación y despliegue
Se instala la versión actualizada en el entorno real de uso.
6. Documentación y seguimiento
Se registra todo lo hecho para que quede constancia y se monitorea el sistema tras el cambio.

Reglas que garantizan un mantenimiento eficiente, seguro y económico:
1. Mantener la documentación actualizada: Todo cambio debe quedar registrado para que cualquier persona lo entienda después.
2. Usar control de versiones: Herramientas como Git permiten guardar cada versión y volver atrás si algo sale mal.
3. Realizar copias de seguridad antes de modificar: Protege contra pérdida de información.
4. Probar siempre antes de publicar: Evita entregar software con fallos a los usuarios
5. Escribir código claro y ordenado: Facilita futuras modificaciones y reduce errores.
6. Priorizar según impacto: Atender primero lo que afecta la seguridad o el funcionamiento principal
7. Aplicar mantenimiento preventivo: No esperar a que falle para actuar.
8. Gestionar la deuda técnica: Evitar acumular soluciones rápidas y mal hechas que generen problemas después.

Son los obstáculos que dificultan realizar un trabajo eficiente, seguro y económico hoy en día:
Son programas muy viejos, sin soporte oficial, con código complejo y difícil de entender. Actualizarlos cuesta mucho más que crear uno nuevo, pero siguen siendo esenciales para muchas empresas.
Deuda técnica acumulada
Soluciones rápidas y mal diseñadas hechas en el pasado. Con el tiempo generan más errores, ralentizan el sistema y encarecen cualquier cambio futuro
Falta de documentación
Sin registros claros, nadie entiende cómo funciona el código Cada modificación se vuelve una investigación larga y aumenta el riesgo de dañar algo importante.
Seguridad creciente
Cada día aparecen nuevas amenazas. Un software desactualizado es un blanco fácil para ataques, robo de datos o interrupciones del servicio
Entornos complejos
Ahora el software funciona en la nube, con múltiples dispositivos, sistemas operativos y normativas legales Adaptarlo a todos estos cambios es cada vez más difícil.
Costos y visibilidad
Representa hasta el 80% del presupuesto total, pero muchas veces se considera “ poco visible” frente a crear funciones nuevas, por lo que se le asignan pocos recursos.

1. Impacto económico: Explica que una mala gestión aumenta costos hasta un 40% anual
2. Seguridad: Cómo el mantenimiento evita vulnerabilidades y protege datos.
3. Satisfacción del usuario: Un software actualizado funciona mejor y genera confianza
4. Ejemplo práctico: "Un sistema bancario sin mantenimiento puede fallar en momentos críticos".
No documentar los cambios realizados
Saltarse pruebas antes de aplicar modificaciones
No tener copias de seguridad
Dejar de lado el mantenimiento preventivo
Usar código obsoleto sin actualizarlo
Aunque no todo es arreglar errores:
Solo ~20% del tiempo es mantenimiento correctivo (arreglar fallos)
El 80% restante es trabajo preventivo, adaptativo y de mejora.
Muchos creen lo contrario, pero es la realidad en proyectos maduros.

Lista herramientas gratuitas o muy usadas para realizar el mantenimiento:
Control de versiones: Git, GitHub, GitLab
Gestión de errores: Jira, Trello, Bugzilla
Pruebas: Selenium, Postman
Documentación: Confluence, Notion
Monitoreo: Zabbix, Nagios

