Identifying Feature Clones: An Industrial Case Study

2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER)(2019)

引用 2|浏览19
暂无评分
摘要
During its software evolution, the original software system of our industrial partner was split into three variants. These have evolved over time, but retained a lot of common functionality. During strategical planning our industrial partner realized the need for consolidation of common code in a shared code base towards more efficient code maintenance and re-use. To support this agenda, a feature-clone identification approach was proposed, combining elements of feature location (to identify the relevant code in one system) and clone detection (to identify that common feature’s code across systems) techniques. In this work, this approach is used (via our prototype tool CoRA) to locate three features that were identified by the industrial partner for re-factoring, and is evaluated. The methodology, involving a system expert, was designed to evaluate the discrete parts of the approach in isolation: textual and static analyses of feature location, and clone detection. It was found that the approach can effectively identify features and their clones. The hybrid textual/static feature location part is effective even for a relative system novice, showing results comparable to more optimal system expert’s suggestions. Finally, more effective feature location increases the effectiveness of the clone detection part of the approach. 1 1 A preliminary version of this paper, explaining the motivation, approach and resultant tool was published in [1]. This paper extends that work with a discussion of the approach’s in-vivo empirical evaluation.
更多
查看译文
关键词
Cloning,Feature extraction,Tools,Static analysis,Software systems,Business
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要