Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Brinksma, Wouter, Wernsen, William, Verduin, Evert, Hilberink, Herman, de Beer, Patrick, Bijlsma, Lex, Passier, Harrie
Format: Preprint
Veröffentlicht: 2024
Schlagworte:
Online-Zugang:https://arxiv.org/abs/2411.08648
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866909388254478336
author Brinksma, Wouter
Wernsen, William
Verduin, Evert
Hilberink, Herman
de Beer, Patrick
Bijlsma, Lex
Passier, Harrie
author_facet Brinksma, Wouter
Wernsen, William
Verduin, Evert
Hilberink, Herman
de Beer, Patrick
Bijlsma, Lex
Passier, Harrie
contents This report investigates the relationship between software refactoring and behavior preservation. Existing behavior preservation analyses often lack comprehensive insights into refactoring rejections and do not provide actionable solutions. To address these issues, we developed a conceptual model to detect refactoring dangers, and created an Eclipse plugin based upon this model, called ReFD. Every refactoring can be partitioned in microsteps, each of which carries potential risks. ReFD evaluates a given code context to identify if these potential risks are present, making them actual risks, and employs a verdict mechanism to reduce false positives. To facilitate the risk detection, several components called detectors and subdetectors are defined, which can be reused for multiple refactorings. The tool was validated by implementing the detection for multiple refactorings, which produce the expected information about the risks detected. This information leads a developer to actively think about solutions to the problems a refactoring might cause within an actual codebase.
format Preprint
id arxiv_https___arxiv_org_abs_2411_08648
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Diagnosing Refactoring Dangers
Brinksma, Wouter
Wernsen, William
Verduin, Evert
Hilberink, Herman
de Beer, Patrick
Bijlsma, Lex
Passier, Harrie
Software Engineering
D.2.7
This report investigates the relationship between software refactoring and behavior preservation. Existing behavior preservation analyses often lack comprehensive insights into refactoring rejections and do not provide actionable solutions. To address these issues, we developed a conceptual model to detect refactoring dangers, and created an Eclipse plugin based upon this model, called ReFD. Every refactoring can be partitioned in microsteps, each of which carries potential risks. ReFD evaluates a given code context to identify if these potential risks are present, making them actual risks, and employs a verdict mechanism to reduce false positives. To facilitate the risk detection, several components called detectors and subdetectors are defined, which can be reused for multiple refactorings. The tool was validated by implementing the detection for multiple refactorings, which produce the expected information about the risks detected. This information leads a developer to actively think about solutions to the problems a refactoring might cause within an actual codebase.
title Diagnosing Refactoring Dangers
topic Software Engineering
D.2.7
url https://arxiv.org/abs/2411.08648