論文の概要: An Empirical Study of Token-based Micro Commits
- arxiv url: http://arxiv.org/abs/2405.09165v1
- Date: Wed, 15 May 2024 07:52:13 GMT
- ステータス: 処理完了
- システム内更新日: 2024-05-16 14:06:01.287546
- Title: An Empirical Study of Token-based Micro Commits
- Title(参考訳): トークンを用いたマイクロコミットの実証的研究
- Authors: Masanari Kondo, Daniel M. German, Yasutaka Kamei, Naoyasu Ubayashi, Osamu Mizuno,
- Abstract要約: ソフトウェア開発では、開発者は1回のコミットで数行変更するソースコードにメンテナンスアクティビティを頻繁に適用します。
本稿では,変更トークンに基づく小変化の一種であるマイクロコミットを定義する。
マイクロコミットは、主に単一の名前またはリテラルトークンに置き換えられており、マイクロコミットはバグを修正するために使用される可能性が高い。
- 参考スコア(独自算出の注目度): 1.4749940504074461
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: In software development, developers frequently apply maintenance activities to the source code that change a few lines by a single commit. A good understanding of the characteristics of such small changes can support quality assurance approaches (e.g., automated program repair), as it is likely that small changes are addressing deficiencies in other changes; thus, understanding the reasons for creating small changes can help understand the types of errors introduced. Eventually, these reasons and the types of errors can be used to enhance quality assurance approaches for improving code quality. While prior studies used code churns to characterize and investigate the small changes, such a definition has a critical limitation. Specifically, it loses the information of changed tokens in a line. For example, this definition fails to distinguish the following two one-line changes: (1) changing a string literal to fix a displayed message and (2) changing a function call and adding a new parameter. These are definitely maintenance activities, but we deduce that researchers and practitioners are interested in supporting the latter change. To address this limitation, in this paper, we define micro commits, a type of small change based on changed tokens. Our goal is to quantify small changes using changed tokens. Changed tokens allow us to identify small changes more precisely. In fact, this token-level definition can distinguish the above example. We investigate defined micro commits in four OSS projects and understand their characteristics as the first empirical study on token-based micro commits. We find that micro commits mainly replace a single name or literal token, and micro commits are more likely used to fix bugs. Additionally, we propose the use of token-based information to support software engineering approaches in which very small changes significantly affect their effectiveness.
- Abstract(参考訳): ソフトウェア開発では、開発者は1回のコミットで数行変更するソースコードにメンテナンスアクティビティを頻繁に適用します。
このような小さな変更の特徴をよく理解することは、品質保証アプローチ(例えば、プログラムの自動修正)をサポートすることができ、小さな変更が他の変更の欠陥に対処している可能性が高いため、小さな変更を作成する理由を理解することは、導入されたエラーの種類を理解するのに役立つ。
最終的に、これらの理由とタイプのエラーは、コード品質を改善するための品質保証アプローチを強化するために使用できる。
以前の研究では、小さな変更を特徴づけ、調査するためにコードチャーンを使用していたが、そのような定義には限界がある。
具体的には、行内の変更トークンの情報を失う。
例えば、この定義では、(1)文字列リテラルを変更して表示されたメッセージを修正すること、(2)関数呼び出しを変更し、新しいパラメータを追加することである。
これらは間違いなく保守活動であるが、研究者や実践者が後者の変更を支持することに興味を持っていると推測する。
この制限に対処するため、この論文では、変更トークンに基づいた小さな変更の一種であるマイクロコミットを定義します。
私たちのゴールは、変更したトークンを使って小さな変更を定量化することです。
トークンの変更により、小さな変更をより正確に特定できます。
実際、このトークンレベルの定義は上記の例を区別することができる。
4つのOSSプロジェクトで定義されたマイクロコミットについて検討し、トークンベースのマイクロコミットに関する最初の実証的研究としてそれらの特性を理解する。
マイクロコミットは、主に単一の名前またはリテラルトークンに置き換えられており、マイクロコミットはバグを修正するために使用される可能性が高い。
さらに,非常に小さな変更がそれらの効果に大きく影響するソフトウェア工学的アプローチを支援するために,トークンベースの情報を利用することを提案する。
関連論文リスト
- Understanding Code Understandability Improvements in Code Reviews [79.16476505761582]
GitHub上のJavaオープンソースプロジェクトからの2,401のコードレビューコメントを分析した。
改善提案の83.9%が承認され、統合され、1%未満が後に復活した。
論文 参考訳(メタデータ) (2024-10-29T12:21:23Z) - Understanding Code Change with Micro-Changes [9.321152185934105]
マイクロチェンジのカタログと自動マイクロチェンジ検出器について述べる。
我々の検出器は、研究中のシステムで起きている変化の67%以上を説明できることがわかった。
論文 参考訳(メタデータ) (2024-09-16T01:47:25Z) - Towards Better Comprehension of Breaking Changes in the NPM Ecosystem [12.392457751450374]
我々は,NPM生態系の破壊的変化を調査するため,大規模な実証的研究を行っている。
我々は381のNPMプロジェクトから明示的に文書化された破壊的変更のデータセットを構築した。
我々は、JavaScriptとTypeScript固有の構文的破壊変化の分類と、主要な行動的破壊変化の分類を生成する。
論文 参考訳(メタデータ) (2024-08-26T17:18:38Z) - Leveraging Large Language Models for Efficient Failure Analysis in Game Development [47.618236610219554]
本稿では,テストの失敗の原因となるコードの変更を自動的に識別する手法を提案する。
このメソッドは、LLM(Large Language Models)を利用して、エラーメッセージと対応するコード変更を関連付ける。
当社のアプローチは新たに作成したデータセットで71%の精度に達しています。
論文 参考訳(メタデータ) (2024-06-11T09:21:50Z) - Towards Understanding the Impact of Code Modifications on Software Quality Metrics [1.2277343096128712]
本研究の目的は、コード修正がソフトウェアの品質指標に与える影響を評価し、解釈することである。
基礎となる仮説は、ソフトウェア品質のメトリクスに類似した変更を誘発するコード修正は、異なるクラスタにグループ化できる、というものである。
結果は、コード修正の異なるクラスタを明らかにし、それぞれに簡潔な記述が伴い、ソフトウェアの品質指標に対する全体的な影響を明らかにした。
論文 参考訳(メタデータ) (2024-04-05T08:41:18Z) - Identifying and Analyzing Task-Encoding Tokens in Large Language Models [55.03191279766383]
本稿では,タスク性能が依存するタスク符号化トークンの識別と解析を行う。
テンプレートとストップワードトークンはタスクエンコーディングが最も困難であることを示す。
我々の研究は、大規模言語モデル(LLM)がいかにして、デモからタスクを実行するかを学習し、LLMでプレイされるさまざまな種類のトークンの役割の理解を深め、タスクエンコーディングトークンを不適切な利用から不安定を避けるための洞察を提供する。
論文 参考訳(メタデータ) (2024-01-20T20:55:21Z) - MS-Former: Memory-Supported Transformer for Weakly Supervised Change
Detection with Patch-Level Annotations [50.79913333804232]
弱い教師付き変化検出のためのメモリ支援トランス (MS-Former) を提案する。
MS-Former は双方向注意ブロック (BAB) とパッチレベルの監視スキーム (PSS) から構成される。
3つのベンチマークデータセットの実験結果から,提案手法の有効性が示された。
論文 参考訳(メタデータ) (2023-11-16T09:57:29Z) - Context-Encoded Code Change Representation for Automated Commit Message
Generation [0.0]
本稿では,変化したコードと変化しないコードを組み合わせることで,コード変更を表現する手法を提案する。
これは現在の表現の限界を克服し、最先端のコミットメッセージ生成メソッドの5/6のパフォーマンスを改善している。
論文 参考訳(メタデータ) (2023-06-26T04:48:14Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - On Quantitative Evaluations of Counterfactuals [88.42660013773647]
本稿では、分析と実験を通じて、視覚的対実例の評価に関する研究を集約する。
ほとんどのメトリクスは、十分な単純なデータセットを意図して振る舞うが、複雑さが増加すると、良い結果と悪い結果の違いを判断できないものもいる。
私たちはラベル変動スコアとOracleスコアという2つの新しい指標を提案しています。
論文 参考訳(メタデータ) (2021-10-30T05:00:36Z) - Unsupervised Learning of General-Purpose Embeddings for Code Changes [6.652641137999891]
事前学習中にコード変更の埋め込みを得る手法を提案する。
コードの変更とコミットメッセージ生成という、2つの異なる下流タスクでそれらを評価します。
本モデルでは,完全編集シーケンスを用いたモデルの精度を5.9ポイント向上させる。
論文 参考訳(メタデータ) (2021-06-03T19:08:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。