Refactoring, the process of changing the structure of code without changing its behavior, can be semi-automated with the help of tools. However, many tools do a poor job of communicating errors triggered by the refactoring process. This poor communication causes programmers to refactor slowly, conservatively, and incorrectly. In this paper we demonstrate problems with current refactoring tools, characterize three new tools to assist in refactoring, and describe a user study that compares these new tools against existing tools. The results of the study show that the speed, accuracy, and user satisfaction can be significantly increased The new tools have inspired a set of usability recommendations that we hope will help build a new generation...
Code refactoring, the act of changing the design of code without affecting its functionality, is a r...
Code refactoring, the act of changing the design of code without affecting its functionality, is a r...
During its lifecycle, the internal structure of a software system undergoes continuous modifications...
Though refactoring tools have been available for more than a decade, research has shown that program...
The goal of refactoring tools is to support the user in improving the internal structure of code whi...
Modern Integrated Development Environments (IDEs) sup-port many refactorings. Yet, programmers great...
Refactoring enhances software quality in an evolving system. Developers perform behavior-preserving ...
Few pieces of software are ideal. Requirements may change during design, development or even post de...
This is the dataset that accompanies the study: "How Do I Refactor This? An Empirical Study on Refac...
Post-deployment maintenance and evolution can account for up to 75% of the cost of developing a soft...
Developers frequently undertake software change tasks that could be partially or fully automated by ...
Poorly structured code is hard to maintain and read. Refactoring can improve the code structure and ...
Though refactoring tools have been available for more than a decade, research has shown that program...
Post-deployment maintenance and evolution can ac-count for up to 75 % of the cost of developing a so...
Post-deployment maintenance and evolution can account for up to 75% of the cost of developing a soft...
Code refactoring, the act of changing the design of code without affecting its functionality, is a r...
Code refactoring, the act of changing the design of code without affecting its functionality, is a r...
During its lifecycle, the internal structure of a software system undergoes continuous modifications...
Though refactoring tools have been available for more than a decade, research has shown that program...
The goal of refactoring tools is to support the user in improving the internal structure of code whi...
Modern Integrated Development Environments (IDEs) sup-port many refactorings. Yet, programmers great...
Refactoring enhances software quality in an evolving system. Developers perform behavior-preserving ...
Few pieces of software are ideal. Requirements may change during design, development or even post de...
This is the dataset that accompanies the study: "How Do I Refactor This? An Empirical Study on Refac...
Post-deployment maintenance and evolution can account for up to 75% of the cost of developing a soft...
Developers frequently undertake software change tasks that could be partially or fully automated by ...
Poorly structured code is hard to maintain and read. Refactoring can improve the code structure and ...
Though refactoring tools have been available for more than a decade, research has shown that program...
Post-deployment maintenance and evolution can ac-count for up to 75 % of the cost of developing a so...
Post-deployment maintenance and evolution can account for up to 75% of the cost of developing a soft...
Code refactoring, the act of changing the design of code without affecting its functionality, is a r...
Code refactoring, the act of changing the design of code without affecting its functionality, is a r...
During its lifecycle, the internal structure of a software system undergoes continuous modifications...