中文
相关论文

相关论文: A Soundness and Precision Benchmark for Java Deblo…

200 篇论文

In the evolving landscape of large language models (LLMs) tailored for software engineering, the need for benchmarks that accurately reflect real-world development scenarios is paramount. Current benchmarks are either too simplistic or fail…

软件工程 · 计算机科学 2024-03-29 Zhengran Zeng , Yidong Wang , Rui Xie , Wei Ye , Shikun Zhang

Code large language models (LLMs) have made significant progress in code debugging by directly generating the correct code based on the buggy code snippet. Programming benchmarks, typically consisting of buggy code snippet and their…

Re-using open-source software (OSS) can avoid reinventing the wheel, but failing to keep it up-to-date can lead to missing new features and persistent bugs or vulnerabilities that have already been resolved. The use of outdated OSS…

软件工程 · 计算机科学 2025-11-11 Rui Lu , Lyuye Zhang , Kaixuan Li , Min Zhang , Yixiang Chen

Researchers, students and practitioners often encounter a situation when the build process of a third-party software system fails. In this paper, we aim to confirm this observation present mainly as anecdotal evidence so far. Using a…

软件工程 · 计算机科学 2017-12-05 Matúš Sulír , Jaroslav Porubän

Large Language Models have advanced automated software development, however, it remains a challenge to correctly infer dependencies, namely, identifying the internal components and external packages required for a repository to successfully…

Software bloat refers to code and features that is not used by a software during runtime. For Machine Learning (ML) systems, bloat is a major contributor to their technical debt leading to decreased performance and resource wastage. In this…

软件工程 · 计算机科学 2025-05-15 Huaifeng Zhang , Ahmed Ali-Eldin

Open-source software (OSS) dependencies are a dominant component of modern software code bases. Using proven and well-tested OSS components lets developers reduce development time and cost while improving quality. However, heavy reliance on…

软件工程 · 计算机科学 2026-02-02 Stefan Schott , Serena Elisa Ponta , Wolfram Fischer , Jonas Klauke , Eric Bodden

Logging statements are central to debugging, failure diagnosis, and production observability, yet writing them requires developers to decide where to place a logging statement, which API and severity level to use, and what runtime…

软件工程 · 计算机科学 2026-04-21 Renyi Zhong , Yichen Li , Yulun Wu , Jinxi Kuang , Yintong Huo , Michael R. Lyu

Measuring and evaluating source code similarity is a fundamental software engineering activity that embraces a broad range of applications, including but not limited to code recommendation, duplicate code, plagiarism, malware, and smell…

软件工程 · 计算机科学 2023-06-29 Morteza Zakeri-Nasrabadi , Saeed Parsa , Mohammad Ramezani , Chanchal Roy , Masoud Ekhtiarzadeh

Software testing is one of the very important Quality Assurance (QA) components. A lot of researchers deal with the testing process in terms of tester motivation and how tests should or should not be written. However, it is not known from…

Static analysis tools are commonly used to detect defects before the code is released. Previous research has focused on their overall effectiveness and their ability to detect defects. However, little is known about the usage patterns of…

软件工程 · 计算机科学 2023-11-14 Georgios Liargkovas , Evangelia Panourgia , Diomidis Spinellis

Decompilers are fundamental tools for critical security tasks, from vulnerability discovery to malware analysis, yet their evaluation remains fragmented. Existing approaches primarily focus on syntactic correctness through synthetic…

软件工程 · 计算机科学 2025-05-19 Zeyu Gao , Yuxin Cui , Hao Wang , Siliang Qin , Yuanda Wang , Bolun Zhang , Chao Zhang

Modern software systems rely on dependency networks of reusable libraries, where breaking changes propagate and cause downstream consumers to fail. Despite growing research across ecosystems, no comprehensive synthesis exists. We conduct a…

软件工程 · 计算机科学 2026-05-26 Juntao Chen , Tingting Bi , Yanlin Wang , Patanamon Thongtanunam

DevBench is a telemetry-driven benchmark designed to evaluate Large Language Models (LLMs) on realistic code completion tasks. It includes 1,800 evaluation instances across six programming languages and six task categories derived from real…

Context. Software reusability mechanisms, like inheritance and delegation in Object-Oriented programming, are widely recognized as key instruments of software design. These are used to reduce the risks of source code being affected by…

软件工程 · 计算机科学 2022-08-17 Giammaria Giordano , Gerardo Festa , Gemma Catolino , Fabio Palomba , Filomena Ferrucci , Carmine Gravino

Program debloating aims to enhance the performance and reduce the attack surface of bloated applications. Several techniques have been recently proposed to specialize programs. These approaches are either based on unsound strategies or…

软件工程 · 计算机科学 2021-09-08 Mohannad Alhanahnah , Rithik Jain , Vaibhav Rastogi , Somesh Jha , Thomas Reps

Nowadays, an increasing number of applications uses deserialization. This technique, based on rebuilding the instance of objects from serialized byte streams, can be dangerous since it can open the application to attacks such as remote code…

密码学与安全 · 计算机科学 2022-08-18 Imen Sayar , Alexandre Bartel , Eric Bodden , Yves Le Traon

AI coding agents increasingly modify real software repositories and make dependency decisions, including adding, removing, or updating third-party packages. These choices can materially affect security posture and maintenance burden, yet…

软件工程 · 计算机科学 2026-02-02 Tanmay Singla , Berk Çakar , Paschal C. Amusuo , James C. Davis

Context: Dependency Injection (DI) is a commonly applied mechanism to decouple classes from their dependencies in order to provide higher modularization. However, bad DI practices often lead to negative consequences, such as increasing…

软件工程 · 计算机科学 2021-10-19 Rodrigo Laigner , Diogo Mendonça , Alessandro Garcia , Marcos Kalinowski

Context: Bug bisection is a common technique used to identify a revision that introduces a bug or indirectly fixes a bug, and often involves executing multiple revisions of a project to determine whether the bug is present within the…

软件工程 · 计算机科学 2024-05-06 Ching Hang Mak , Shing-Chi Cheung