计算机科学 ›› 2015, Vol. 42 ›› Issue (12): 105-107.
刘阳,刘秋荣,刘辉
LIU Yang, LIU Qiu-rong and LIU Hui
摘要: 软件重构历史的自动检测是目前软件重构领域的一个研究热点。其主要目的是方便程序员或软件维护人员理解 软件演化的历史,也便于根据服务代码重构历史对其客户代码进行相应的重构操作。虽然相关研究人员已经提出了多种自动化的重构历史检测方法,但目前未见关于函数提取重构历史检测的方法或工具。为此,提出了一种基于版本比较的函数抽取重构自动检测方法,实现并验证了该方法的有效性。在8个开源项目上进行了实验验证,结果表明其查准率为65%~90%。此外,在一个小型项目上通过监控程序员的重构操作获得了全部的函数提取重构操作,进而计算出检测算法的查全率和查准率均为85%。
[1] Mens T,Tourwe T.A survey of software refactoring [J].IEEE Transactions on Software Engineering,2004,30(2):126-139 [2] Opdyke W F.Refactoring object-oriented frameworks[D].Lllinois:University of Illinois at Urbana-Champaign,1992 [3] Dig D,Comertoglu C,Marinov D,et al.Automatic detection of refactorings in evolving components[C]∥European Conference on Object Oriented Programming.2006:404-428 [4] Xing Z,Stroulia E.UMLDiff:an algorithm for object-oriented design differencing[C]∥Proceedings of the 20th IEEE/ACM International Conference on Automated Software Engineering.2005:54-65 [5] Weissgerber P,Diehl S.Identifying refactorings from source-code changes[C]∥21st IEEE/ACM International Conference on Automated Software Engineering.2006:231-240 [6] Murphy G,Kersten M,Findlater L.How are Java software developers using the eclipse IDE[J].Software IEEE,2006, 23(4):76-83 [7] http://code.google.com/p/java-diff-utils/ |
No related articles found! |
|