MANTENIMIENTO DE SOFTWARE - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

MANTENIMIENTO DE SOFTWARE

Description:

El t rmino 'mantenimiento de software' se usa para describir las actividades de ... Puede volverse experto de ciertos detalles del producto por que dedica su ... – PowerPoint PPT presentation

Number of Views:1309
Avg rating:3.0/5.0
Slides: 29
Provided by: Ama7157
Category:

less

Transcript and Presenter's Notes

Title: MANTENIMIENTO DE SOFTWARE


1
INTEGRANTES GARCIA VAZQUEZ AMALIA ROSALES JUAREZ
HERMINIO ALMANZA TORRES JOSE JUAN CABRERA
HERNANDEZ MARIA DEL CARMEN
2
MANTENIMIENTO DE SOFTWARE
3
I N T R O D U C C I Ó N
El término mantenimiento de software se usa
para describir las actividades de la ingeniería
de software que ocurren después de entregar un
producto al cliente.
  • Las actividades de mantenimiento implican
  • Mejorar los productos de software
  • Adaptarlos a nuevos ambientes
  • Corregir problemas

4
I N T R O D U C C I Ó N
Las actividades del mantenimiento consumen gran
parte del presupuesto total del ciclo de vida. No
es raro que el mantenimiento del software importe
un 70 de los costos totales del ciclo de vida
del software. La distribución del esfuerzo para
el mantenimiento de software se reparte mejoras
60, adaptación 20 y corrección
20.
5
I N T R O D U C C I Ó N
Los atributos primarios del producto que
contribuyen al mantenimiento son la claridad, la
modularidad y la documentación interna del código
fuente.
Todas las tareas realizadas durante el
mantenimiento de software se deben efectuar
mediante un enfoque sistemático ordenado que
analice bien los requisitos de las modificaciones
y con un cuidadoso rediseño, reimplantación,
revalidación y redocumentación de los cambios.
6
  • MEJORAMIENTO DEL MANTENIMIENTO DURANTE EL
    DESARROLLO.
  • ASPECTOS ADMINISTRATIVOS DEL MANTENIMIENTO DE
    SOFTWARE.
  • ADMINISTRACION DE LA CONFIGURACION.
  • METRICAS DEL CODIGO FUENTE.
  • HERRAMIENTAS Y TECNICAS PARA LOGRAR EL
    MANTENIMIENTO.

7
MEJORAMIENTO DEL MANTENIMIENTO DURANTE EL
DESARROLLO
ACTIVIDADES DE DESARROLLO QUE MEJORAN EL
MANTENIMIENTO DEL SOFTWARE
Actividades de análisis Desarrollo de
estándares y guías Fijar logros en los
documentos de apoyo Especificar logros en los
documentos de apoyo Identificar probables
mejoras del producto Determinar recursos
requeridos Estimar costos Actividades de
diseño arquitectónico Claridad y modularidad
Diseñar para facilitar probables mejoras Usar
notaciones estandarizadas Actividades de diseño
detallado
8
MEJORAMIENTO DEL MANTENIMIENTO DURANTE EL
DESARROLLO
ACTIVIDADES DE DESARROLLO QUE MEJORAN EL
MANTENIMIENTO DEL SOFTWARE
Actividades de implementación Usar estructuras
de una sola entrada y una sola salida Usar
sangrado estándar en las estructuras Usar un
estilo de codificación simple y claro Usar
constantes simbólicas Proporcionar prólogos
estándar de documentación Otras actividades
(documentos de apoyo) Guía de mantenimiento
Juego de pruebas Proporcionar la documentación
del juego de pruebas
9
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • Uno de los aspectos mas importantes del
    mantenimiento del software implica rastrear y
    controlar las actividades del mantenimiento, esta
    suele llevarse acabo como respuesta a una
    solicitud de modificación por parte de un
    usuario.

10
Solicitud
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • Una solicitud de cambios puede implicar mejora,
    adaptación corrección de errores.
  • Las mejoras y las adaptaciones mayores pueden
    requerir analisis exaustivo y negociacion con el
    cliente , estos se manejan como nuevos proyectos
    de desarrollo mas que una actividad de
    mantenimiento de rutina

11
Junta de control de cambios
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • La junta de control de cambios revisa y aprueba
    todas las solicitudes de modificación.
  • Puede rechazar una solicitud, recomendar una
    versión modificada del cambio o aprobarlo sin
    alteraciones.
  • La composición de esta junta de control de
    cambios puede estar integrada por varios
    administradores de alto nivel relacionados con
    software y ajenos a este que sean miembros de
    organizaciones de mantenimiento y de los
    usuarios.

12
Resumenes de la solicitud de cambios
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • El estado de las solicitudes de cambios y de las
    actividades de mantenimiento del software se
    deben resumir semanal o mensualmente.
  • El resumen debe de notificar los problemas de
    emergencia y las soluciones temporales en efecto
    desde el ultimo informe.
  • Incluir una sintesis de la tendencias del
    mantenimiento en cada resumen de de solicitudes
    de cambios.
  • Los resumenes de las solicitudes de cambios y de
    las tendencias del manteniento son valiosas
    fuentes de informacion.

13
Actividades de control de calidad
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • La principal funcion del grupo de control de
    calidad durante el mantenimiento del software es
    asegurar que la calidad del software no disminuya
    como resultado de las actividades de
    mantenimiento.
  • Debe de conducir auditorias y reconocimientos
    rapidos sobre el software.

14
Organización de los programadores de
mantenimiento.
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • El mantenimiento del software puede realizarse
    por el grupo de desarrollo o por miembros de un
    grupo separado. Existen ventajas y desventajas en
    ambos enfoques

