English
Related papers

Related papers: Warnings: Violation Symptoms Indicating Architectu…

200 papers

Code smells as symptoms of poor design and implementation choices. Many times they are the result of so called technical debt. Our study showed that the interest in code smells research is increasing. However, most of the publications are…

Software Engineering · Computer Science 2018-02-19 Peter Kokol , Milan Zorman , Grega Zlahtic , Bojan Zlahtic

To avoid software vulnerabilities, organizations are shifting security to earlier stages of the software development, such as at code review time. In this paper, we aim to understand the developers' perspective on assessing software…

Software Engineering · Computer Science 2022-08-09 Larissa Braz , Alberto Bacchelli

Code smells are symptoms of poor design quality. Since code review is a process that also aims at improving code quality, we investigate whether and how code review influences the severity of code smells. In this study, we analyze more than…

Software Engineering · Computer Science 2019-12-24 Luca Pascarella , Davide Spadini , Fabio Palomba , Alberto Bacchelli

Software developers use issue trackers (e.g. Jira) to manage defects, bugs, tasks, change requests, etc. In this paper we explore (a) how architectural knowledge concepts (e.g. architectural component behavior, contextual constraints) are…

Software Engineering · Computer Science 2021-06-22 Mohamed Soliman , Matthias Galster , Paris Avgeriou

Requirements volatility is a major issue in software development, causing problems such as higher defect density, project delays and cost overruns. Software architecture that guides the overall vision of software product, is one of the…

Software Engineering · Computer Science 2019-04-18 Sandun Dasanayake , Sanja Aaramaa , Jouni Markkula , Markku Oivo

Software systems are not static, they have to undergo frequent changes to stay fit for purpose, and in the process of doing so, their complexity increases. It has been observed that this process often leads to the erosion of the systems…

Software Engineering · Computer Science 2018-07-18 David Baum , Jens Dietrich , Craig Anslow , Richard Müller

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…

Software Engineering · Computer Science 2026-05-26 Juntao Chen , Tingting Bi , Yanlin Wang , Patanamon Thongtanunam

Peer code review has been found to be effective in identifying security vulnerabilities. However, despite practicing mandatory code reviews, many Open Source Software (OSS) projects still encounter a large number of post-release security…

Software Engineering · Computer Science 2021-02-16 Rajshakhar Paul , Asif Kamal Turzo , Amiangshu Bosu

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

Context: Software systems are in continuous evolution through source code changes to fixing bugs, adding new functionalities and improving the internal architecture. All these practices are recorded in the version history, which can be…

Software Engineering · Computer Science 2020-01-17 Leandro Ungari Cayres , Bruno Santos de Lima , Rogério Eduardo Garcia

Breaking changes cause a lot of effort to both downstream and upstream developers: downstream developers need to adapt to breaking changes and upstream developers are responsible for identifying and documenting them. In the NPM ecosystem,…

Software Engineering · Computer Science 2024-10-15 Dezhen Kong , Jiakun Liu , Lingfeng Bao , David Lo

A variety of sources have noted that a substantial proportion of non trivial software systems fail due to unhindered architectural erosion. This design deterioration leads to low maintainability, poor testability and reduced development…

Software Engineering · Computer Science 2014-07-24 Frederik Schmidt , Stephen G. MacDonell , Andy M. Connor

Code samples play a pivotal role in open-source ecosystems (OSSECO), serving as lightweight artifacts that support knowledge transfer, onboarding, and framework adoption. Despite their instructional relevance, these samples are often…

Software Engineering · Computer Science 2025-07-21 Arthur Bueno , Bruno Cafeo , Maria Cagnin , Awdren Fontão

Software design debt aims to elucidate the rectification attempts of the present design flaws and studies the influence of those to the cost and time of the software. Design smells are a key cause of incurring design debt. Although the…

Software Engineering · Computer Science 2023-10-24 Asif Imran , Tevfik Kosar

Software systems endure many noteworthy changes throughout their life-cycle in order to follow the evolution of the problem domains. Generally, the software system architecture cannot follow the rapid evolution of a problem domain which…

Software Engineering · Computer Science 2011-11-30 Humaira Farid , Farooque Azam , M. Aqeel Iqbal

The structures for the expression of fault-tolerance provisions into the application software are the central topic of this paper. Structuring techniques answer the questions "How to incorporate fault-tolerance in the application layer of a…

Software Engineering · Computer Science 2015-04-14 Vincenzo De Florio , Chris Blondia

Architectural Decision Records (ADRs) play a central role in maintaining software architecture quality, yet many decision violations go unnoticed because projects lack both systematic documentation and automated detection mechanisms. Recent…

Software Engineering · Computer Science 2026-02-10 Ruoyu Su , Alexander Bakhtin , Noman Ahmad , Matteo Esposito , Valentina Lenarduzzi , Davide Taibi

Technical debt occurs in many different forms across software artifacts. One such form is connected to software architectures where debt emerges in the form of structural anti-patterns across architecture elements, namely, architecture…

Software Engineering · Computer Science 2023-04-03 Damian Andrew Tamburri , Francesca Arcelli Fontana , Riccardo Roveda , Valentina Lenarduzzi

Recent trends in the software development practices (Agile, DevOps, CI) have shortened the development life-cycle causing the need for efficient security-by-design approaches. In this context, software architectures are analyzed for…

Software Engineering · Computer Science 2019-06-06 Katja Tuma , Danial Hosseini , Kyriakos Malamas , Riccardo Scandariato

Following code style conventions in software projects is essential for maintaining overall code quality. Adhering to these conventions improves maintainability, understandability, and extensibility. Additionally, following best practices…

Software Engineering · Computer Science 2026-01-16 Alvari Kupari , Nasser Giacaman , Valerio Terragni