Refactoring is one of the promising techniques for improving program design by means of program transformation with preserving behavior, and is widely applied in practice. However, it is difficult for engineers to identify how and where to refactor programs, because proper knowledge and skills of a high order are required of them. In this paper, we propose the technique to instruct how and where to refactor a program by using a sequence of its modifications. We consider that the histories of program modifications reflect developers' intentions, and focusing on them allows us to provide suitable refactoring guides. Our technique can be automated by storing the correspondence of modification patterns to suitable refactoring operations. By implementing an automated supporting tool, we show its feasibility. The tool is implemented as a plug-in for Eclipse IDE. It selects refactoring operations by matching between a sequence of program modifications and modification patterns.
The copyright of the original papers published on this site belongs to IEICE. Unauthorized use of the original or translated papers is prohibited. See IEICE Provisions on Copyright for details.
Copy
Shinpei HAYASHI, Motoshi SAEKI, Masahito KURIHARA, "Supporting Refactoring Activities Using Histories of Program Modification" in IEICE TRANSACTIONS on Information,
vol. E89-D, no. 4, pp. 1403-1412, April 2006, doi: 10.1093/ietisy/e89-d.4.1403.
Abstract: Refactoring is one of the promising techniques for improving program design by means of program transformation with preserving behavior, and is widely applied in practice. However, it is difficult for engineers to identify how and where to refactor programs, because proper knowledge and skills of a high order are required of them. In this paper, we propose the technique to instruct how and where to refactor a program by using a sequence of its modifications. We consider that the histories of program modifications reflect developers' intentions, and focusing on them allows us to provide suitable refactoring guides. Our technique can be automated by storing the correspondence of modification patterns to suitable refactoring operations. By implementing an automated supporting tool, we show its feasibility. The tool is implemented as a plug-in for Eclipse IDE. It selects refactoring operations by matching between a sequence of program modifications and modification patterns.
URL: https://global.ieice.org/en_transactions/information/10.1093/ietisy/e89-d.4.1403/_p
Copy
@ARTICLE{e89-d_4_1403,
author={Shinpei HAYASHI, Motoshi SAEKI, Masahito KURIHARA, },
journal={IEICE TRANSACTIONS on Information},
title={Supporting Refactoring Activities Using Histories of Program Modification},
year={2006},
volume={E89-D},
number={4},
pages={1403-1412},
abstract={Refactoring is one of the promising techniques for improving program design by means of program transformation with preserving behavior, and is widely applied in practice. However, it is difficult for engineers to identify how and where to refactor programs, because proper knowledge and skills of a high order are required of them. In this paper, we propose the technique to instruct how and where to refactor a program by using a sequence of its modifications. We consider that the histories of program modifications reflect developers' intentions, and focusing on them allows us to provide suitable refactoring guides. Our technique can be automated by storing the correspondence of modification patterns to suitable refactoring operations. By implementing an automated supporting tool, we show its feasibility. The tool is implemented as a plug-in for Eclipse IDE. It selects refactoring operations by matching between a sequence of program modifications and modification patterns.},
keywords={},
doi={10.1093/ietisy/e89-d.4.1403},
ISSN={1745-1361},
month={April},}
Copy
TY - JOUR
TI - Supporting Refactoring Activities Using Histories of Program Modification
T2 - IEICE TRANSACTIONS on Information
SP - 1403
EP - 1412
AU - Shinpei HAYASHI
AU - Motoshi SAEKI
AU - Masahito KURIHARA
PY - 2006
DO - 10.1093/ietisy/e89-d.4.1403
JO - IEICE TRANSACTIONS on Information
SN - 1745-1361
VL - E89-D
IS - 4
JA - IEICE TRANSACTIONS on Information
Y1 - April 2006
AB - Refactoring is one of the promising techniques for improving program design by means of program transformation with preserving behavior, and is widely applied in practice. However, it is difficult for engineers to identify how and where to refactor programs, because proper knowledge and skills of a high order are required of them. In this paper, we propose the technique to instruct how and where to refactor a program by using a sequence of its modifications. We consider that the histories of program modifications reflect developers' intentions, and focusing on them allows us to provide suitable refactoring guides. Our technique can be automated by storing the correspondence of modification patterns to suitable refactoring operations. By implementing an automated supporting tool, we show its feasibility. The tool is implemented as a plug-in for Eclipse IDE. It selects refactoring operations by matching between a sequence of program modifications and modification patterns.
ER -