15
Miembros del grupo de desarrollo
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • Ventajas
  • Estan intimamente familiarizados con el producto.
  • Entienden muy bien la estructura y filosofía del
    diseño del sistema.
  • El porque de su funcionamiento.
  • Cuidadosos al diseñar e implementar el sistema
    para mejorar el mantenimiento
  • Desventajas
  • Es menos minucioso al preparar la documentacion
    de apoyo.
  • Las actividades de mantetimiento pueden
    desviarlos denuevos proyectos.
  • Provoca que sea vulnerable en la rotacion de
    personal.

16
Miembros de un grupo separado
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • Ventajas
  • Estándares y documentación de alta calidad.
  • Puede liberar al grupo de desarrollo para atender
    otras actividades.
  • Puede volverse experto de ciertos detalles del
    producto por que dedica su atención completa al
    producto.
  • Desventajas
  • Se puede caer en el problema del programador de
    mantenimiento.

17
ASPECTOS ADMINISTRATIVOS DE LA INGENIERIA DEL
SOFTWARE
  • Otro método de organizar la programación de
    mantenimiento es rotar con periodicidad a los
    programadores entre el desarrollo y
    mantenimiento.
  • Ventajas
  • Los programadores pueden seguir cursos de carrera
    sin temor a atascarse en una tarea de
    mantenimiento de fin de camino.
  • Los programadores novatos pueden aprender
    habilidades de los expertos.
  • El nivel general del personal se eleva con la
    rotación del personal.
  • Código de alta calidad y documentación adecuada.
  • Desventajas
  • La principal desventaja es el costo burocrático
    incurrido en la rotación de personal en las
    diferentes tareas.

18
Algoritmo para la administración del
mantenimiento del software
  • Solicitud de modificación al software iniciada
  • Solicitud analizada
  • Si (solicitud no valida) entonces
  • - Solicitud cerrada
  • De otro modo
  • - Solicitud y recomendaciones sometidas a
    la junta de control de cambios
  • Si (la junta de control de cambios accede)
    entonces
  • - Modificaciones realizadas con prioridad y
    restricciones establecidas por la junta de
    control de cambios
  • - Pruebas de regresión realizada
  • - Cambios sometidos a la junta de control de
    cambios
  • Si (la junta de control aprueba ) entonces
  • - Sistema actualizado
  • - Documentación externa actualizada
  • - Actualización distribuida como ordene la junta
    de control de cambios
  • De otro modo
  • - Objeciones de la junta de control de cambios
    satisfechas y cambios vueltos a someter a la
    junta de control.
  • De otro modo
  • - Solicitud Cerrada

19
Administración de la configuración
  • Rastreo y control del producto
  • Cambios subsecuentes al producto sólo a través de
    acuerdo formal
  • Estandarización del producto

20
  • Plan y herramientas para la administración de la
    configuración
  • Seguir la pista y controlar a las distintas
    versiones
  • Herramientas software
  • Bases de datos
  • Sistemas de biblioteca para el control de las
    versiones

21
Cinco Leyes de la Evolución del Software
  • Evolución dentro de familias de versiones
  • Desarrollada por Belady y Lehman
  • CAMBIO CONTINUO
  • COMPLEJIDAD CRECIENTE
  • LA LEY FUNDAMENTAL DE LA EVOLUCIÓN DEL PROGRAMA
  • CONSERVACIÓN DE LA ESTABILIDAD DE LA ORGANIZACIÓN
  • CONSERVACIÓN DE LA FAMILIARIDAD

22
Bases de datos para la administración de la
configuración
  • Herramienta software de apoyo que ofrece una
    macrovisión de una familia de productos
  • Proporciona información acerca del producto
  • Estructura
  • Numero de revisión en curso
  • Estado
  • Historia de solicitudes de cambio

23
Cuántas versiones de cada producto
existen? Cómo difieren las versiones? Qué
versiones de cuáles productos están distribuidas
en qué instalaciones ? Qué configuración de
hardware se requiere para operar una versión
específica de cada producto? Cuál es la historia
de revisión de cada componente de cada versión de
cada producto?
24
Bibliotecas para el control de versiones
  • Puede ser parte de una base de datos o puede ser
    independiente
  • Controla los diferentes archivos que constituyen
    las diferentes versiones de un software
  • Entidades que la componen
  • Código fuente
  • Código objeto
  • Comandos para el control de trabajos
  • Archivos de datos
  • Documentos de apoyo

25
Nº de versión Fecha/hora Programador
  • Operaciones
  • Creación de la biblioteca
  • Adición y borrado de componentes
  • Copias de respaldo
  • Edición de archivos
  • Listado de estadísticas
  • Compilación y ensamblado de versiones
  • especificadas

26
RCS (Revision Control System)
  • Sistema de biblioteca para el control de
    revisiones
  • Trata a los archivos como texto.
  • Se pueden crear, guardar y recuperar diferentes
    versiones de archivos de textos
  • Se cargan los cambios y estos archivos se pueden
    fusionar para crear versiones

27
Otras herramientas y técnicasde mantenimiento
  • Herramientas automatizadas
  • Soporte Técnico
  • Soporte Administrativo

28
Soporte Técnico
Herramientas de análisis y diseño, de
implantación, hasta la depuración y pruebas
Editores de texto Ayudas de depuración Generadores
de referencia cruzada Editores de
enlace Comparadores Calculadores métricos de
complejidad Sistemas de control de
versión Configuración de bases de datos
administrativas
La herramienta necesaria en el momento preciso
Write a Comment
User Comments (0)
About PowerShow.com