El documento describe el mantenimiento de software, el cual involucra modificar un producto de software después de su lanzamiento para corregir errores, mejorar el rendimiento u otros atributos. El mantenimiento de software es una de las fases del ciclo de vida de desarrollo de sistemas y representa una parte significativa de los costos totales de un proyecto de software a lo largo de su vida útil.
2. • el mantenimiento de software es la modificación de un
producto de software después de la entrega, para corregir
errores, mejorar el rendimiento, u otros atributos. El
mantenimiento del software es una de las actividades más
comunes en la ingeniería de software.
• El mantenimiento de software es también una de las fases
en el ciclo de vida de desarrollo de sistemas (SDLC, sigla en
inglés de system development life cycle), que se aplica al
desarrollo de software. La fase de mantenimiento es la fase
que viene después del despliegue (implementación) del
software en el campo.
3. • Una percepción común del mantenimiento es que se trata
meramente de la corrección de defectos. Sin embargo, un
estudio indicó que la mayoría, más del 80%, del esfuerzo
de mantenimiento es usado para acciones no correctivas
(Pigosky 1997). Esta percepción es perpetuada por
usuarios enviando informes de problemas que en realidad
son mejoras de funcionalidad al sistema
• El mantenimiento del software y la evolución de los
sistemas fue abordada por primera vez por Meir M.
Lehman en 1969. Durante un período de veinte años, su
investigación condujo a la formulación de las leyes de
Lehman (Lehman 1997).
4. • Principales conclusiones de su investigación incluyen que el
mantenimiento es realmente un desarrollo evolutivo y que las
decisiones de mantenimiento son ayudadas por entender lo
que sucede a los sistemas (y al software) con el tiempo.
Lehman demostró que los sistemas continúan evolucionando
con el tiempo. A medida que evolucionan, ellos crecen más
complejos a menos que se toman algunas medidas
como refactorización de código para reducir la complejidad.
• Los problemas claves de mantenimiento de software son
administrativos y técnicos. Problemas clave de administración
son: alineación con las prioridades del cliente, dotación de
personal, cuál organización hace mantenimiento, estimación
de costos. Son cuestiones técnicas claves: limitado
entendimiento, análisis de impacto, pruebas (testing),
medición de mantenibilidad.
5. • El mantenimiento de software es una actividad muy amplia
que incluye la corrección de errores, mejoras de las
capacidades, eliminación de funciones obsoletas y
optimización. Debido a que el cambio es inevitable, se debe
desarrollar mecanismos para la evaluación, controlar y hacer
modificaciones.
• Así que cualquier trabajo realizado para cambiar el software
después de que esté en operación es considerado trabajo de
mantenimiento. El propósito es preservar el valor del software
sobre el tiempo. El valor puede ser mejorado ampliando la
base de clientes, cumpliendo requisitos adicionales, siendo
cada vez más fácil de usar, más eficiente y empleando más
nuevas tecnología. El mantenimiento puede abarcar 20 años,
mientras que el desarrollo puede estar entre 1 y 2 años.
6. Importancia del Mantenimiento de Software
• Adaptable. Modificar el sistema para hacer frente a cambios
en el ambiente del software (DBMS, OS)
• Perfectivo. Implementar nuevos, o cambiar requerimientos de
usuario referentes a mejoras funcionales para el software
• Correctivo. Diagnosticar y corregir errores, posiblemente los
encontraron por los usuarios
• Preventiva. Aumentar la capacidad de mantenimiento de
software o fiabilidad para evitar problemas en el futuro
7. Fases de Mantenimiento
• involucra cambios al software para corregir defectos
encontrados durante su uso o la adición de nueva
funcionalidad mejorando la usabilidad y aplicabilidad del
software.
• El mantenimiento del software involucra diferentes
técnicas específicas. Una técnica es el rebanamiento
estático, la cual es usada para identificar todo el código
de programa que puede modificar alguna variable. Es
generalmente útil en la refabricación del código del
programa y fue específicamente útil en asegurar
conformidad para el problema del año 2000.
8. • La fase de mantenimiento de software es una parte
explícita del modelo en cascada del proceso de
desarrollo de software el cual fue desarrollado durante
el movimiento de programación estructurada en
computadores. El otro gran modelo, el Desarrollo en
espiral desarrollado durante el movimiento de
ingeniería de software orientada a objeto no hace una
mención explícita de la fase de mantenimiento. Sin
embargo, esta actividad es notable, considerando el
hecho de que dos tercios del costo del tiempo de vida
de un sistema de software involucran mantenimiento
9. • En un ambiente formal de desarrollo de software, la
organización o equipo de desarrollo tendrán algún
mecanismo para documentar y rastrear defectos y
deficiencias. El Software tan igual como la mayoría de
otros productos, es típicamente lanzado con un
conjunto conocido de defectos y deficiencias. El
software es lanzado con esos defectos conocidos
porque la organización de desarrollo en las utilidades y
el valor del software en un determinado nivel de calidad
compensa el impacto de los defectos y deficiencias
conocidas.
10. Mantenimiento Preventivo de Software
• El mantenimiento preventivo consiste en una atención constante de
limpieza, revisión y afinación de los distintos elementos integrantes
de un equipo de cómputo. Es importante saber que la mayoría de los
problemas que se presentan en el trabajo cotidiano, se debe a la falta
de un programa específico de mantenimiento de los equipos, de tal
manera que la mayoría de los problemas se resuelven con el mismo
procedimiento del mantenimiento preventivo. El mantenimiento tiene
técnicas para darle un periodo de vida útil más largo y libre de fallas.
Debemos de tener en cuenta que es necesario darle mantenimiento
al software ya que el continuo uso genera una serie de cambios en la
configuración original del sistema, causando bajas en el rendimiento
que al acumularse con el tiempo pueden generar problemas serios.
Actualmente es indispensable mantener actualizada la protección
contra virus informáticos.
11. • Por supuesto es muy recomendable usar su equipo
responsablemente, ya que esto le podrá causar un gasto
mayor a futuro.
• Las recomendaciones son: Cuidar las páginas a las que
accesa, las de música, videos o juegos regularmente traen
enlaces que pueden filtrarse directamente al equipo de
cómputo, tener un antivirus actualizado, hacer cada cierto
tiempo un escaneado y limpieza de su PC, evitar los
mensajes SPAM que llegan en los correos electrónicos, estos
mensajes llegan normalmente con remitente desconocido y se
almacenan en la carpeta Correo no deseado, generalmente
son solo virus que no hacen mucho daño, pero también puede
costar hasta el formateo del equipo y con esto, la perdida de
archivos importantes.