arrow
返回

Less is more: Minimizing code reorganization using XTREE

delete2017-08-01
delete12
delete
OA
AI
R
Rahul Krishna *
T
Tim Menzies
L
Lucas Layman
DOI:10.1016/j.infsof.2017.03.012delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
Context: Developers use bad code smells to guide code reorganization. Yet developers, textbooks, tools, and researchers disagree on which bad smells are important. How can we offer reliable advice to developers about which bad smells to fix? 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 framework 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 recommendations contain significantly fewer defects than recommendations from previous studies. Further, XTREE endorses changes to very few code metrics, so XTREE requires programmers to do less work. Further, XTREE's recommendations are more responsive to the particulars of different data sets. Finally XTREE's recommendations may be generalized to identify the most crucial factors affecting multiple datasets (see the last figure in paper). Conclusion: Before undertaking a code reorganization based on a bad smell report, use a framework like XTREE to check and ignore any such operations that are useless; i.e. ones which lack evidence in the historical record that it is useful to make that change. Note that this use case applies to both manual code reorganizations proposed by developers as well as those conducted by automatic methods. (C) 2017 Elsevier B.V. All rights reserved.
Keyword:
Bad smells
Performance prediction
Decision trees
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Information and Software Technology 封面图
Information and Software Technology
IF:
4.3
论文数:
3.8K
被引数:
7.7K

机构

N
North Carolina State University
学者数:
2.6W
论文数: 2.3W
被引数: 3.7W
引用论文

引用论文

Arsenic removal from aqueous solutions by adsorption using novel MIL-53(Fe) as a highly efficient adsorbent使用新型MIL-53(Fe) 作为高效吸附剂通过吸附从水溶液中去除砷
err2015-01-01
err0
PREAI
errTuan. A. Vu; Giang. H. Le; Canh. D. Dao; Lan. Q. Dang; Kien. T. Nguyen; Quang. K. Nguyen; Phuong. T. Dang; Hoa. T. K. Tran; Quang. T. Duong; Tuyen. V. Nguyen; Gun. D. Lee
err分享
err收藏
Many-Objective Software Remodularization Using NSGA-III
err2015-05-13
err206
errOAAI
errMkaouer, Wiem; Kessentini, Marouane; Shaout, Adnan; Koligheu, Patrice; Bechikh, Slim; Deb, Kalyanmoy; Ouni, Ali
err分享
err收藏
Fine-scale movement and habitat use of a prairie stream fish assemblage
err2018-01-22
err0
PREAI
errCasey A. Pennock; C. Nathan Cathcart; Skyler C. Hedden; Robert E. Weber; Keith B. Gido
err分享
err收藏
err1997-01-01
err0
PREAI
errRainer Storn; Kenneth Price
err分享
err收藏
Numerical Flow Simulation of Heat Recuperation in the Exhaust Section of a Turbofan Engine
err2017-07-07
err0
PREAI
errChristoph Bode; Jens Friedrichs; Fabian Ahrendts; Nicholas Lemke; Jürgen Köhler; Dragan Kozulovic
err分享
err收藏
学者 查看更多内容