944 visualizaciones desde el 17 de Octubre del 2018
99,9 KB
16 paginas
Creado hace 16a (09/10/2008)
Master Oficial
en Sistemas Telemáticos e Informáticos
TEMA I
Evolución y Mantenimiento
Software
1
2
3
OBJETIVOS
Describir los problemas del Mantenimiento
y Evolución del Software
Concepto y Leyes de Evolución del Software
Tipos de Mantenimiento Software
Reingeniería y Mantenimiento
Caso teórico-práctico
URJC – Master en Sistemas Telemáticos e Informáticos
Tema 1: Evolución y Mantenimiento Software
Problemas del Mantenimiento y Evolución del Software
Dificultad para mantener los programas
Dificultad para que el software evolucione
Cambios frecuentes en los requisitos
Diseño pobre / rígido
Problemas de obsolescencia
Cambios tecnológicos
URJC – Master en Sistemas Telemáticos e Informáticos
1
Tema 1: Evolución y Mantenimiento Software
1.1 Concepto y leyes de la Evolución de Software
El concepto de Evolución de Software implica un cambio continuo
desde un estado menor, más simple o peor a uno superior o mejor
Mantener operativo al sistema
Mantener contentos a los usuarios
Maximizar la inversión y reducir costes
Alargar la vida del software
Adaptarlo a nuevos cambios o requisitos
URJC – Master en Sistemas Telemáticos e Informáticos
Tema 1: Evolución y Mantenimiento Software
1.1 Concepto y leyes de la Evolución de Software
Leyes de Lehman
1ª Ley: Un programa grande que es utilizado se somete a un cambio
persistente o se convierte en menos útil progresivamente.
El proceso de cambio continua hasta que se juzga como más
rentable reemplazar el sistema por una nueva versión.
2ª Ley: Como un programa grande cambia de forma continua,
su complejidad la cual refleja una estructura deteriorándose,
se incrementa a menos se realice un trabajo para mantenerla
o reducirla.
URJC – Master en Sistemas Telemáticos e Informáticos
Tema 1: Evolución y Mantenimiento Software
1.1 Concepto y leyes de la Evolución de Software
Leyes de Lehman
3ª Ley: Las medidas de un proyecto global y atributos del sistema
se auto regulan cíclicamente con tendencias e invariantes
estadísticamente determinables.
4ª Ley: El ratio de actividad global en un gran proyecto de programación
es invariante.
5ª Ley: En una evolución fiable y planificada, un gran programa sometido
a un cambio debe estar disponible para una ejecución regular
del usuario en el máximo intervalo determinado por su crecimiento
neto. Es decir, el sistema desarrolla un promedio característico
de crecimiento seguro, que de ser excedido, causa problemas
de calidad y utilización con tiempo y coste que excede del previsto.
URJC – Master en Sistemas Telemáticos e Informáticos
4
5
6
2
Tema 1: Evolución y Mantenimiento Software
1.1 Concepto y leyes de la Evolución de Software
Ley de Pareto
La evolución o mantenimiento del software consume un
80 % del presupuesto, mientras que el desarrollo es el 20%
restante.
El 20 % de el 80 % de
Módulos
Errores
Mejoras
Consumen
Contribuyen
Consumen
Consumen
Consumen
Herramientas
Experiencia
Recursos
Errores
Tiempo de ejecución
Costes de reparación
Costes de mantenimiento
adaptativo
Uso de herramientas
URJC – Master en Sistemas Telemáticos e Informáticos
Tema 1: Evolución y Mantenimiento Software
1.1 Concepto y leyes de la Evolución de Software
Esfuerzo del mantenimiento en el ciclo de vida
Construcción
Mantenimiento
Evolución
URJC – Master en Sistemas Telemáticos e Informáticos
EVOLUCIÓN (resultado de operaciones de mantenimiento)
URJC – Master en Sistemas Telemáticos e Informáticos
7
8
9
3
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Adaptativo
Correctivo
Gestión de
Cambios
Análisis de
Impacto
Plan de versión
del sistema
Perfectivo
Código
Tests
Versión del
Sistema
Preventivo
URJC – Master en Sistemas Telemáticos e Informáticos
10
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Los procesos de gestión y administración de cambios son clave
para la evolución y creación del sistema. De esta manera es posible
controlar las distintas versiones y cambios de un sistema durante su
ciclo de vida.
Las actividades principales en la gestión de cambios son:
Introducir las peticiones de cambios
Registrar dichas peticiones y proporcionar informes sobre el estatus de las
peticiones
Proporcionar un registro de auditorias de los cambios
Proporcionar entrada a la administración del proyecto
URJC – Master en Sistemas Telemáticos e Informáticos
11
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
El análisis de impacto determina el ámbito de los cambios requeridos
como base para su implementación.
Las actividades principales del análisis de impacto son:
Evaluar las peticiones de cambios sobre los sistemas existentes,
otros sistemas, hardware, estructuras de datos, etc.
Desarrollar una estimación preliminar de recursos.
Documentar el ámbito del cambio y actualizar la petición realizada.
URJC – Master en Sistemas Telemáticos e Informáticos
12
4
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Planear la versión del sistema implica determinar el contenido
y tiempo de las versiones del sistema.
Sus actividades incluyen:
Ordenar y seleccionar las peticiones de cambios para la próxima versión
Procesar los cambios y organizar el trabajo
Preparar un documento sobre el plan de la versión del sistema
Actualizar las peticiones de cambios aprobadas
URJC – Master en Sistemas Telemáticos e Informáticos
13
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Los cambios en el diseño consisten en revisar el diseño lógico (nivel de
sistema) y físico (nivel de programa) para los cambios aprobados.
Sus principales actividades son:
Analizar los cambios aprobados y revisar la estructura del programa
Revisar o desarrollar los diseños lógicos y físicos
Diseñar los cambios de hardware si fueran necesarios
Actualizar los documentos del sistema y del programa
Restaurar los documentos bajo control del sistema de gestión de cambios
Actualizar las peticiones de cambios para reflejarlos en los documentos
URJC – Master en Sistemas Telemáticos e Informáticos
14
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
La codificación consiste en cambiar el software con el fin de reflejar
los cambios aprobados y representados en el diseño.
Esta tarea implica:
Implementar y revisar los cambios en el código
Restaurar el código fuente bajo control del sistema de gestión de
la configuración
Actualizar las peticiones de cambios de los módulos modificados
URJC – Master en Sistemas Telemáticos e Informáticos
15
5
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Las pruebas o tests asegurar la conformidad de los cambios aprobados
con los requisitos originales.
Las actividades principales de las pruebas son las siguientes:
Pruebas manuales
Pruebas automatizadas
Pruebas de integración
Pruebas del sistema
Pruebas de aceptación
URJC – Master en Sistemas Telemáticos e Informáticos
16
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
El objetivo de la versión del sistema es entregar el sistema y su
documentación actualizada a los usuarios para su instalación y
configuración
Establecer una planificación de las versiones
Determinar el contenido de cada versión
URJC – Master en Sistemas Telemáticos e Informáticos
17
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Un proceso de mantenimiento comienza cuando existe una petición
de cambio a propuesta de un usuario.
Existen 4 tipos de mantenimiento principales, que son:
URJC – Master en Sistemas Telemáticos e Informáticos
18
6
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
Mantenimiento CORRECTIVO: Se define como aquel proceso orientado
a la reparación de defectos existentes en un sistema software.
Suele ser necesario en alguna de las siguientes ocasiones:
Cuando el programa falla o aborta.
Un programa produce un resultado que no es acorde con los requisitos.
Los diseños y requisitos no están acordes con el software que los soporta.
La documentación de usuario lleva a conclusiones erróneas al propio
usuario hacia actividades que provoquen resultados incorrectos o fallos
en el sistema.
URJC – Master en Sistemas Telemáticos e Informáticos
19
Tema 1: Evolución y Mantenimiento Software
1.2 Tipos de Mantenimiento y Proceso
La reparación de errores en el mantenimiento correctivo tiene dos problemas:
1. Reparar un defecto tiene una probabilidad de introducir otro defecto.
2.
Incrementa las operaciones de testeo.
Existen dos tipos básicos de mantenimiento correctivo:
1. Reparaciones de emergencia: ejecutadas en cortos periodos de tiempo
y generalmente sobre un único programa.
2. Reparaciones planificadas: arreglan defectos que no requieren una
atención inmediata y re-examinan todas las reparaciones de emergencia.
URJC – Master en Sistemas Telemáticos e Infor
Links de descarga
http://lwp-l.com/pdf13923
Comentarios de: TEMA I - Evolución y Mantenimiento Software (0)
Comentarios de: TEMA I - Evolución y Mantenimiento Software (0)
No hay comentarios