Hyperparameter optimization for AST differencing

Computing the differences between two versions of the same program is an essential task for software development and software evolution research. AST differencing is the most advanced way of doing so, and an active research area. Yet, AST differencing algorithms rely on configuration parameters that...

Descripción completa

Detalles Bibliográficos
Autores: Martínez Martínez, Matías-Sebastián|||0000-0002-2945-866X, Falleri, Jean Rémy, Monperrus, Martin
Tipo de recurso: artículo
Fecha de publicación:2023
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/397367
Acceso en línea:https://hdl.handle.net/2117/397367
https://dx.doi.org/10.1109/TSE.2023.3315935
Access Level:acceso abierto
Palabra clave:Computer software -- Development
Software evolution
Tree differencing
Abstract Syntax Trees (AST)
Hyperparameter optimization
Edit-script
Programari -- Desenvolupament
Àrees temàtiques de la UPC::Informàtica::Enginyeria del software
Descripción
Sumario:Computing the differences between two versions of the same program is an essential task for software development and software evolution research. AST differencing is the most advanced way of doing so, and an active research area. Yet, AST differencing algorithms rely on configuration parameters that may have a strong impact on their effectiveness. In this paper, we present a novel approach named DAT (D iff Auto Tuning ) for hyperparameter optimization of AST differencing. We thoroughly state the problem of hyper-configuration for AST differencing. We evaluate our data-driven approach DAT to optimize the edit-scripts generated by the state-of-the-art AST differencing algorithm named GumTree in different scenarios. DAT is able to find a new configuration for GumTree that improves the edit-scripts in 21.8% of the evaluated cases.