2. ¿Qué es ?
Es la modificación de un producto de software después de la
entrega, para corregir errores, mejorar el rendimiento,
u otros atributos.
3. ¡Sabias que también!
El mantenimiento de software
es también una de las fases
en el Ciclo de Vida de
Desarrollo de Sistemas (SDLC
ó System Development Life
Cycle), que se aplica al
desarrollo de software
4. En Las cuales hay 5 tipos de
mantención.
Mantención Correctiva
Mantención Preventiva
Mantención Perfectiva
Mantención Evolutiva
Mantención Adaptativa
5. Mantención correctiva
*Corrige los defectos encontrados en el software, y que originan
un comportamiento distinto al deseado
<<CORRIGE ERRORES>>
6. Mantención Preventiva
*Consiste en la revisión constante del software
para detectar posibles focos de problemas que
puedan surgir en el futuro.
<<PREBIENE ERRORES>>
8. Mantención evolutiva
Es un caso especial donde la adaptación resulta prácticamente obligatoria,
ya que de lo contrario el programa quedaría obsoleto con el paso del tiempo.
<<EVOLUCION EN VERSIONES>>
9. Mantención adaptativa
Si se requiere cambiar el entorno de uso de la aplicación (que incluye al sistema
operativo, a la plataforma de hardware o, en el caso de las aplicaciones web,
al navegador),
<<Adaptar el software >>
10. Tipos de cambios en productos software
1.0 Un cambio se dice que es anticipado cuando ha sido
previsto durante el desarrollo del sistema software y se han
adoptado decisiones de diseño que permiten acomodar la
variación.
1.1 Todo aquel que no es anticipado.
11. Principales Retos Mantenimiento Software.
*El efecto iceberg
(o el efecto usillos/reforma).
* No es lo mismo producir que mantener:
◮ Diferentes medidas de productividad entre desarrollo y
mantenimiento:40 LDC desarrollado por 1 LDC mantenido
12. Principales Problemas Mantenimiento Sw.
1 Efectos dominó y efecto iceberg.
2 Cambios ad-hoc, ausencia metodológica del cambio.
3 Ausencia de documentación adecuada (decisiones de diseño).
4 Degradación calidad del producto.
13. Solución para el
mantenimiento software.
•Establecer procedimientos claramente definidos y estandarizados para
el mantenimiento software, que se basen en técnicas y herramientas
para el mantenimiento claramente definidas y validadas.
•Asignarle los recursos adecuados, tanto físicos y económicos como
humanos,
•Usar técnicas para control de calidad, tanto sobre el producto como
sobre el proceso
14. Soluciones técnicas para el problema de mantenimiento
1 Ingeniería Inversa: Reconstruir el proceso de ingeniería de un
producto a partir de ciertos artefactos de dicho producto.
2 Reingeniería: Examen y modificación de un sistema para
reconstruirlo en una nueva forma.
3 Reestructuración: Modificaci´on del software para hacerlo
más fácil de entender y cambiar o menos susceptible de incluir errores en
cambios posteriores.
4 Transformaciones: Manipulación, por medio de transformaciones
automáticas ejecutadas por un computador, del código o modelo de
un sistema para añadirle/modificarle/eliminarle elementos
15. Conclusión
1Importancia del mantenimiento software
2 Definción de mantenimiento software.
Tipos de mantenimiento.
3 Importancia y problemas de los sistemas
heredados.
4 Organización y gestión del
mantenimiento.