¿Qué
es mantenimiento de software?
El
estándar IEEE (IEEE, 1993) lo define como “la modificación de un producto de
software después de haber sido entregado con el fin de corregir defectos,
mejorar el rendimiento u otros atributos, o adaptarlo a un cambio en el
entorno”.
El
estándar ISO 12207 (Procesos del Ciclo de Vida del Software [ISO/IEC, 1995])
dice que “Es el proceso que contiene las actividades y tareas realizadas por el
mantenedor. Se activa cuando el software sufre modificaciones en el código y su
respectiva documentación debido a algún problema, necesidad de mejora o
adaptación. Su objetivo es modificar el producto existente preservando su
integridad, y su proceso incluye la migración y retirada del software”.
Se centra en el cambio asociado a la
corrección de errores, a las adaptaciones requeridas a medida que evoluciona el
entorno del software así como a cambios por mejoras.
Existen
cuatro tipos de mantenimiento:
- Correctivo
- Adaptativo
- Perfectivo
- Preventivo
El
mantenimiento correctivo tiene como
objetivo localizar y eliminar los defectos de los programas, que son
características con potencial para causar un fallo. Los fallos en el software
pueden ser de:
- Procesamiento
- Rendimiento
- Programación
- Documentación
El
mantenimiento adaptativo consiste en modificar un programa por cambios
en el entorno, que pueden afectar al sistema operativo, la arquitectura física
del sistema (parar de una red de área local a Internet o Intranet) o al entorno
de desarrollo del software.
Estos
cambios pueden ir desde un pequeño retoque en la estructura de algún módulo o
tener que re-hacer prácticamente todo el
programa para ejecutarlo en un ambiente distribuido.
Los cambios
en el entorno de software pueden ser
- De los datos
- De los procesos
Este tipo de
mantenimiento es ahora el más usual debido al rápido cambio en diversos
aspectos de la informática tales como nuevas generaciones de hardware cada dos
años, sistemas operativos nuevos y mejoras en otros elementos del sistema; y
con esto la vida útil de un sistema puede superar con facilidad los diez años.
El
mantenimiento perfectivo son cambios
en la especificación de los requisitos del producto, y puede ir desde cambiar
el formato de impresión de un documento a la incorporación de un módulo.
Se puede
dividir en dos:
- Mantenimiento de ampliación
- Mantenimiento de eficiencia
Este
mantenimiento aumenta si el software tiene éxito comercial, ya que así puede
satisfacer las demandas de funcionalidad de los usuarios.
El
mantenimiento preventivo consiste en
modificar el software para mejorar sus propiedades sin alterar su
funcionalidad. Un ejemplo puede ser reestructurar los programas para mejorar su
legibilidad o incluir comentarios que faciliten la comprensión del mismo.
Este
mantenimiento también es llamado de reutilización, ya que al modificar sus
componentes hace reusable el programa.
¿En
qué parte del ciclo de vida se incluye?
Puede
creerse que un trabajo terminó después de haber instalado y puesto en
funcionamiento el software, pero en realidad éste necesita que su
funcionamiento sea supervisado por un tiempo después de que éste se entrega.
Esta fase de supervisión se le llama de operación,
ya que después de esta fase el cliente acepta de modo definitivo el software,
pues había sido aceptado de forma temporal.
La etapa de
mantenimiento se incluye al final del ciclo de vida, debido a que si después de
la entrega se necesita hacer modificaciones en el software, es cuando esta
etapa entra en funcionamiento.
Referencias
Mantenimiento
de Software, [documento en línea], [citado 24-Enero-2014], disponible en http://ingenieria.uatx.mx/labastida/files/2011/08/MANTENIMIENTO-DE-SOFTWARE.pdf
Tema 9:
Mantenimiento, [documento en línea], [citado 24-Enero-2014], disponible en http://informatica.uv.es/iiguia/2000/IPI/material/tema7.pdf