論文の概要: A Survey of Deep Learning Based Software Refactoring
- arxiv url: http://arxiv.org/abs/2404.19226v1
- Date: Tue, 30 Apr 2024 03:07:11 GMT
- ステータス: 処理完了
- システム内更新日: 2024-05-01 15:43:32.746690
- Title: A Survey of Deep Learning Based Software Refactoring
- Title(参考訳): ディープラーニングに基づくソフトウェアリファクタリングに関する調査
- Authors: Bridget Nyirongo, Yanjie Jiang, He Jiang, Hui Liu,
- Abstract要約: 大量のディープラーニングベースのアプローチがソフトウェアをリファクタリングするために提案されている。
このような作品に関する包括的なレビューや、深層学習に基づくアプローチのための分類の欠如がある。
ディープラーニング技術のほとんどは、コードの臭いの検出やソリューションの推奨に使われてきた。
- 参考スコア(独自算出の注目度): 5.716522445049744
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Refactoring is one of the most important activities in software engineering which is used to improve the quality of a software system. With the advancement of deep learning techniques, researchers are attempting to apply deep learning techniques to software refactoring. Consequently, dozens of deep learning-based refactoring approaches have been proposed. However, there is a lack of comprehensive reviews on such works as well as a taxonomy for deep learning-based refactoring. To this end, in this paper, we present a survey on deep learning-based software refactoring. We classify related works into five categories according to the major tasks they cover. Among these categories, we further present key aspects (i.e., code smell types, refactoring types, training strategies, and evaluation) to give insight into the details of the technologies that have supported refactoring through deep learning. The classification indicates that there is an imbalance in the adoption of deep learning techniques for the process of refactoring. Most of the deep learning techniques have been used for the detection of code smells and the recommendation of refactoring solutions as found in 56.25\% and 33.33\% of the literature respectively. In contrast, only 6.25\% and 4.17\% were towards the end-to-end code transformation as refactoring and the mining of refactorings, respectively. Notably, we found no literature representation for the quality assurance for refactoring. We also observe that most of the deep learning techniques have been used to support refactoring processes occurring at the method level whereas classes and variables attracted minimal attention. Finally, we discuss the challenges and limitations associated with the employment of deep learning-based refactorings and present some potential research opportunities for future work.
- Abstract(参考訳): リファクタリングは、ソフトウェアシステムの品質向上に使用されるソフトウェア工学における最も重要なアクティビティの1つです。
ディープラーニング技術の進歩により、研究者はソフトウェアリファクタリングにディープラーニング技術を適用しようとしている。
その結果、多くのディープラーニングベースのリファクタリングアプローチが提案されている。
しかし、このような作品に関する包括的なレビューや、ディープラーニングベースのリファクタリングのための分類の欠如がある。
そこで本論文では,ディープラーニングに基づくソフトウェアリファクタリングに関する調査を行う。
私たちは関連する作品を、彼らがカバーしている主要なタスクに応じて5つのカテゴリに分類します。
これらのカテゴリの中で、我々はさらに重要な側面(コードの臭いの種類、リファクタリングタイプ、トレーニング戦略、評価など)を提示し、ディープラーニングを通じてリファクタリングをサポートする技術の詳細について洞察する。
この分類は、リファクタリングプロセスにおけるディープラーニング技術の採用に不均衡があることを示唆している。
深層学習技術のほとんどは、それぞれ56.25\%と33.33\%の文献で見られるように、コードの臭いの検出とリファクタリングソリューションの推奨に使用されている。
対照的に、リファクタリングとリファクタリングのマイニングとして、エンドツーエンドのコード変換に向かっているのは6.25\%と4.17\%だけだった。
特に、リファクタリングの品質保証に関する文献表現はありませんでした。
また、ディープラーニング技術のほとんどは、メソッドレベルで発生したリファクタリングプロセスをサポートするために使われていますが、クラスや変数は最小限の注意を惹きつけています。
最後に,ディープラーニングによるリファクタリングの実施に伴う課題と限界について論じ,今後の研究の可能性を示唆する。
関連論文リスト
- Deciphering Refactoring Branch Dynamics in Modern Code Review: An Empirical Study on Qt [5.516979718589074]
本研究の目的は,Refactorブランチの変更に対するレビュープロセスの理解と,このブランチのコードをレビューする場合の開発者が何に関心を持っているかを明らかにすることである。
リファクタリングブランチからのレビューは、コードレビューの観点で解決する時間が非常に少なくなっています。
さらに、開発者意図のドキュメンテーションは、他のブランチと比べて、Refactorブランチ内では特に少ない。
論文 参考訳(メタデータ) (2024-10-07T01:18:56Z) - 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) - The Efficiency Spectrum of Large Language Models: An Algorithmic Survey [54.19942426544731]
LLM(Large Language Models)の急速な成長は、様々なドメインを変換する原動力となっている。
本稿では,LLMのエンドツーエンドのアルゴリズム開発に不可欠な多面的効率性について検討する。
論文 参考訳(メタデータ) (2023-12-01T16:00:25Z) - Automating Source Code Refactoring in the Classroom [15.194527511076725]
本稿では,アンチパターン検出と修正をサポートするEclipseプラグインであるJandanrantを用いて,アンチパターンの除去を目的とした各種教室活動の実施に関する実験結果について述べる。
171人の学生による定量的・質的分析の結果、学生は学習の考え方を高く評価し、JDeodorantプラグインの動作の様々な側面に満足していることが示された。
論文 参考訳(メタデータ) (2023-11-05T18:46:00Z) - State of Refactoring Adoption: Better Understanding Developer Perception
of Refactoring [5.516979718589074]
ソフトウェアライフサイクルにおける開発者の活動の文書化方法について検討する。
このようなアクティビティを自己確認リファクタリング(Self-Affirmed Refactoring, SAR)と呼びます。
本稿では,コミットが開発者関連のイベントを記述しているかどうかを,共通品質改善カテゴリに従って分類するアプローチを提案する。
論文 参考訳(メタデータ) (2023-06-09T16:38:20Z) - 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) - A Survey of Deep Face Restoration: Denoise, Super-Resolution, Deblur,
Artifact Removal [177.21001709272144]
顔復元(FR)は、低品質(LQ)入力画像から高品質(HQ)顔を復元することを目的としている。
本稿では,顔修復のための深層学習技術の最近の進歩を包括的に調査する。
論文 参考訳(メタデータ) (2022-11-05T07:08:15Z) - 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) - Learning to Stop While Learning to Predict [85.7136203122784]
多くのアルゴリズムにインスパイアされたディープモデルは全ての入力に対して固定深度に制限される。
アルゴリズムと同様に、深いアーキテクチャの最適深さは、異なる入力インスタンスに対して異なるかもしれない。
本稿では, ステアブルアーキテクチャを用いて, この様々な深さ問題に対処する。
学習した深層モデルと停止ポリシーにより,多様なタスクセットのパフォーマンスが向上することを示す。
論文 参考訳(メタデータ) (2020-06-09T07:22:01Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。