Un método para identificar toggle debt en un proyecto a partir de su código fuente

Autor: Hoyos Rentería, Juan David
Přispěvatelé: Espinosa Bedoya, Albeiro, Calidad de Software
Jazyk: angličtina
Rok vydání: 2021
Předmět:
Zdroj: Repositorio UN
Universidad Nacional de Colombia
instacron:Universidad Nacional de Colombia
Popis: ilustraciones, diagramas, tablas Continuous Delivery has benefited companies such as IBM, Google and Microsoft after the adoption of practices to deliver friction-less value. These lean and agile practices help teams to adjust to implicit variability when developing software and to provide non-stop features and enhancements. Practitioners that use feature toggles in their source code can control the execution of features with a high degree of precision. As this execution control effectively decouples the feature implementation from its release, feature toggles help practitioners move valuable software artifacts closer to the user. However, there is evidence of unwanted risks and negative consequences that impact the quality of a software project when, for example, a feature hidden under a toggle remains in the source code longer than expected. Although practitioners of feature toggles have crafted mechanisms to keep their feature toggles inventory in check, little is known about the automated identification of feature toggles and their associated technical debt. This thesis focuses on the proposal of a method to identify source code where both feature toggles and technical debt coincide in the repository of a project. This method is based on two complementary empirical explorations. First, we identified areas of code containing feature toggles in 72 open source projects that use toggling libraries. And second, we selected one of the toggled projects and identified technical debt that intersects with the previously identified feature toggles. The proposed method uncovers the presence of toggle debt in the early stages of the development process. These results demonstrate the feasibility of a systematic approach to find toggle debt from a software repository, and advise practitioners on the importance for automated, reliable and up-to-date quality measurement tools. La Entrega Continua de software ha beneficiado a compañías como IBM, Google y Microsoft luego de haber adoptado prácticas para generar valor sin fricción. Estas prácticas limpias y ágiles ayudan a los equipos de desarrollo a ajustarse a la variabilidad implícita, y a proveer funcionalidades y mejoras sin parar. Quienes usan feature toggles en su código fuente pueden controlar la ejecución de funcionalidades con un alto grado de precisión. A la vez que este control efectivamente desacopla la etapa de implementación de la del lanzamiento de una funcionalidad, los feature toggles ayudan a los equipos de desarrollo a enfocarse en el valor de uso de sus implementaciones. Sin embargo, existe evidencia de riesgos no esperados y de consecuencias negativas que impactan la calidad del proyecto de software cuando, por ejemplo, una funcionalidad bajo la guarda de un toggle permanece escondida en el código fuente por más tiempo de lo esperado. A pesar que las personas que usan feature toggles han creado mecanismos para mantener controlado el inventario de feature toggles, poco se conoce sobre la identificación automatizada de feature toggles y su technical debt asociado. Esta tesis se enfoca en proponer un método para identificar código fuente donde los feature toggles y el technical debt coinciden en el repositorio de un proyecto. Este método se basa en dos exploraciones empíricas complementarias. Primero, identificamos áreas de código que contienen feature toggles en 72 proyectos de código abierto que usan librerías de toggling. Y segundo, seleccionamos uno de los proyectos que usa toggles e identificamos la deuda técnica que se cruza con los feature toggles previamente identificados. El método propuesto descubre la presencia de toggle debt en las primeras etapas del proceso de desarrollo. Estos resultados demuestran la viabilidad de un acercamiento sistemático para encontrar toggle debt en un repositorio de software y advierte a los practicantes sobre la importancia de usar herramientas automatizadas, confiables y actualizadas para medir la calidad. (Texto tomado de la fuente) Maestría Magíster en Ingeniería - Ingeniería de Sistemas Inteligencia de software
Databáze: OpenAIRE