Saltar al contenido

Los 4 tipos de mantenimiento de software

13/12/2020

El mantenimiento del software representa hasta el 90% del esfuerzo del ciclo de vida del software. Las razones de los altos costos de mantenimiento se describen para cada tipo de mantenimiento. Se describen y comparan varias técnicas para reducir el mantenimiento actual y futuro. Se describen las técnicas de mantenimiento actuales para la exploración de programas, la documentación de software y el análisis de programas, así como las herramientas de mantenimiento de software asistidas por ordenador disponibles comercialmente. Se describen técnicas para mejorar la capacidad de mantenimiento del software, como reestructuración, reingeniería, ingeniería inversa y enfoque de programación defensiva, y técnicas para aumentar la productividad de mantenimiento de programas futuros.

Los cuatro tipos de mantenimiento de software

  • Se analiza el estado actual de la investigación y se investigan los patrones en los estudios con el fin de evaluar las brechas en el área y sugerir oportunidades para futuras investigaciones.
  • La encuesta tiene como objetivo brindar una revisión completa del uso de la refactorización basada en búsquedas para mantener el software.
  • Se seleccionaron cincuenta artículos diferentes de bases de datos en línea para analizar y revisar el uso de la refactorización basada en búsquedas en la ingeniería de software.
  • La literatura aborda diferentes métodos que utilizan la refactorización basada en búsquedas para el mantenimiento de software, así como estudios que investigan el proceso de optimización y discuten los componentes de la búsqueda.
  • Esta encuesta revisa los materiales publicados relacionados con el área específica de la ingeniería de software basada en búsquedas que se refiere al mantenimiento del software y, en particular, a la refactorización.

A menudo, estas mejoras se basan en los principios básicos del diseño orientado a objetos, donde el software se ha escrito en un lenguaje orientado a objetos. Además, existen otras fuentes de heurística como los principios SOLID introducidos por. Luego, el desarrollador debe idear una serie de cambios que se pueden realizar en el software para refactorizarlo a fin de aplicar la heurística. Una acción de refactorización modifica la estructura del código sin cambiar la funcionalidad externa del programa. Cuando las refactorizaciones se aplican descargarplusdede.com al software, pueden mejorar o deteriorar la calidad, pero independientemente, actúan como herramientas utilizadas para modificar la solución. El análisis realizado en el documento permite a los lectores conocer cómo ha progresado la investigación y aborda el objetivo de averiguar en qué medida se ha estudiado la refactorización basada en búsquedas en el mantenimiento de software. Las brechas identificadas y las áreas recomendadas para el trabajo futuro permiten a los investigadores investigar otros aspectos del área de investigación.

Predictive Maintenance Market Significant Demand Foreseen by 2026 – Farming Sector

Predictive Maintenance Market Significant Demand Foreseen by 2026.

Posted: Tue, 05 Jan 2021 18:07:34 GMT [source]

La literatura aborda diferentes métodos que utilizan la refactorización basada en búsquedas para el mantenimiento de software, así como estudios que investigan el proceso de optimización y discuten los componentes de la búsqueda. Existen estudios que analizan diferentes métricas de software, experimentan con técnicas multiobjetivo y proponen herramientas de refactorización para su uso. El análisis de la literatura ha indicado algunas oportunidades para futuras investigaciones en el área. Se necesita más experimentación de las técnicas en un entorno industrial y comentarios de los desarrolladores de software para respaldar los enfoques. Además, el trabajo reciente con técnicas multiobjetivo ha demostrado que existen interesantes posibilidades para futuras investigaciones utilizando estas técnicas con refactorización. SBSE se ha utilizado para automatizar este proceso, lo que reduce el tiempo necesario para reestructurar un programa.

