
Para cada tipo de olor de código, se utiliza un conjunto de métricas para deducir si una sección del código es una instancia de ese tipo de olor de código. La herramienta contiene un conjunto de 12 refactorizaciones que se utilizan para eliminar los olores del código. Se genera un conjunto de condiciones previas y condiciones posteriores para cada olor de código para garantizar que se puedan resolver de antemano. El documento utilizó un programa de ejemplo con olores de código insertados para analizar la efectividad de la herramienta. Se midió el número de olores de código de cada tipo en el conjunto de iteraciones junto con la medida de un conjunto de métricas de calidad. En ambos casos, los valores mejoraron inicialmente antes de permanecer relativamente estables durante todo el proceso. La comparación de los olores de código inicial y final mostró que la herramienta elimina una proporción de ellos y también los valores métricos muestran que se mejoran las métricas sustitutas.
Continuous Flow: Modernizing Core Business Systems for Greater Business Value – CIO
Continuous Flow: Modernizing Core Business Systems for Greater Business Value.
Posted: Mon, 14 Dec 2020 14:32:00 GMT [source]
Los cuatro tipos de mantenimiento de software
De manera similar, la opinión de un programador sobre la calidad puede cambiar de un proyecto a otro o con el tiempo. Sería útil tener algún tipo de orientación explícita sobre cómo elegir métricas para una técnica de optimización basada en búsquedas. La mayor parte de las investigaciones anteriores se han aplicado a programas orientados a objetos y, como tal, la mayoría de las funciones de aptitud tienen como objetivo mejorar los comportamientos orientados a objetos como la cohesión o la flexibilidad. El campo obtendría información valiosa con la investigación de las opiniones de los desarrolladores sobre la calidad del software y sobre cómo se maneja actualmente la deuda técnica en el entorno empresarial.
Los cuatro tipos de mantenimiento de software
- 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.
- 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.
- Utilizando un algoritmo basado en búsquedas, el desarrollador comienza con el programa original como base para mejorar.
Combinaron cuatro medidas de priorización diferentes para crear una función de aptitud que tenía como objetivo reducir siete tipos diferentes de olores de código. A cada uno de los tipos de olor de código se le dio una puntuación de prioridad de 1 a 7 para representar su opinión sobre qué olores son más urgentes a partir de experiencias previas en el campo. La herramienta inFusion se utilizó para deducir puntuaciones de gravedad para representar qué tan crítico es un olor de código en comparación con otros del mismo tipo. La puntuación de riesgo se calculó para representar el código más riesgoso como código que se desvió del código bien diseñado. Los olores de código relacionados con las clases que se cambian con mayor frecuencia se consideraron más importantes, ya que se consideró que los olores de código que no habían sufrido cambios se habían creado intencionalmente.
Cada pregunta de investigación se explora individualmente dentro del análisis y se responde por separado en la sección de discusión. Los artículos capturados en la búsqueda también pueden verse afectados por una serie de atributos relacionados con la forma en que se ha realizado la búsqueda. En primer lugar, el repositorio de búsqueda o los repositorios utilizados para encontrar los artículos pueden proporcionar resultados diferentes y podrían impedir la identificación de determinados artículos. Para minimizar este problema, hemos utilizado cinco repositorios de búsqueda populares para buscar artículos relacionados con las áreas de interés. También utilizamos un enfoque de bola de nieve para encontrar más artículos relacionados mediante la investigación de referencias en los artículos y la realización de búsquedas similares. RQ8 preguntó «¿Qué herramientas se utilizaron para la refactorización?» Se propusieron y utilizaron siete herramientas de refactorización diferentes entre los estudios.
Beyond Agile: 4 Lessons to Better Software Development – Gigaom
Beyond Agile: 4 Lessons to Better Software Development.
Posted: Thu, 17 Dec 2020 23:37:00 GMT [source]
Aunque se ha realizado un trabajo significativo para probar varios aspectos del mantenimiento basado en búsquedas, existen numerosas áreas en las que la investigación en curso es importante para descubrir nuevas innovaciones en el campo. Un componente importante del mantenimiento basado en búsquedas y SBSE en su conjunto son las métricas que se utilizan para medir la calidad de un programa. Necesitamos métricas explícitas para guiar la optimización de una solución, pero la visión de la calidad de un desarrollador puede ser diferente a la de otro.
Los métodos utilizados para abordar el objetivo de la encuesta «¿En qué medida se ha estudiado la refactorización basada en búsquedas en el mantenimiento de software?» puede proporcionar una amenaza de validez a las conclusiones realizadas. En esta encuesta, dividimos el objetivo en un conjunto de 10 preguntas de investigación, cada una de las cuales investiga algún elemento de los artículos analizados.
¿Qué es ppm en mantenimiento?
El mantenimiento preventivo planificado (PPM) le permite reducir sustancialmente el mantenimiento reactivo y mantener sus edificios y activos en el nivel de calidad deseado. El mantenimiento preventivo planificado se basa en el tiempo o se controla la condición.
La herramienta solo es capaz de generar representaciones UML mejoradas del código y no refactorizar el código fuente en sí, y esta restricción se identificó como un objetivo para el trabajo futuro. Más recientemente, Ouni et al. adaptó el algoritmo de optimización descargarpseint.online de reacción química para la refactorización basada en búsquedas y exploró los beneficios de este enfoque. Compararon esta técnica de búsqueda con técnicas de optimización más estándar utilizadas en SBSE; a GA, SA y optimización del enjambre de partículas.
Los cuatro tipos de mantenimiento de software
Griffith, Wahl e Izurieta introdujeron la herramienta TrueRefactor para encontrar y eliminar un conjunto de olores de código de un programa con el fin de aumentar la comprensión. TrueRefactor puede detectar clases perezosas, clases grandes, métodos largos, campos temporales o instancias de cirugía de escopeta en programas Java y usa un GA para ayudar a eliminarlos. La GA se utiliza para buscar la mejor secuencia de refactorizaciones que elimine el mayor número de olores de código del código fuente original. Para detectar olores de código en un programa, cada archivo de origen se analiza y luego se utiliza para crear un gráfico de flujo de control para representar la estructura del software.