English
Related papers

Related papers: Unveiling Exception Handling Guidelines Adopted by…

200 papers

During software development, balancing security and non security issues is challenging. We focus on security awareness and approaches taken by non-security experts using software development issue trackers when considering security. We…

Software Engineering · Computer Science 2023-08-28 Léon McGregor , Manuel Maarek , Hans-Wolfgang Loidl

Software systems contain resilience code to handle those failures and unexpected events happening in production. It is essential for developers to understand and assess the resilience of their systems. Chaos engineering is a technology that…

Software Engineering · Computer Science 2021-03-10 Long Zhang , Brice Morin , Philipp Haller , Benoit Baudry , Martin Monperrus

Understanding how software defects manifest and evolve in production environments is critical for improving reliability. While previous research has largely focused on pre-release defects, the nature of residual faults, i.e., those escaping…

Software Engineering · Computer Science 2026-04-30 Domenico Cotroneo , Giuseppe De Rosa , Cristina Improta , Benedetta Gaia Varriale

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

Test case maintainability is an important concern, especially in open source and distributed development environments where projects typically have high contributor turnover with varying backgrounds and experience, and where code ownership…

Software Engineering · Computer Science 2019-10-01 Danielle Gonzalez , Joanna C. S. Santos , Andrew Popovich , Mehdi Mirakhorli , Mei Nagappan

Database-backed applications rely on the database access code to interact with the underlying database management systems (DBMSs). Although many prior studies aim at database access issues like SQL anti-patterns or SQL code smells, there is…

Software Engineering · Computer Science 2024-05-27 Wei Liu , Shouvick Mondal , Tse-Hsun Chen

While protecting user data is essential, software developers often fail to fulfill privacy requirements. However, the reasons why they struggle with privacy-compliant implementation remain unclear. Is it due to a lack of knowledge, or is it…

Annotations have been formally introduced into Java since Java 5. Since then, annotations have been widely used by the Java community for different purposes, such as compiler guidance and runtime processing. Despite the ever-growing use,…

Software Engineering · Computer Science 2019-04-16 Zhongxing Yu , Chenggang Bai , Lionel Seinturier , Martin Monperrus

Open-source developers, particularly the elite developers, maintain a diverse portfolio of contributing activities. They do not only commit source code but also spend a significant amount of effort on other communicative, organizational,…

Software Engineering · Computer Science 2019-11-15 Zhendong Wang , Yang Feng , Yi Wang , James A. Jones , David Redmiles

In the current IT world, developers write code while system operators run the code mostly as a black box. The connection between both worlds is typically established with log messages: the developer provides hints to the (unknown) operator,…

Software Engineering · Computer Science 2022-04-07 Jasmin Bogatinovski , Sasho Nedelkoski , Alexander Acker , Jorge Cardoso , Odej Kao

Bugs that are detected earlier during the development lifecycle are easier and cheaper to fix, whereas bugs that are found during production are difficult and expensive to address, and may have dire consequences. Type systems are…

Programming Languages · Computer Science 2021-10-12 Catarina Gamboa , Paulo Alexandre Santos , Christopher S. Timperley , Alcides Fonseca

Code review is a widely-used practice in software development companies to identify defects. Hence, code review has been included in many software engineering curricula at universities worldwide. However, teaching code review is still a…

Software Engineering · Computer Science 2021-02-04 Chun Yong Chong , Patanamon Thongtanunam , Chakkrit Tantithamthavorn

Modern systems operate in multiple contexts making variability a fundamental aspect of Configurable Software Systems (CSSs). Variability, implemented via pre-processor directives (e.g., #ifdef blocks) interleaved with other code and spread…

Software Engineering · Computer Science 2025-08-26 Karolina M. Milano , Wesley K. G. Assunção , Bruno B. P. Cafeo

Background: Code cloning - copying and reusing pieces of source code - is a common phenomenon in software development in practice. There have been several empirical studies on the effects of cloning, but there are contradictory results…

Software Engineering · Computer Science 2016-11-28 Stefan Wagner , Asim Abdulkhaleq , Kamer Kaya , Alexander Paar

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

Code metrics have been widely used to estimate software maintenance effort. Metrics have generally been used to guide developer effort to reduce or avoid future maintenance burdens. Size is the simplest and most widely deployed metric. The…

Software Engineering · Computer Science 2022-05-05 Shaiful Alam Chowdhury , Gias Uddin , Reid Holmes

Refactoring is a widespread practice that helps developers to improve the maintainability and readability of their code. However, there is a limited number of studies empirically investigating the actual motivations behind specific…

Software Engineering · Computer Science 2018-08-07 Danilo Silva , Nikolaos Tsantalis , Marco Tulio Valente

Third-party libraries are a central building block to develop software systems. However, outdated third-party libraries are commonly used, and developers are usually less aware of the potential risks. Therefore, a quantitative and holistic…

Software Engineering · Computer Science 2020-02-26 Ying Wang , Bihuan Chen , Kaifeng Huang , Bowen Shi , Congying Xu , Xin Peng , Yang Liu , Yijian Wu

Background. Refactoring is a critical task in software maintenance and is generally performed to enforce the best design and implementation practices or to cope with design defects. Several studies attempted to detect refactoring activities…

Software Engineering · Computer Science 2020-09-15 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Ali Ouni , Marouane Kessentini

Security issue reports are the primary means of informing development teams of security risks in projects, but little is known about current practices. We aim to understand the characteristics of these reports in open-source projects and…

Cryptography and Security · Computer Science 2021-12-21 Noah Bühlmann , Mohammad Ghafari