Cited by 34Software Engineering ResearchAdvanced Software Engineering MethodologiesModel-Driven Software Engineering Techniques

The DOI matches its Crossref record.

On the Evolutionary Nature of Architectural Violations

Brunet, Joao, Bittencourt, Roberto Almeida, Serey, Dalton, Figueiredo, Jorge·2012·2012 19th Working Conference on Reverse Engineering

Abstract

Architectural conformance checking is the process of verifying whether a given software implementation conforms to the rules and decisions in an architectural model. Different conformance checking techniques have been proposed, and both academic and commercial tools use them for architecture evaluation. In this paper, we present an exploratory and longitudinal study on architectural violations of software systems. As an exploratory study, our aim has been to reveal patterns, raise hypotheses and form an initial body of knowledge on architectural violations, rather than test specific hypotheses. We have studied the evolution of four widely known open source systems for which we have trusted architectural models. The study encompasses the analysis of 19 bi-weekly versions of each system. In total, we analyzed more than 3,000 violations. From our observations, we have derived a series of facts. Four of them, deserve attention: 1) development teams of all studied projects seem to be aware of the presence of architectural violations in the code and all of them do perform perfective maintenance aimed at eliminating such violations, 2) despite all effort, the number of architectural violations, in the long term, is continuously growing, 3) in all studied systems there is a critical core, i.e., just a few design entities are responsible for the majority of violations, and 4) some violations seem to be "respawning", i.e., they are eliminated, but are likely to be back in future versions of the system.

Overview

Integrity signals

Registry

Crossref · 10.1109/wcre.2012.35

Cites

Statistics

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

Verification

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?

Citations

Cites

No references could be resolved yet.

Research works printed but not linked: 28

  1. brooks, 1977, The Mythical Man-Month
  2. 10.1016/j.jss.2010.06.043 · DOI
  3. hunt, 2000, The Pragmatic Programmer From Journeyman to Master
  4. bittencourt, 2012, Enabling Static Architecture Conformance Checking of Evolving Software
  5. 10.1049/iet-sen.2009.0083 · DOI
  6. 10.1109/ICPC.2009.5090042 · DOI
  7. 10.1109/2.607045 · DOI
  8. 10.1109/CSMR.2006.53 · DOI
  9. 10.1007/978-3-540-45070-2_13 · DOI
  10. lehmann, 1998, Laws of software evolution revisited, Software Process Technology
  11. 10.1016/0306-4573(84)90037-2 · DOI
  12. 10.1109/ICSM.2000.883030 · DOI
  13. 10.1109/ICSM.1998.738510 · DOI
  14. 10.1109/TSE.2002.1027802 · DOI
  15. 10.1109/ICSM.1997.624242 · DOI
  16. 10.1002/smr.313 · DOI
  17. 10.1109/CSMR.2012.34 · DOI
  18. 10.1007/s10664-011-9164-x · DOI
  19. 10.1109/32.895984 · DOI
  20. perry, 1992, Foundations for the study of software architecture, ACM SIGSOFT Software Engineering Notes, 17, 40, 10.1145/141874.141884 · DOI · Paper page
  21. 10.1002/spe.931 · DOI
  22. 10.1016/S0164-1212(01)00152-2 · DOI
  23. brunet, 2011, Structural conformance checking with design tests: An evaluation of usability and scalability, Proceedings of the IEEE International Conference on Software Maintenance
  24. jonathan aldrich, 2002, ArchJava: Connecting Software Architecture to Implementation, Proceedings of the 24th International Conference on Software Engineering ICSE 2002, 187, 10.1109/ICSE.2002.1007967 · DOI
  25. murphy, 1995, Software reflexion models: Bridging the gap between source and high-level models, ACM SIGSOFT Software Engineering Notes, 10.1145/222132.222136 · DOI
  26. 10.1002/spe.999 · DOI
  27. 10.1109/SEW.2002.1199475 · DOI
  28. 10.1109/ICSE.1996.493433 · DOI

Cited by

  • Software Architecture in Practice: Challenges and Opportunities

    Wan, Z., Zhang, Y., Xia, X., Jiang, Y., & Lo, D. (2023) · Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering · doi:10.1145/3611643.3616367 · Cited by 30

    “As our participants reported, some organizations use unit testing, stress testing, and performance testing frameworks, to continuously monitor the quality of software systems (P2a, P3a, P3c, P3e-f, P4b-d, P5a, P7a, P11a, P12a, P14a, P19b).”
    Background

Metadata

Authors
Brunet, J., Bittencourt, R. A., Serey, D., & Figueiredo, J.
Affiliations
  • Universidade Estadual de Feira de Santana (BR)
  • Universidade Federal de Campina Grande (BR)
Venue
2012 19th Working Conference on Reverse Engineering
Publisher
IEEE
Published
2012-10
Pages
257-266
ISSN
1095-1350 (ISSN-L)
OpenAlex
W2105618101
Cited by
34
References
0
Citations by year
2025: 2 · 2024: 3 · 2023: 4 · 2022: 2 · 2021: 8 · 2020: 2 · 2019: 2 · 2018: 3 · 2017: 1 · 2016: 2 · 2015: 1 · 2014: 3 · 2013: 1
FWCI
1.26
Type
conference paper
Language
en
Open access
closed
Locations
Working Conference on Reverse Engineering (WCRE) (publishedVersion)
Topics
  • Physical Sciences › Computer Science › Information Systems › Software Engineering Research
  • Physical Sciences › Computer Science › Software › Advanced Software Engineering Methodologies
  • Physical Sciences › Computer Science › Software › Model-Driven Software Engineering Techniques
Keywords
software architecture, software evolution, open source software, perfective maintenance, software architecture models

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