2021
DOI: 10.1109/tse.2019.2910856
|View full text |Cite
|
Sign up to set email alerts
|

Architecture Anti-Patterns: Automatically Detectable Violations of Design Principles

Abstract: In large-scale software systems, error-prone or change-prone files rarely stand alone. They are typically architecturally connected and their connections usually exhibit architecture problems causing the propagation of error-proneness or change-proneness. In this paper, we propose and empirically validate a suite of architecture anti-patterns that occur in all large-scale software systems and are involved in high maintenance costs. We define these architecture anti-patterns based on fundamental design principl… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
24
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
4
3
1

Relationship

3
5

Authors

Journals

citations
Cited by 42 publications
(24 citation statements)
references
References 75 publications
0
24
0
Order By: Relevance
“…Architectural bad smells and anti-patterns. The literature on architectural bad smells [9,19] and anti-patterns [5,13,14] collides with our work for what concerns the ambition to find and remove architectural issues that negatively impact system life-cycle properties (extensibility, maintainability, testability, etc.). In contrast, our work investigates security design flaws, that is architectural design decisions that negatively impact the system security.…”
Section: Related Workmentioning
confidence: 90%
“…Architectural bad smells and anti-patterns. The literature on architectural bad smells [9,19] and anti-patterns [5,13,14] collides with our work for what concerns the ambition to find and remove architectural issues that negatively impact system life-cycle properties (extensibility, maintainability, testability, etc.). In contrast, our work investigates security design flaws, that is architectural design decisions that negatively impact the system security.…”
Section: Related Workmentioning
confidence: 90%
“…We also collected size and complexity data from Designite. DV8: DV8 performs the calculation of decoupling level [17] and propagation cost [18], the identification of architectural roots [19], and the identification of design anti-patterns [16]. Our study only considers the six anti-patterns: 1) Clique-files forming a strongly connected component, 2) Unhealthy Inheritance-violations of the Liskov Substitution Principle [20], 3) Package Cycle-two folders mutually depend on each other, 4) Unstable Interface-a file with many dependents that changes often with all of them, 5) Crossing-a file with a high fanin and fan-out that changes often with its dependents and dependees, and 6) Modularity Violation-files that change together frequently but have no structural relationship.…”
Section: Sonarqube (Sq)mentioning
confidence: 99%
“…For example, Designite [5] defines smells at architectural, design, and code levels, each based on different sets of rules. DV8 [10], [16] defines a suite of anti-patterns that are claimed to be design debts. Structure101 [4] considers tangles and excessive complexity as the measures of technical debt.…”
Section: Introductionmentioning
confidence: 99%
“…The identification of problematic areas in design-level representations of a system with architectural smells [25]- [28] or anti-patterns [29], [30] has previously been used to identify software engineering issues, such as maintainability, and to assist in refactoring. For example, Garcia et al [25] introduce a catalog of architectural bad smells specified with UML diagrams.…”
Section: Related Workmentioning
confidence: 99%
“…Similarly, Bouhours et al [27] contribute with a catalog of 23 "spoiled patterns" or, architectural design antipatterns. Yet, the existing literature about architectural design flaws [25], [27], [30]- [32] lacks a systematized knowledge base about security-relevant architectural design flaws supporting automated assessment.…”
Section: Related Workmentioning
confidence: 99%