論文の概要: What is a "bug"? On subjectivity, epistemic power, and implications for
software research
- arxiv url: http://arxiv.org/abs/2402.08165v1
- Date: Tue, 13 Feb 2024 01:52:42 GMT
- ステータス: 処理完了
- システム内更新日: 2024-02-14 16:55:42.628430
- Title: What is a "bug"? On subjectivity, epistemic power, and implications for
software research
- Title(参考訳): バグ"とは何か?
ソフトウェア研究における主観性、疫学力および意味について
- Authors: David Gray Widder and Claire Le Goues
- Abstract要約: バグ」は少なくとも1870年代からの工学的「欠陥」の口語である。
現代のソフトウェア指向の定義のほとんどは、開発者が意図したものと、プログラムが実際に何をするかを区別するものである。
バグをファインディングするのは簡単だ" と最初に言うのは,“バグパターンはしばしばエラーとなるコード”だ。
- 参考スコア(独自算出の注目度): 8.116831482130555
- License: http://creativecommons.org/licenses/by-nc-sa/4.0/
- Abstract: Considerable effort in software research and practice is spent on bugs.
Finding, reporting, tracking, triaging, attempting to fix them automatically,
detecting "bug smells" -these comprise a substantial portion of large projects'
time and development cost, and are of significant interest to researchers in
Software Engineering, Programming Languages, and beyond.
But, what is a bug, exactly? While segmentation faults rarely spark joy, most
bugs are not so clear cut. Per the Oxford English Dictionary, the word "bug"
has been a colloquialism for an engineering "defect" at least since the 1870s.
Most modern software-oriented definitions speak to a disconnect between what a
developer intended and what a program actually does. Formal verification, from
its inception, has developed means to identify deviations from a formal
specification, expected to more or less fully encode desired behavior. However,
software is rarely accompanied by full and formal specifications, and this
intention is instead treated as implicit or partially-documented at best. The
International Software Testing Qualifications board writes: "A human being can
make an error (mistake), which produces a defect (fault, bug) in the program
code, or in a document. If a defect in code is executed, the system may fail to
do what it should do (or do something it shouldn't), causing a failure. Defects
may result in failures, but not all [do]". Most sources forsake this precision.
The influential paper "Finding bugs is easy" begins by saying "bug patterns are
code idioms that are often errors"-with no particular elaboration. Other work
relies on imperfect practical proxies for specifications. For example, in
automatic program repair research, a bug corresponds to a failing test case:
when the test passes, the bug is considered fixed.
However, when we interrogate fairly straightforward definitions, they start
to break down...
- Abstract(参考訳): ソフトウェア研究と実践でかなりの労力がバグに費やされている。
発見、レポート、追跡、トリアージ、自動修正、"バグの臭い"の検出 - これらは、大規模プロジェクトの時間と開発コストのかなりの部分を占め、ソフトウェア工学、プログラミング言語などの研究者にとって重要な関心事である。
しかし、正確にはバグとは何か?
セグメンテーションの欠陥が喜びを引き起こすことはめったにないが、ほとんどのバグはそれほど明確ではない。
オックスフォード英語辞典によると、"bug"という言葉は少なくとも1870年代以降、工学的な"defect"の口語として用いられてきた。
現代のソフトウェア指向の定義の多くは、開発者が意図するものと、プログラムが実際に行うものとを区別している。
形式検証は、その当初から、望まれる振る舞いを多かれ少なかれ完全にエンコードすることを期待する形式仕様からの逸脱を特定する手段を開発した。
しかし、ソフトウェアには完全な仕様と正式な仕様が伴うことは滅多になく、この意図は暗黙的あるいは部分的に文書化されたものとして扱われる。
International Software Testing Qualificationsのボードには,“人間がエラー(ミス)を犯し,プログラムコードあるいはドキュメントに欠陥(フォールト,バグ)を発生させる”,と書かれている。コードの欠陥が実行された場合,システムは,すべきこと(あるいはすべきでないこと)を行なわなかったり,障害を発生させたりします。欠陥は失敗するかも知れませんが,すべてではないのです。”。
ほとんどの情報源はこの正確さを禁じている。
影響のある論文"finding bugs is easy"は、"バグパターンは、しばしばエラーとなるコードイディオム"から始まり、特に詳細化されていない。
他の作業は仕様の不完全な実用的プロキシに依存している。
例えば、自動プログラム修復研究では、バグは失敗したテストケースに対応している: テストが通過すると、バグは修正されると考えられる。
しかし、非常に単純な定義を問うと、彼らは崩壊し始めます。
関連論文リスト
- Automated Bug Generation in the era of Large Language Models [6.0770779409377775]
BugFarmは任意のコードを複数の複雑なバグに変換する。
BUGFARMが生成した1.9万以上の変異株から435k以上のバグを総合的に評価する。
論文 参考訳(メタデータ) (2023-10-03T20:01:51Z) - Bugsplainer: Leveraging Code Structures to Explain Software Bugs with
Neural Machine Translation [4.519754139322585]
Bugsplainerは、バグ修正コミットの大規模なコーパスから学ぶことによって、ソフトウェアバグの自然言語説明を生成する。
Bugsplainerはバグを推論するためにコード構造を利用し、テキスト生成モデルの微調整バージョンであるCodeT5を採用している。
論文 参考訳(メタデータ) (2023-08-23T17:35:16Z) - Large Language Models of Code Fail at Completing Code with Potential
Bugs [30.80172644795715]
リアルタイムコード提案に触発されたバグコード補完問題について検討する。
潜在的なバグの存在は、高性能なCode-LLMの生成性能を著しく低下させる。
論文 参考訳(メタデータ) (2023-06-06T06:35:27Z) - Teaching Large Language Models to Self-Debug [62.424077000154945]
大規模言語モデル(LLM)は、コード生成において素晴らしいパフォーマンスを達成した。
本稿では,大規模言語モデルで予測プログラムを数発のデモでデバッグする自己デバッグを提案する。
論文 参考訳(メタデータ) (2023-04-11T10:43:43Z) - Generation Probabilities Are Not Enough: Uncertainty Highlighting in AI Code Completions [54.55334589363247]
本研究では,不確実性に関する情報を伝達することで,プログラマがより迅速かつ正確にコードを生成することができるかどうかを検討する。
トークンのハイライトは、編集される可能性が最も高いので、タスクの完了が早くなり、よりターゲットを絞った編集が可能になることがわかりました。
論文 参考訳(メタデータ) (2023-02-14T18:43:34Z) - Explaining Software Bugs Leveraging Code Structures in Neural Machine
Translation [5.079750706023254]
Bugsplainerは、バグ修正コミットの大規模なコーパスから学ぶことによって、ソフトウェアバグの自然言語説明を生成する。
3つのパフォーマンス指標を用いて評価したところ、BugsplainerはGoogleの標準に従って理解しやすく良い説明を生成できることがわかった。
また、Bugsplainerによる説明がベースラインよりも正確で、より正確で、より有用であることが判明した、20人の参加者を対象にした開発者スタディも実施しました。
論文 参考訳(メタデータ) (2022-12-08T22:19:45Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - BigIssue: A Realistic Bug Localization Benchmark [89.8240118116093]
BigIssueは、現実的なバグローカライゼーションのためのベンチマークである。
実際のJavaバグと合成Javaバグの多様性を備えた一般的なベンチマークを提供する。
われわれは,バグローカライゼーションの最先端技術として,APRの性能向上と,現代の開発サイクルへの適用性の向上を期待している。
論文 参考訳(メタデータ) (2022-07-21T20:17:53Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
サンプルプログラムの正しさを予測できる故障認識型ニューラルネットワークローダを提案する。
我々のフォールト・アウェア・ローダは、様々なコード生成モデルのpass@1精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2022-06-04T22:01:05Z) - Identifying Bug Patterns in Quantum Programs [4.282118876884235]
バグパターンは間違ったコードイディオムや悪いコーディングプラクティスで、何度も失敗することが証明されています。
本稿では,量子プログラミング言語Qiskitのバグパターンを特定し,分類する。
論文 参考訳(メタデータ) (2021-03-16T13:43:45Z) - On the Robustness of Language Encoders against Grammatical Errors [66.05648604987479]
我々は、非ネイティブ話者から実際の文法的誤りを収集し、これらの誤りをクリーンテキストデータ上でシミュレートするために敵攻撃を行う。
結果,全ての試験モデルの性能は影響するが,影響の程度は異なることがわかった。
論文 参考訳(メタデータ) (2020-05-12T11:01:44Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。