論文の概要: Predicting the Impact of Batch Refactoring Code Smells on Application
Resource Consumption
- arxiv url: http://arxiv.org/abs/2306.15763v1
- Date: Tue, 27 Jun 2023 19:28:05 GMT
- ステータス: 処理完了
- システム内更新日: 2023-06-29 16:42:58.015146
- Title: Predicting the Impact of Batch Refactoring Code Smells on Application
Resource Consumption
- Title(参考訳): バッチリファクタリングコードの臭いがアプリケーションリソース消費に及ぼす影響の予測
- Authors: Asif Imran, Tevfik Kosar, Jaroslaw Zola, Muhammed Fatih Bulut
- Abstract要約: 本稿では,ソフトウェアコードの臭いのバッチと資源消費の関係について検討する。
次に、コードの臭いがリソース消費に与える影響を予測するアルゴリズムを設計することを目的とする。
- 参考スコア(独自算出の注目度): 3.5557219875516646
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Automated batch refactoring has become a de-facto mechanism to restructure
software that may have significant design flaws negatively impacting the code
quality and maintainability. Although automated batch refactoring techniques
are known to significantly improve overall software quality and
maintainability, their impact on resource utilization is not well studied. This
paper aims to bridge the gap between batch refactoring code smells and
consumption of resources. It determines the relationship between software code
smell batch refactoring, and resource consumption. Next, it aims to design
algorithms to predict the impact of code smell refactoring on resource
consumption. This paper investigates 16 code smell types and their joint effect
on resource utilization for 31 open source applications. It provides a detailed
empirical analysis of the change in application CPU and memory utilization
after refactoring specific code smells in isolation and in batches. This
analysis is then used to train regression algorithms to predict the impact of
batch refactoring on CPU and memory utilization before making any refactoring
decisions. Experimental results also show that our ANN-based regression model
provides highly accurate predictions for the impact of batch refactoring on
resource consumption. It allows the software developers to intelligently decide
which code smells they should refactor jointly to achieve high code quality and
maintainability without increasing the application resource utilization. This
paper responds to the important and urgent need of software engineers across a
broad range of software applications, who are looking to refactor code smells
and at the same time improve resource consumption. Finally, it brings forward
the concept of resource aware code smell refactoring to the most crucial
software applications.
- Abstract(参考訳): 自動バッチリファクタリングは、コード品質と保守性に悪影響を及ぼす重要な設計上の欠陥を持つソフトウェアを再構築するためのデファクトのメカニズムになっている。
自動バッチリファクタリング技術はソフトウェア全体の品質と保守性を大幅に改善することが知られているが、リソース利用への影響は十分に研究されていない。
本稿では,バッチリファクタリングコードの臭いとリソース消費のギャップを埋めることを目的とする。
ソフトウェアコードの臭いのバッチリファクタリングとリソース消費の関係を決定する。
次に、コードの臭いがリソース消費に与える影響を予測するアルゴリズムを設計することを目指している。
本稿では,31種類のオープンソースアプリケーションにおける16種類のコード臭いタイプと,それらの資源利用への共同効果について検討する。
特定のコードの臭いを分離およびバッチでリファクタリングした後のアプリケーションcpuおよびメモリ使用率の変化に関する詳細な実証分析を提供する。
この分析は、リファクタリング決定を行う前にバッチリファクタリングがCPUとメモリ利用に与える影響を予測するために回帰アルゴリズムをトレーニングするために使用される。
実験の結果,ANNに基づく回帰モデルでは,バッチリファクタリングが資源消費に与える影響を高精度に予測できることがわかった。
これにより、ソフトウェア開発者は、アプリケーションリソースの利用を増加させることなく、高いコード品質と保守性を達成するために、リファクタリングすべきコードの臭いをインテリジェントに決定できる。
本稿では,コードの臭いをリファクタリングし,リソース消費を改善するために,幅広いソフトウェアアプリケーションにおいて,ソフトウェアエンジニアが重要かつ緊急に必要とすることに対応する。
最後に、リソースを意識したコード臭いリファクタリングという概念を最も重要なソフトウェアアプリケーションにもたらします。
関連論文リスト
- In Search of Metrics to Guide Developer-Based Refactoring Recommendations [13.063733696956678]
モチベーションは、外部の振る舞いを損なうことなく、ソースコードの品質を改善するための確立されたアプローチである。
本研究では,開発者の運用意欲を調査する指標に関する実証的研究を提案する。
実行すべき開発者のモチベーションを把握する上で、製品とプロセスのメトリクスの価値を定量化します。
論文 参考訳(メタデータ) (2024-07-25T16:32:35Z) - Investigating the Transferability of Code Repair for Low-Resource Programming Languages [57.62712191540067]
大規模言語モデル(LLM)は、コード生成タスクにおいて顕著なパフォーマンスを示している。
近年の作業は、連鎖推論や蒸留といった現代的な技術を統合することで、コード修復のプロセスを強化している。
高低資源言語と低低資源言語の両方でコード修復を蒸留する利点について検討する。
論文 参考訳(メタデータ) (2024-06-21T05:05:39Z) - 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) - LLM-Assisted Code Cleaning For Training Accurate Code Generators [53.087019724256606]
コードの品質を調査した結果,より構造化され,読みやすくなれば,コード生成性能が向上することがわかった。
私たちは、これらの原則を使って既存のプログラムを変換する、新しいデータクリーニングパイプラインを構築します。
提案手法を2つのアルゴリズムコード生成ベンチマークで評価した結果,微調整のCodeLLaMa-7Bでは,元のデータセットの微調整に比べて最大30%性能が向上していることがわかった。
論文 参考訳(メタデータ) (2023-11-25T02:45:50Z) - Automating Source Code Refactoring in the Classroom [15.194527511076725]
本稿では,アンチパターン検出と修正をサポートするEclipseプラグインであるJandanrantを用いて,アンチパターンの除去を目的とした各種教室活動の実施に関する実験結果について述べる。
171人の学生による定量的・質的分析の結果、学生は学習の考え方を高く評価し、JDeodorantプラグインの動作の様々な側面に満足していることが示された。
論文 参考訳(メタデータ) (2023-11-05T18:46:00Z) - URegM: a unified prediction model of resource consumption for
refactoring software smells in open source cloud [3.9704849108478704]
我々は、コードの臭いがクラウドリソースの利用に与える影響を予測する、Unified Regression Modelling (URegM) というフレームワークを提案する。
その結果,URegMはコードの臭いによる資源消費を正確に予測できることがわかった。
論文 参考訳(メタデータ) (2023-10-22T23:03:35Z) - 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) - Prevalence of Code Smells in Reinforcement Learning Projects [1.7218973692320518]
強化学習(Reinforcement Learning, RL)は、大規模および安全クリティカルシステムを含む多くの領域で、アプリケーションの振る舞いを学習し、適応するために、ますます使われている。
プラグインプレイRLライブラリの出現により、その適用性はさらに向上し、ユーザによるRLアルゴリズムの統合が可能になった。
しかしながら、これらのコードの大部分はRLエンジニアによって開発されていないため、結果として、バグ、準最適性能、保守性、RLベースのプロジェクトにおける進化問題をもたらすプログラム品質が低下する可能性があることに留意する。
論文 参考訳(メタデータ) (2023-03-17T20:25:13Z) - 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) - A Transformer-based Approach for Source Code Summarization [86.08359401867577]
コードトークン間のペア関係をモデル化することにより,要約のためのコード表現を学習する。
アプローチは単純であるにもかかわらず、最先端技術よりもかなりの差があることが示される。
論文 参考訳(メタデータ) (2020-05-01T23:29:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。