論文の概要: An Empirical Study of Refactoring Engine Bugs
- arxiv url: http://arxiv.org/abs/2409.14610v1
- Date: Sun, 22 Sep 2024 22:09:39 GMT
- ステータス: 処理完了
- システム内更新日: 2024-11-06 21:57:16.597263
- Title: An Empirical Study of Refactoring Engine Bugs
- Title(参考訳): エンジンバグの補修に関する実証的研究
- Authors: Haibo Wang, Zhuolin Xu, Huaien Zhang, Nikolaos Tsantalis, Shin Hwei Tan,
- Abstract要約: Eclipse、IntelliJ IDEA、Netbeansのバグを分析することで、エンジンのバグに関する最初の体系的な研究を示す。
これらのバグは, タイプ, 症状, 根本原因, トリガー条件によって分析した。
我々のトランスファービリティー調査では、これらのエンジンの最新バージョンに130の新たなバグが見つかった。
- 参考スコア(独自算出の注目度): 7.412890903261693
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Refactoring is a critical process in software development, aiming at improving the internal structure of code while preserving its external behavior. Refactoring engines are integral components of modern Integrated Development Environments (IDEs) and can automate or semi-automate this process to enhance code readability, reduce complexity, and improve the maintainability of software products. Like traditional software systems, refactoring engines can generate incorrect refactored programs, resulting in unexpected behaviors or even crashes. In this paper, we present the first systematic study of refactoring engine bugs by analyzing bugs arising in three popular refactoring engines (i.e., Eclipse, IntelliJ IDEA, and Netbeans). We analyzed these bugs according to their refactoring types, symptoms, root causes, and triggering conditions. We obtained 12 findings and provided a series of valuable guidelines for future work on refactoring bug detection and debugging. Furthermore, our transferability study revealed 130 new bugs in the latest version of those refactoring engines. Among the 21 bugs we submitted, 10 bugs are confirmed by their developers, and seven of them have already been fixed.
- Abstract(参考訳): リファクタリングはソフトウェア開発において重要なプロセスであり、外部の振舞いを保ちながらコードの内部構造を改善することを目的としています。
リファクタリングエンジンは、現代の統合開発環境(IDE)の不可欠なコンポーネントであり、このプロセスを自動化または半自動化することで、コードの可読性を高め、複雑さを減らし、ソフトウェア製品の保守性を向上させることができる。
従来のソフトウェアシステムと同じように、リファクタリングエンジンは誤ったリファクタリングプログラムを生成し、予期せぬ振る舞いやクラッシュを引き起こします。
本稿では,3つの一般的なリファクタリングエンジン(Eclipse,IntelliJ IDEA,Netbeans)で発生するバグを分析することで,エンジンのバグをリファクタリングする最初の体系的な研究について述べる。
これらのバグは, リファクタリングタイプ, 症状, 根本原因, トリガー条件によって分析した。
12の結果を得て、バグ検出とデバッグのリファクタリングに関する一連の貴重なガイドラインを公開しました。
さらに,これらのリファクタリングエンジンの最新バージョンでは130の新たなバグが報告された。
私たちが提出した21のバグのうち、10のバグが開発者によって確認され、7つのバグはすでに修正されています。
関連論文リスト
- Understanding Code Understandability Improvements in Code Reviews [79.16476505761582]
GitHub上のJavaオープンソースプロジェクトからの2,401のコードレビューコメントを分析した。
改善提案の83.9%が承認され、統合され、1%未満が後に復活した。
論文 参考訳(メタデータ) (2024-10-29T12:21:23Z) - Investigating the Transferability of Code Repair for Low-Resource Programming Languages [57.62712191540067]
大規模言語モデル(LLM)は、コード生成タスクにおいて顕著なパフォーマンスを示している。
近年の作業は、連鎖推論や蒸留といった現代的な技術を統合することで、コード修復のプロセスを強化している。
高低資源言語と低低資源言語の両方でコード修復を蒸留する利点について検討する。
論文 参考訳(メタデータ) (2024-06-21T05:05:39Z) - Insights into Deep Learning Refactoring: Bridging the Gap Between Practices and Expectations [13.084553746852382]
ディープラーニングソフトウェアは、ソフトウェアが進化するにつれて、徐々に複雑になってきています。
ディープラーニングの文脈におけるコードの洞察はまだ不明だ。
関連ツールの研究と開発は、プロジェクトの保守性とコード品質を改善するために不可欠である。
論文 参考訳(メタデータ) (2024-05-08T07:35:14Z) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - Automating Source Code Refactoring in the Classroom [15.194527511076725]
本稿では,アンチパターン検出と修正をサポートするEclipseプラグインであるJandanrantを用いて,アンチパターンの除去を目的とした各種教室活動の実施に関する実験結果について述べる。
171人の学生による定量的・質的分析の結果、学生は学習の考え方を高く評価し、JDeodorantプラグインの動作の様々な側面に満足していることが示された。
論文 参考訳(メタデータ) (2023-11-05T18:46:00Z) - Empirical Evaluation of a Live Environment for Extract Method
Refactoring [0.0]
我々は,抽出手法を視覚的に識別し,推奨し,適用するLive Refactoring Environmentを開発した。
私たちの結果は、追加の助けなしに手作業で行うコードとは大きく異なり、改善されました。
論文 参考訳(メタデータ) (2023-07-20T16:36:02Z) - Predicting the Impact of Batch Refactoring Code Smells on Application
Resource Consumption [3.5557219875516646]
本稿では,ソフトウェアコードの臭いのバッチと資源消費の関係について検討する。
次に、コードの臭いがリソース消費に与える影響を予測するアルゴリズムを設計することを目的とする。
論文 参考訳(メタデータ) (2023-06-27T19:28:05Z) - RefBERT: A Two-Stage Pre-trained Framework for Automatic Rename
Refactoring [57.8069006460087]
本研究では,他のリネーム活動よりも難易度の高い変数名の自動改名について検討する。
変数名に対する名前変更のための2段階事前訓練フレームワークであるRefBERTを提案する。
RefBERTの変数名は既存の手法よりも正確で有意義であることを示す。
論文 参考訳(メタデータ) (2023-05-28T12:29:39Z) - Do code refactorings influence the merge effort? [80.1936417993664]
複数のコントリビュータがソースコードを並行して変更して,新機能の実装やバグの修正,既存のコードの変更などを行っている。
これらの同時変更は、ソースコードの同じバージョンにマージする必要がある。
研究によると、すべてのマージの試みの10~20%が衝突を起こしており、これはプロセスを完了するために手動開発者の介入を必要とする。
論文 参考訳(メタデータ) (2023-05-10T13:24:59Z) - BigIssue: A Realistic Bug Localization Benchmark [89.8240118116093]
BigIssueは、現実的なバグローカライゼーションのためのベンチマークである。
実際のJavaバグと合成Javaバグの多様性を備えた一般的なベンチマークを提供する。
われわれは,バグローカライゼーションの最先端技術として,APRの性能向上と,現代の開発サイクルへの適用性の向上を期待している。
論文 参考訳(メタデータ) (2022-07-21T20:17:53Z) - How We Refactor and How We Document it? On the Use of Supervised Machine
Learning Algorithms to Classify Refactoring Documentation [25.626914797750487]
リファクタリングは、外部の振る舞いを変えることなく、システムの設計を改善する技術である。
この研究はコミットを、従来のBugFixやFunctionalのカテゴリとともに、内部QA、外部QA、Code Smell Resolutionの3つのカテゴリに分類する。
分類結果をよりよく理解するために、私たちはコミットメッセージを分析して、開発者が定期的に臭いを説明するために使用するパターンを抽出しました。
論文 参考訳(メタデータ) (2020-10-26T20:33:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。