English
Related papers

Related papers: Revisiting Exception Handling Practices with Excep…

200 papers

Outdated documentation is a pervasive problem in software development, preventing effective use of software, and misleading users and developers alike. We posit that one possible reason why documentation becomes out of sync so easily is…

Software Engineering · Computer Science 2022-12-06 Wen Siang Tan , Markus Wagner , Christoph Treude

While reusing third-party libraries (TPL) facilitates software development, its chaotic management has brought great threats to software maintenance and the unauthorized use of source code also raises ethical problems such as misconduct on…

Software Engineering · Computer Science 2025-08-05 Lida Zhao , Chaofan Li , Yueming Wu , Lyuye Zhang , Jiahui Wu , Chengwei Liu , Sen Chen , Yutao Hu , Zhengzi Xu , Yi Liu , Jingquan Ge , Jun Sun , Yang Liu

Understanding a program's runtime reasoning behavior, meaning how intermediate states and control flows lead to final execution results, is essential for reliable code generation, debugging, and automated reasoning. Although large language…

Software Engineering · Computer Science 2025-12-02 Mohammad Abdollahi , Khandaker Rifah Tasnia , Soumit Kanti Saha , Jinqiu Yang , Song Wang , Hadi Hemmati

Treating modern firewall policy languages as imperative, special purpose programming languages, in this article we will try to apply static code analysis techniques for the purpose of anomaly detection. We will first abstract a policy in…

Programming Languages · Computer Science 2011-02-08 Vadim Zaliva

Effective debugging is a crucial aspect of software development, demanding problem-solving skills, expertise, and appropriate tools. Although previous research has studied expert developers' debugging strategies, the specific factors…

Human-Computer Interaction · Computer Science 2025-01-22 Maryam Arab , Jenny T. Liang , Valentina Hong , Thomas D. LaToza

During compilation from Java source code to bytecode, some information is irreversibly lost. In other words, compilation and decompilation of Java code is not symmetric. Consequently, the decompilation process, which aims at producing…

Software Engineering · Computer Science 2019-12-19 Nicolas Harrand , César Soto-Valero , Martin Monperrus , Benoit Baudry

Continuous Integration (CI) encompasses a set of widely adopted practices that enhance software development. However, there are indications that developers may not adequately monitor CI practices. Hence, this paper explores developers'…

Software Engineering · Computer Science 2025-06-10 Jadson Santos , Daniel Alencar da Costa , Shane McIntosh , Uirá Kulesza

Choosing an appropriate software development technology (e.g., programming language) is challenging due to the proliferation of diverse options. The selection of inappropriate technologies for development may have a far-reaching effect on…

Software Engineering · Computer Science 2023-12-07 Saikat Mondal , Debajyoti Mondal , Chanchal K. Roy

Context: Software development projects increasingly adopt unit testing as a way to identify and correct program faults early in the construction process. Code that is unit tested should therefore have fewer failures associated with it.…

Software Engineering · Computer Science 2023-12-05 Efstathia Chioteli , Ioannis Batas , Diomidis Spinellis

The Maximum Flow Problem with Conflict Constraints is a generalization that adds conflict constraints to a classical optimization problem on networks used to model several real-world applications. In the last few years several approaches,…

Optimization and Control · Mathematics 2025-03-26 Roberto Montemanni , Derek H. Smith

This is a survey on the programming languages: C++, JavaScript, AspectJ, C#, Haskell, Java, PHP, Scala, Scheme, and BPEL. Our survey work involves a comparative study of these ten programming languages with respect to the following…

Programming Languages · Computer Science 2010-08-23 Rana Naim , Mohammad Fahim Nizam , Sheetal Hanamasagar , Jalal Noureddine , Marinela Miladinova

Writing logging messages is a well-established conventional programming practice, and it is of vital importance for a wide variety of software development activities. The logging mechanism in Solidity programming is enabled by the…

Software Engineering · Computer Science 2023-08-25 Lantian Li , Yejian Liang , Zhihao Liu , Zhongxing Yu

C++ advocates exceptions as the preferred way to handle unexpected behaviour of an implementation in the code. This does not integrate well with the error handling of MPI, which more or less always results in program termination in case of…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-16 Christian Engwer , Mirco Altenbernd , Nils-Arne Dreier , Dominik Göddeke

Context: Application Programming Interface (API) code examples are an essential knowledge resource for learning APIs. However, a few user studies have explored how the structural characteristics of the source code in code examples impact…

Software Engineering · Computer Science 2024-04-04 Seham Alharbi , Dimitris Kolovos

Large Language Models (LLMs) have become a focal point of research across various domains, including software engineering, where their capabilities are increasingly leveraged. Recent studies have explored the integration of LLMs into…

Software Engineering · Computer Science 2024-10-14 Yi Wen Heng , Zeyang Ma , Zhenhao Li , Dong Jae Kim , Tse-Hsun , Chen

Contracts are a form of lightweight formal specification embedded in the program text. Being executable parts of the code, they encourage programmers to devote proper attention to specifications, and help maintain consistency between…

Software Engineering · Computer Science 2014-05-08 H. -Christian Estler , Carlo A. Furia , Martin Nordio , Marco Piccioni , Bertrand Meyer

Background: Modern software systems are commonly built on the top of frameworks. To accelerate the learning process of features provided by frameworks, code samples are made available to assist developers. However, we know little about how…

Software Engineering · Computer Science 2019-07-15 Gabriel Menezes , Bruno Cafeo , Andre Hora

Dependency cycles pose a significant challenge to software quality and maintainability. However, there is limited understanding of how practitioners resolve dependency cycles in real-world scenarios. This paper presents an empirical study…

Software Engineering · Computer Science 2023-12-19 Qiong Feng , Shuwen Liu , Huan Ji , Xiaotian Ma , Peng Liang

Logging plays a crucial role in software engineering because it is key to perform various tasks including debugging, performance analysis, and detection of anomalies. Despite the importance of log data, the practice of logging still suffers…

Software Engineering · Computer Science 2022-08-16 Keyur Patel , Joao Faccin , Abdelwahab Hamou-Lhadj , Ingrid Nunes

Continuous Integration and Continuous Deployment (CI/CD) have become fundamental to modern software development, with GitHub Actions (GHA) emerging as a dominant automation platform. In this study, we analyze real-world execution records of…

Software Engineering · Computer Science 2026-04-21 Ali Khatami , Carolin Brandt , Andy Zaidman