PYREF: Refactoring Detection in Python Projects

Hassan Atwi, Bin Lin, Nikolaos Tsantalis, Yutaro Kashiwa, Yasutaka Kamei, Naoyasu Ubayashi, Gabriele Bavota, Michele Lanza

研究成果: 書籍/レポート タイプへの寄稿会議への寄与

6 被引用数 (Scopus)

抄録

Refactoring, the process of improving the internal code structure of a software system without altering its external behavior, is widely applied during software development. Understanding how developers refactor source code can help gain better understanding of the software development process and the relationship between various versions of a system. Refactoring detection tools have been developed for many popular programming languages, such as Java (e.g., REFACTORINGMINER and REF-FINDER) but, quite surprisingly, this is not the case for Python, a widely used programming language.Inspired by REFACTORING MINER, we present PYREF, a tool that automatically detects method-level refactoring operations in Python projects. We evaluated PYREF against a manually built oracle and compared it with a PYTHON-ADAPTED REFACTOR-INGMINER, which converts Python program to Java and detects refactoring operations with REFACTORING MINER. Our results indicate that PYREF can achieve satisfactory precision and detect more refactorings than the current state-of-The-Art.

本文言語英語
ホスト出版物のタイトルProceedings - IEEE 21st International Working Conference on Source Code Analysis and Manipulation, SCAM 2021
出版社Institute of Electrical and Electronics Engineers Inc.
ページ136-141
ページ数6
ISBN(電子版)9781665448970
DOI
出版ステータス出版済み - 2021
イベント21st IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2021 - Virtual, Luxembourg City, ルクセンブルク
継続期間: 9月 27 202110月 1 2021

出版物シリーズ

名前Proceedings - IEEE 21st International Working Conference on Source Code Analysis and Manipulation, SCAM 2021

会議

会議21st IEEE International Working Conference on Source Code Analysis and Manipulation, SCAM 2021
国/地域ルクセンブルク
CityVirtual, Luxembourg City
Period9/27/2110/1/21

!!!All Science Journal Classification (ASJC) codes

  • コンピュータ サイエンスの応用
  • ハードウェアとアーキテクチャ
  • ソフトウェア
  • 安全性、リスク、信頼性、品質管理
  • 制御と最適化

フィンガープリント

「PYREF: Refactoring Detection in Python Projects」の研究トピックを掘り下げます。これらがまとまってユニークなフィンガープリントを構成します。

引用スタイル