Breaking the Barriers to Successful Refactoring: Observations and Tools for Extract Method

被引:0
作者
Murphy-Hill, Emerson [1 ]
Black, Andrew P. [1 ]
机构
[1] Portland State Univ, Portland, OR 97201 USA
来源
ICSE'08 PROCEEDINGS OF THE THIRTIETH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING | 2008年
关键词
Refactoring; tools; usability; environments;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Refactoring is the process of changing the structure of code without changing its behavior. Refactoring can be semi-automated with tools, which should make it easier for programmers to refactor quickly and correctly. However, we have observed that many tools do a poor job of communicating errors triggered by the refactoring process and that programmers using them sometimes refactor slowly, conservatively, and incorrectly. In this paper we characterize problems with current refactoring tools, demonstrate three new tools to assist in refactoring, and report on a user study that compares these new tools against existing tools. The results of the study show that speed, accuracy, and user satisfaction can be significantly increased. From the new tools we induce a set of usability recommendations that we hope will help inspire a new generation of programmer-friendly refactoring tools.
引用
收藏
页码:421 / 430
页数:10
相关论文
共 20 条
[1]  
*AD SYST INC, 2007, AD GOLIVE
[2]  
Andersen T.R., 2005, EXTRACT METHOD ERROR
[3]  
ERNST MD, 1994, MSRTR9414
[4]   DrScheme: a programming environment for Scheme [J].
Findler, RB ;
Clements, J ;
Flanagan, C ;
Flatt, M ;
Krishnamurthi, S ;
Steckler, P ;
Felleisen, M .
JOURNAL OF FUNCTIONAL PROGRAMMING, 2002, 12 :159-182
[5]  
FOWLER M, 2001, CROSSING REFACTORING
[6]  
Fowler M., 2002, Refactoring: Improving the Design of Existing Code
[7]  
Griswold W. G, 1991, THESIS U WASHINGTON
[8]  
Joy W., 1984, INTRO DISPLAY EDITIN
[9]   Improving usability of software refactoring tools [J].
Mealy, Erica ;
Carrington, David ;
Strooper, Paul ;
Wyeth, Peta .
2007 AUSTRALIAN SOFTWARE ENGINEERING CONFERENCE, PROCEEDINGS, 2007, :307-+
[10]  
Murphy-hill E., 2007, P 1 WORKSH REF TOOLS