| Tweet | |
| 藤本, 肥後, 松本, 楠本, "プロジェクト全体の抽象構文木構築によるファイル間の移動コード検出," 電子情報通信学会論文誌 D, J104-D(No.4), pp. 242-254, 2021年4月. | |
| ID | 702 |
| 分類 | 論文誌 |
| タグ | abstract across code detecting files moves project-level source syntax tree |
| 表題 (title) |
プロジェクト全体の抽象構文木構築によるファイル間の移動コード検出 |
| 表題 (英文) |
Detecting Source Code Moves Across Files by Using a Project-Level Abstract Syntax Tree |
| 著者名 (author) |
藤本 章良,肥後 芳樹,松本 淳之介,楠本 真二 |
| 英文著者名 (author) |
Akira Fujimoto,Yoshiki Higo,Junnosuke Matsumoto,Shinji Kusumoto |
| キー (key) |
Akira Fujimoto,Yoshiki Higo,Junnosuke Matsumoto,Shinji Kusumoto |
| 定期刊行物名 (journal) |
電子情報通信学会論文誌 D |
| 定期刊行物名 (英文) |
|
| 巻数 (volume) |
J104-D |
| 号数 (number) |
No.4 |
| ページ範囲 (pages) |
242-254 |
| 刊行月 (month) |
4 |
| 出版年 (year) |
2021 |
| Impact Factor (JCR) |
|
| URL |
https://doi.org/10.14923/transinfj.2020PDP0027 |
| 付加情報 (note) |
|
| 注釈 (annote) |
|
| 内容梗概 (abstract) |
ソフトウェア開発において,開発者がソースコードの差分を理解することは重要である.差分を検出するツールとしてGumTree がある.GumTree は変更前後のソースファイルを入力として受け取ると抽象構文木を生成し,削除・挿入・移動・更新といった操作を抽象構文木のノード単位で検出する.しかし,GumTree は単一ファイルの差分しか検出できないため,ファイルを横断するソースコードの移動を検出できない.本研究では,GumTree を拡張しファイルを横断するソースコードの移動を検出する手法を提案する.提案手法では,プロジェクトに含まれる全てのソースファイルから一つの大きな抽象構文木を構築し,検出精度向上のために抽象構文木に対して2段階のマッチングを行う.8個のオープンソースソフトウェアに対して提案手法を用いて実験を行った結果,88,848個のコミットの中から合計で89,418個のファイルを横断する移動を検出でき,ファイルを横断するソースコードの移動やファイル名に幾つかの特徴が得られた.また既存ツールと比較を行った結果,既存ツールを上回る数の移動を検出した. |
| 論文電子ファイル | a-fujimt_202005_ieice.pdf (application/pdf) [一般閲覧可] |
| BiBTeXエントリ |
@article{id702,
title = {プロジェクト全体の抽象構文木構築によるファイル間の移動コード検出},
author = {藤本 章良 and 肥後 芳樹 and 松本 淳之介 and 楠本 真二},
journal = {電子情報通信学会論文誌 D},
volume = {J104-D},
number = {No.4},
pages = {242-254},
month = {4},
year = {2021},
}
|