返回
On tracking Java methods with Git mechanisms
DOI:10.1016/j.jss.2020.110571.png)
摘要
En 中文
Method-level historical information is useful in various research on mining software repositories such as fault-prone module detection or evolutionary coupling identification. An existing technique named Historage converts a Git repository of a Java project to a finer-grained one. In a finer-grained repository, each Java method exists as a single file. Treating Java methods as files has an advantage, which is that Java methods can be tracked with Git mechanisms. The biggest benefit of tracking methods with Git mechanisms is that it can easily connect with any other tools and techniques build on Git infrastructure. However, Historage's tracking has an issue of accuracy, especially on small methods. More concretely, in the case that a small method is renamed or moved to another class, Historage has a limited capability to track the method. In this paper, we propose a new technique, FinerGit, to improve the trackability of Java methods with Git mechanisms. We implement FinerGit as a system and apply it to 182 open source software projects, which include 1,768K methods in total. The experimental results show that our tool has a higher capability of tracking methods in the case that methods are renamed or moved to other classes. (C) 2020 The Author(s). Published by Elsevier Inc.
Keyword:
Mining software repositories
Source code analysis
Tracking Java methods
AI总结
对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。
期刊
IF:
4.1
论文数:
5.5K
被引数:
8.4K
机构
引用论文
CCFinder: A multilinguistic token-based code clone detection system for large scale source codeCCFinder: 用于大规模源代码的基于多语言令牌的代码克隆检测系统
Using origin analysis to detect merging and splitting of source code entities使用origin analysis检测源代码实体的合并和拆分
没有更多内容

