English
Related papers

Related papers: The 'as Code' Activities: Development Anti-pattern…

200 papers

Context: Several studies investigated the impact of anti-patterns (i.e., "poor" solutions to recurring design problems) during maintenance activities and reported that anti-patterns significantly affect the developers' effort required to…

Interfaces are recognized as an important mechanism to define contracts governing interactions between semi-independent software modules. Well-designed interfaces significantly reduce software complexity and ease maintainability by…

Software Engineering · Computer Science 2013-10-01 Hani Abdeen , Osama Shata , Abdelkarim Erradi

Microarchitectural attacks exploit the abstraction gap between the Instruction Set Architecture (ISA) and how instructions are actually executed by processors to compromise the confidentiality and integrity of a system. To secure systems…

Cryptography and Security · Computer Science 2020-12-29 Marco Guarnieri , Marco Patrignani

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…

Software Engineering · Computer Science 2021-10-19 Rodrigo Laigner , Diogo Mendonça , Alessandro Garcia , Marcos Kalinowski

Assessing code comment quality is known to be a difficult problem. A number of coding style guidelines have been created with the aim to encourage writing of informative, readable, and consistent comments. However, it is not clear from the…

Software Engineering · Computer Science 2023-04-26 Pooja Rani , Suada Abukar , Nataliia Stulova , Alexandre Bergel , Oscar Nierstrasz

Mini-app is an emerging form of mobile application that combines web technology with native capabilities. Its features, e.g., no need to download and no installation, have made it popular rapidly. However, privacy issues that violate the…

Cryptography and Security · Computer Science 2023-02-28 Yin Wang , Ming Fan , Junfeng Liu , Junjie Tao , Wuxia Jin , Qi Xiong , Yuhao Liu , Qinghua Zheng , Ting Liu

Dynamic Information Flow Tracking (DIFT) is a technique to track potential security vulnerabilities in software and hardware systems at run time. The last fifteen years have seen a lot of research work on DIFT, including both hardware-based…

Cryptography and Security · Computer Science 2019-11-14 Ali Jahanshahi

Higher education courses teaching about agile software development (ASD) have increased in commonality as the ideas behind the Agile Manifesto became more commonplace in the industry. However, a lot of the literature on how ASD is applied…

Software Engineering · Computer Science 2025-10-06 Daniel Pinho , Petr Pícha , Filipe Correia , Přemek Brada

Continuous Integration and Continuous Deployment (CI/CD) pipeline automates software development to speed up and enhance the efficiency of engineering software. These workflows consist of various jobs, such as code validation and testing,…

Software Engineering · Computer Science 2025-04-17 Simin Sun , David Friberg , Miroslaw Staron

While AI shows promise for enhancing the efficiency of qualitative analysis, the unique human-AI interaction resulting from varied coding strategies makes it challenging to develop a trustworthy AI-assisted qualitative coding system (AIQCs)…

Human-Computer Interaction · Computer Science 2023-09-26 Jie Gao , Junming Cao , ShunYi Yeo , Kenny Tsu Wei Choo , Zheng Zhang , Toby Jia-Jun Li , Shengdong Zhao , Simon Tangi Perrault

Context: Software start-ups are emerging as suppliers of innovation and software-intensive products. However, traditional software engineering practices are not evaluated in the context, nor adopted to goals and challenges of start-ups. As…

Recent studies have largely investigated the detection of class design anomalies. They proposed a large set of metrics that help in detecting those anomalies and in predicting the quality of class design. While those studies and the…

Software Engineering · Computer Science 2013-02-13 Hani Abdeen , Osama Shata

Smaller software companies, such as start-ups do not often follow an explicit process, but rather develop in a more or less unstructured way. Especially when they grow or customer involvement increases. This development without any…

Software Engineering · Computer Science 2018-09-07 Jakob Diebold , Philipp Diebold , Arthur Vetter

Modern software systems are increasingly developed within rapid continuous integration and deployment (CI/CD) pipelines, where ensuring security prior to release presents significant technical and organizational challenges. Traditional…

Software Engineering · Computer Science 2026-05-01 Michael Wienczkowski

Managing technical debt (TD) is critical to ensure the sustainability of long-term software projects. However, the time and cost involved in technical debt management (TDM) often discourage practitioners from performing this activity…

Software Engineering · Computer Science 2026-04-14 João Paulo Biazotto , Daniel Feitosa , Paris Avgeriou , Elisa Yumi Nakagawa

Alerts are crucial for requesting prompt human intervention upon cloud anomalies. The quality of alerts significantly affects the cloud reliability and the cloud provider's business revenue. In practice, we observe on-call engineers being…

Software Engineering · Computer Science 2022-04-26 Tianyi Yang , Jiacheng Shen , Yuxin Su , Xiaoxue Ren , Yongqiang Yang , Michael R. Lyu

Large language models (LLMs) for code generation are becoming integral to modern software development, but their real-world prevalence and security impact remain poorly understood. We present the first large-scale empirical study of…

Software Engineering · Computer Science 2025-12-23 Bin Wang , Wenjie Yu , Yilu Zhong , Hao Yu , Keke Lian , Chaohua Lu , Hongfang Zheng , Dong Zhang , Hui Li

Despite huge software engineering efforts and programming language support, resource and memory leaks are still a troublesome issue, even in memory-managed languages such as Java. Understanding the properties of leak-inducing defects, how…

Software Engineering · Computer Science 2019-12-17 Mohammadreza Ghanavati , Diego Costa , Janos Seboek , David Lo , Artur Andrzejak

Architectural decay imposes real costs in terms of developer effort, system correctness, and performance. Over time, those problems are likely to be revealed as explicit implementation issues (defects, feature changes, etc.). Recent…

Software Engineering · Computer Science 2021-02-22 Duc Minh Le , Suhrid Karthik , Marcelo Schmitt Laser , Nenad Medvidovic

While technical debt grows in absolute numbers as software systems evolve over time, the density of technical debt (technical debt divided by lines of code) is reduced in some cases. This can be explained by either the application of…

Software Engineering · Computer Science 2020-10-20 George Digkas , Alexander Chatzigeorgiou , Apostolos Ampatzoglou , Paris Avgeriou