La Ingeniería de Software basada en BÚSQUEDAS se ocupa de la resolución de problemas de optimización de la ingeniería de software reestructurando como problemas de optimización combinatoria. Si bien el área existe desde principios de la década de 1990 y el término «ingeniería de software basada en búsquedas» fue acuñado originalmente por (Harman RQ5 preguntó «¿Qué enfoques de refactorización se utilizaron en la literatura?» Aislamos tres métodos principales para utilizar la refactorización basada en búsquedas para mejorar el mantenimiento del software. Los defectos de diseño se pueden encontrar en el código primero y luego eliminarse, o el software se puede refactorizar desde el principio para mejorar ciertas métricas de software o conjuntos de métricas. Utilizaron NSGA-II en seis programas Java de código abierto diferentes de diferentes tamaños y dominios para crear una población de soluciones que utilizaban la robustez y la calidad del software en la medición de la aptitud.

software maintenance techniques

Los cuatro tipos de mantenimiento de software

Se discuten los criterios de selección para elegir estas técnicas de mantenimiento y algunas recomendaciones para la organización del mantenimiento. Esta encuesta investiga la pregunta «¿Hasta qué punto se ha estudiado la refactorización basada en búsquedas en el mantenimiento de software?» e introduce un conjunto de preguntas de investigación para ayudar a abordarlo. Se utilizan cinco repositorios de búsqueda diferentes con la ayuda de un conjunto de criterios de inclusión y exclusión para encontrar 50 artículos diferentes que utilizan la refactorización basada en búsquedas para fines de mantenimiento de software. Antes de examinar los artículos, se discuten y describen rápidamente las técnicas de búsqueda más comunes utilizadas en los estudios. Luego, se analizan diferentes aspectos del conjunto de artículos de acuerdo con el conjunto de preguntas de investigación planteadas. Las preguntas de investigación se abordan utilizando cada aspecto relevante del análisis.

software maintenance techniques

Esta encuesta revisa los materiales publicados relacionados con el área específica de la ingeniería de software basada en búsquedas que se refiere al mantenimiento del software y, en particular, a la refactorización. La encuesta tiene como objetivo brindar una revisión completa del uso de la refactorización basada en búsquedas para mantener el software. Se seleccionaron cincuenta artículos diferentes de bases de datos en línea para analizar y revisar el uso de la refactorización basada en búsquedas en la ingeniería de software. Se analiza el estado actual de la investigación y se investigan los patrones en los estudios con el fin de evaluar las brechas en el área y sugerir oportunidades para futuras investigaciones. Los artículos revisados ​​están tabulados para ayudar a los investigadores a hacer referencia rápidamente a los estudios.

software maintenance techniques

Para medir la robustez, utilizaron fórmulas para aproximar la gravedad del olor y la importancia de los olores del código fijo, así como para medir la cantidad de olores del código fijo. También utilizaron una serie de medidas de rendimiento multiobjetivo para compararlas con otros algoritmos multiobjetivo. Para analizar la efectividad del enfoque y las compensaciones involucradas en asegurar la solidez, el enfoque NSGA-II se comparó con un conjunto de otras técnicas.

¿Por qué se requiere el mantenimiento del sistema?

El mantenimiento regular de sus sistemas de TI ayuda a que sus sistemas funcionen con mayor fluidez, así como a reducir el riesgo de averías. Un entorno de TI bien mantenido debe garantizar que su personal y su empresa no tengan obstáculos tecnológicos que obstaculicen la productividad y también conducirán a una reducción de los costos de soporte.

La medida de mejora del programa es un aspecto incierto y puede ser subjetivo, por lo que se puede realizar de diversas formas. El desarrollador necesita idear una heurística, o probablemente un conjunto de heurísticas para informar cómo se debe mejorar la estructura del programa.

SBSE se puede aplicar al mantenimiento de software aplicando refactorizaciones al código para reducir la deuda técnica. Utilizando un algoritmo basado en búsquedas, el desarrollador comienza con el programa original como base para mejorar.

Los cuatro tipos de mantenimiento de software

En cuanto al rendimiento, se comparó con un algoritmo de enjambre de partículas multiobjetivo y se descubrió que supera o no tiene una diferencia significativa en el rendimiento en todos los proyectos excepto en uno. Se sugiere que, dado que este era el proyecto más pequeño, el algoritmo de enjambre de partículas puede ser más adecuado para proyectos más pequeños y restrictivos. También se comparó con una GA monoobjetivo y dos enfoques monoobjetivo que utilizan una combinación ponderada de métricas.