TL;DR
This paper introduces XTREE, a tool that analyzes historical defect data to recommend minimal, effective code changes, reducing unnecessary reorganization and focusing on impactful bad smells to improve software quality.
Contribution
XTREE provides a data-driven approach to identify which bad code smells are truly linked to defects, enabling targeted and minimal code reorganization based on historical defect records.
Findings
Modules changed per XTREE have fewer defects.
XTREE recommends changes to fewer code metrics.
Not all traditional bad smells are relevant across projects.
Abstract
Context: Developers use bad code smells to guide code reorganization. Yet developers, text books, tools, and researchers disagree on which bad smells are important. Objective: To evaluate the likelihood that a code reorganization to address bad code smells will yield improvement in the defect-proneness of the code. Method: We introduce XTREE, a tool that analyzes a historical log of defects seen previously in the code and generates a set of useful code changes. Any bad smell that requires changes outside of that set can be deprioritized (since there is no historical evidence that the bad smell causes any problems). Evaluation: We evaluate XTREE's recommendations for bad smell improvement against recommendations from previous work (Shatnawi, Alves, and Borges) using multiple data sets of code metrics and defect counts. Results: Code modules that are changed in response to XTREE's…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
