Cited by 121Software Engineering ResearchAdvanced Software Engineering MethodologiesSoftware System Performance and Reliability

On the Relevance of Code Anomalies for Identifying Architecture Degradation Symptoms

Macia, Isela, Arcoverde, Roberta, Garcia, Alessandro, Chavez, Christina, von Staa, Arndt·2012·2012 16th European Conference on Software Maintenance and Reengineering

Abstract

The longevity of evolving software systems largely depends on their resilience to architectural design degradation. It is often assumed that code anomalies are always key indicators of architecture degradation symptoms. The problem is that there is still limited knowledge about the circumstances under which code anomalies represent architectural problems. Without this knowledge, developers are not able to implement architecturally-relevant strategies for code refactoring. This paper presents an empirical study about the influence of code anomalies on architecture degradation symptoms. To this end, we studied the relationship between code anomalies and architecture problems in 6 software systems, which were intended to adhere different architectural decompositions. A total of 40 versions and 2056 code anomalies were analyzed. Our study revealed that 78% of all architecture problems in the programs were related to code anomalies. In particular, more than 33% of all architecture problems were unexpectedly induced by anomalous code elements in the systems' first version. We also found that the refactoring strategies, even when frequently applied in those systems, did not significantly contribute to remove architecturally-relevant code anomalies.

Integrity signals

Registry

Crossref · 10.1109/csmr.2012.35

Cites

34 of 34 references verified0 citation errors · 0 not checkable

Statistics

Recomputing p-values needs the paper’s full text.

Claims the paper makes

This paper’s full text isn’t openly available, so its claims and self-check weren’t run. The registry and citation checks still apply.

Claims other papers make about this one

Each is checked against this paper’s own text: does it say what the citing paper says it does?

  • Some code smell detection tools employ code smell metrics relevant to identification of architectural smells.

    “Some code smell detection tools also employ code smell metrics that are relevant to the identification of architectural smells [48, 58].”
  • Obsolete documentation and increasing complexity of software are expressed as top reasons that cause architecture erosion in interviews.

    “Obsolete documentation and increasing complexity of software are expressed as the top reasons that cause architecture erosion in our interviews (P1a, P3b, P3f, P4a-b), which have been also raised in the literature [25, 38, 58, 63].”
  • Inadequate tool support for module- and system-level refactoring.

    “Inadequate tool support for module- and system-level refactoring ( cogs ).”

Cites

Flagged first, then by citations

Cited by

Sorted by citations

Authors
Macia, I., Arcoverde, R., Garcia, A., Chavez, C., & von Staa, A.
Affiliations
Pontifícia Universidade Católica do Rio de Janeiro (BR)
Venue
2012 16th European Conference on Software Maintenance and Reengineering
Publisher
IEEE
Published
2012-03
Pages
277-286
ISSN
1534-5351 (ISSN-L)
OpenAlex
W2044556410
Cited by
121
References
34
Citations by year
2026: 1 · 2025: 7 · 2024: 6 · 2023: 7 · 2022: 6 · 2021: 6 · 2020: 15 · 2019: 12 · 2018: 10 · 2017: 13 · 2016: 9 · 2015: 7 · 2014: 9 · 2013: 8 · 2012: 5
FWCI
7.30
Type
conference paper
Language
en
Open access
closed
Locations
Euromicro Conference on Software Maintenance and Reengineering (CSMR) (publishedVersion)
Topics
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Research
  • Physical Sciences › Computer Science › Artificial Intelligence › Advanced Software Engineering Methodologies
  • Physical Sciences › Computer Science › Computer Networks and Communications › Software System Performance and Reliability
Keywords
software architecture, refactoring, architectural problems, software evolution, software resilience

About these checks

Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.

Statistics and arithmetic are recomputed, not judged.

Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.

What counts as a claim ›How we measure confidence ›How we check this ›

Are you an author, or do you see a problem with this page? Request a review