Saltar al contenido

Mantenimiento del software

06/01/2020

No es suficiente simplemente esperar que el mantenimiento del software produzca una mayor calidad. Debe planificarse e implementarse procesos para respaldar el proceso de mantenimiento. El nivel de comprensión del desarrollador sobre el propósito del software también tiene un efecto profundo en su plan de mantenimiento.

maintenance in software engineering

Si los desarrolladores aún están recopilando comentarios de los usuarios para determinar qué debe hacer el software, el mantenimiento perfecto debe tener una mayor prioridad. Considere el ejemplo de una empresa de nueva creación que ha desarrollado una aplicación para registrar clientes potenciales. Lo más probable es que perfeccionar ese proceso sea la máxima prioridad para el desarrollador.

maintenance in software engineering

Deuda de mantenimiento

Esta transición ocurre con frecuencia cuando las presiones del horario fuerzan la entrega de productos que no están listos para el horario de máxima audiencia. Peor aún, el código que se entrega se proporciona sin una lista de elementos abiertos y problemas que deben resolverse. Sin embargo, si espera una versión estable de la nueva versión del navegador Edge con tecnología de Microsoft Chromium, sus clientes tendrán problemas. Luego, los cambios que realiza después de eso para solucionar esos problemas es una tarea de mantenimiento correctivo. Es mejor realizar una acción de mantenimiento adaptativo rápidamente porque retrasarla lo llevará a realizar un mantenimiento correctivo más tarde, lo cual es un enfoque costoso.

GrammaTech Awarded DARPA Research Contract for AI-Augmented Software Development – Business Wire

GrammaTech Awarded DARPA Research Contract for AI-Augmented Software Development.

Posted: Mon, 14 Dec 2020 14:01:00 GMT [source]

Los cuatro tipos de mantenimiento de software

La infraestructura inicial de la aplicación también es un factor para determinar su idoneidad para el desarrollo con estos servicios. No existe un proceso estándar en la industria para calcular un presupuesto de mantenimiento o establecer una línea de base para este proceso. Los expertos han intentado predecir estos costos basándose en un muestreo representativo de proyectos con complejidad y alcance similares. Sin embargo, generalmente no están de acuerdo sobre cómo debería ser un presupuesto de mantenimiento, incluso a un nivel alto.

Mejora del rendimiento Para mejorar el rendimiento del sistema, los desarrolladores detectan problemas mediante pruebas y los horoscoposdiarios.club resuelven. La restricción de datos y codificación, así como la reingeniería, son parte del mantenimiento del software.

Procesos de mantenimiento de software

Por ejemplo, Jussi Koskinen estima que los costos de mantenimiento representan más del 90 por ciento del costo total de desarrollo del software, mientras que Stephen R. Schach cita una cifra del 67 por ciento. En este ejemplo de mantenimiento perfecto, suponga que los usuarios pueden iniciar sesión constantemente en la aplicación desde los sitios de redes sociales. Sin embargo, los comentarios de los usuarios indican que lo primero que quieren ver cuando inician sesión es su actividad más reciente, en lugar de su perfil. Los cambios adaptativos afectan principalmente la capacidad del software para ejecutarse en una plataforma en particular, que incluye el sistema operativo, el hardware y la red. Estos cambios tienden a tener un bajo impacto en los usuarios, ya que se centran en el funcionamiento interno del software. La integración de una aplicación existente con nueva tecnología puede resultar en una leve mejora en áreas de rendimiento como escalabilidad y velocidad, pero su funcionamiento general generalmente no se ve afectado. Es mucho más probable que los usuarios se den cuenta cuando se completa la adaptación, ya que esto podría evitar que el software funcione con los dispositivos más recientes.

Los encargados del mantenimiento también utilizan pruebas de software, gestión de configuración de software, documentación de software y herramientas de medición de software. La ingeniería inversa es el proceso de analizar software para identificar los componentes del software y sus interrelaciones y crear representaciones del software en otra forma o en niveles más altos de abstracción. La ingeniería inversa es pasiva; no cambia el software ni da como resultado un nuevo software. Los esfuerzos de ingeniería inversa producen gráficos de llamadas y gráficos de flujo de control a partir del código fuente. Por último, la ingeniería inversa de datos, en la que los esquemas lógicos se recuperan de bases de datos físicas, ha ganado importancia en los últimos años. Las herramientas son clave para la ingeniería inversa y tareas relacionadas como la redocumentación y la recuperación del diseño.

  • El mantenimiento del software se diferencia en que las pruebas son la fuerza impulsora detrás de la mayoría del trabajo realizado durante esta fase del ciclo de vida.
  • Por ejemplo, es posible que la versión tenga que distribuirse a varios sitios separados geográficamente, cada uno configurado de manera ligeramente diferente para tener en cuenta las variaciones en los equipos, el software y los entornos operativos.
  • También permite a la organización adaptar su infraestructura de procesos existente para abordar los requisitos de la versión.
  • Es interesante notar que los requisitos y las preocupaciones de diseño parecen impulsar gran parte del trabajo realizado durante el desarrollo de software.
  • Además, los desarrolladores pueden simular / emular nuevos equipos a medida que se desarrollan o adquieren en paralelo hasta que estén disponibles para su uso en el campo.

Uno de los costos más significativos del Producto A es que la funcionalidad aparentemente simple a menudo se rompe debido a las actualizaciones de los servicios de terceros que utiliza. Este problema significa que los desarrolladores deben integrar constantemente actualizaciones de estos servicios en su propia aplicación. En un caso particular, una actualización de un servicio utilizado para notificar a los usuarios les impidió saber sobre una competencia de barbacoa importante en su área. Los desarrolladores deben corregir esta funcionalidad rota antes de poder aplicar la próxima actualización al sistema operativo. Los servicios de terceros permiten a los desarrolladores completar un proyecto más rápidamente, pero esta dependencia también aumenta los costos de mantenimiento. Este costo aumenta con la complejidad del software, que los desarrolladores deben considerar al crear código con servicios de terceros.

Analysis: The hurdles ahead for the UK aftermarket – Autocar

Analysis: The hurdles ahead for the UK aftermarket.

Posted: Mon, 04 Jan 2021 16:18:45 GMT [source]

Este artículo presenta una descripción general del modelo de madurez del mantenimiento correctivo. A diferencia de otros modelos de procesos, CM3 es un modelo especializado, totalmente dedicado al mantenimiento correctivo de software.

¿Qué es el mantenimiento de riesgos?

El mantenimiento basado en riesgos (RBM) prioriza los recursos de mantenimiento hacia los activos que conllevan el mayor riesgo si fallaran. Es una metodología para determinar el uso más económico de los recursos de mantenimiento. Evaluación de riesgos. Planificación del mantenimiento en función del riesgo.

Esta no es una funcionalidad que se realiza en operaciones, pero se desarrolla para detener actividades dañinas como la piratería. Mantenimiento adaptativo: modificaciones en el sistema para mantenerlo compatible con el entorno comercial y técnico cambiante. Este tipo de mantenimiento de software se concentra en la infraestructura de software.