The DOI matches its Crossref record; 50 of the 50 references it cites were found in a registry or an index.
The golden age of software architecture
Abstract
Since the late 1980s, software architecture has emerged as the principled understanding of the large-scale structures of software systems. From its roots in qualitative descriptions of empirically observed useful system organizations, software architecture has matured to encompass a broad set of notations, tools, and analysis techniques. Whereas initially the research area interpreted software practice, it now offers concrete guidance for complex software design and development. It has made the transition from basic research to an essential element of software system design and construction. This retrospective examines software architecture's growth in the context of a technology maturation model, matching its significant accomplishments to the model's stages to gain perspective on where the field stands today. This trajectory has taken architecture to its golden age.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
Software engineering: A practitioner's approach
(1983) · Advances in Engineering Software (1978) · doi:10.1016/0141-1195(83)90118-3 · Cited by 8,234
Software Architecture in Practice
Bass, L., Clements, P., & Kazman, R. (1997) · Cited by 4,995
Self-citationOn the criteria to be used in decomposing systems into modules
Parnas, D. L. (1972) · Communications of the ACM · doi:10.1145/361598.361623 · Cited by 4,704
Component software beyond object oriented programming
Szyperski, C., Gruntz, D., & Murer, S. (2002) · Cited by 4,576
(1996) · Cited by 2,981
Software architecture: perspectives on an emerging discipline
Shaw, M., & Garlan, D. (1996) · CERN Document Server (European Organization for Nuclear Research) · Cited by 2,910
Self-citationThe 4+1 View Model of architecture
Kruchten, P. B. (1995) · IEEE Software · doi:10.1109/52.469759 · Cited by 2,158
Foundations for the study of software architecture
Perry, D. E., & Wolf, A. L. (1992) · ACM SIGSOFT Software Engineering Notes · doi:10.1145/141874.141884 · Cited by 2,023
A classification and comparison framework for software architecture description languages
Medvidovic, N., & Taylor, R. N. (2000) · IEEE Transactions on Software Engineering · doi:10.1109/32.825767 · Cited by 1,987
FFTW: an adaptive software architecture for the FFT
Frigo, M., & Johnson, S. G. (2002) · Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP '98 (Cat. No.98CH36181) · doi:10.1109/icassp.1998.681704 · Cited by 1,801
Castro, B. F. (1997) · Computación y Sistemas · Cited by 1,504
Documenting software architectures: views and beyond
Clements, P., Garlan, D., Little, R., Nord, R., & Stafford, J. (2003) · 25th International Conference on Software Engineering, 2003. Proceedings. · doi:10.1109/icse.2003.1201264 · Cited by 1,430
Self-citationIntroduction to Software Architecture
(2009) · Advanced Topics in Science and Technology in China · doi:10.1007/978-3-540-74343-9_1 · Cited by 1,099
The structure of the “THE”-multiprogramming system
Dijkstra, E. W. (1968) · Communications of the ACM · doi:10.1145/363095.363143 · Cited by 1,094
Evaluating Software Architectures: Methods and Case Studies
Clements, P., Kazman, R., & Klein, M. (2001) · Medical Entomology and Zoology · Cited by 850
Self-citationAbstractions for software architecture and tools to support them
Shaw, M., DeLine, R., Klein, D. V., Ross, T. L., Young, D. M., & Zelesnik, G. (1995) · IEEE Transactions on Software Engineering · doi:10.1109/32.385970 · Cited by 813
Self-citationSpecification and analysis of system architecture using Rapide
Luckham, D. C., Kenney, J. J., Augustin, L. M., Vera, J., Bryan, D., & Mann, W. (1995) · IEEE Transactions on Software Engineering · doi:10.1109/32.385971 · Cited by 766
Specifying distributed software architectures
Magee, J., Dulay, N., Eisenbach, S., & Kramer, J. (1995) · Lecture Notes in Computer Science · doi:10.1007/3-540-60406-5_12 · Cited by 764
Acme: an architecture description interchange language
Garlan, D., Monroe, R., & Wile, D. (2010) · CASCON First Decade High Impact Papers on - CASCON '10 · doi:10.1145/1925805.1925814 · Cited by 652
Hofmeister, C. C., Nord, R. L., & Soni, D. A. (2009) · CERN Document Server (European Organization for Nuclear Research) · Cited by 638
AN INTRODUCTION TO SOFTWARE ARCHITECTURE
GARLAN, D., & SHAW, M. (1993) · Series on Software Engineering and Knowledge Engineering · doi:10.1142/9789812798039_0001 · Cited by 621
Self-citationDynamic structure in software architectures
Magee, J., & Kramer, J. (1996) · Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering · doi:10.1145/239098.239104 · Cited by 536
A Formal Approach to Software Architectures
Allen, R. J., & Garlan, D. (1992) · World Computer Congress on Algorithms, Software, Architecture · Cited by 531
SAAM: a method for analyzing the properties of software architectures
Kazman, R., Bass, L., Abowd, G. D., & Webb, M. (1994) · doi:10.5555/257734.257746 · Cited by 482
NPSNET:A Network Software Architecture for LargeScale Virtual Environments
Macedonia, M. R., Zyda, M. J., Pratt, D. R., Barham, P. T., & Zeswitz, S. (1994) · Presence: Teleoperators and Virtual Environments · doi:10.1162/pres.1994.3.4.265 · Cited by 457
Towards a taxonomy of software connectors
Mehta, N. R., Medvidovic, N., & Phadke, S. (2000) · Proceedings of the 22nd international conference on Software engineering - ICSE '00 · doi:10.1145/337180.337201 · Cited by 397
The Modular Structure of Complex Systems
Parnas, D. L., Clements, P. C., & Weiss, D. M. (1985) · IEEE Transactions on Software Engineering · doi:10.1109/tse.1985.232209 · Cited by 366
Self-citationFormalizing architectural connection
Allen, R. J., & Garlan, D. (1994) · KiltHub Repository · doi:10.5555/257734.257745 · Cited by 364
Introduction to the Special Issue on Software Architecture
Garlan, D., & Perry, D. E. (1995) · IEEE Transactions on Software Engineering · doi:10.5555/205313.205314 · Cited by 332
Exploiting style in architectural design environments
Garlan, D., Allen, R., & Ockerbloom, J. (1994) · Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering · doi:10.1145/193173.195404 · Cited by 322
Locke, C. D. (1992) · Real-Time Systems · doi:10.1007/bf00365463 · Cited by 274
Nii, H. P. (1986) · Defense Technical Information Center (DTIC) · Cited by 271
Inverardi, P., & Wolf, A. L. (1995) · IEEE Transactions on Software Engineering · doi:10.1109/32.385973 · Cited by 245
SAAM: a method for analyzing the properties of software architectures
Kazman, R., Bass, L., Abowd, G., & Webb, M. (2002) · Proceedings of 16th International Conference on Software Engineering · doi:10.1109/icse.1994.296768 · Cited by 245
Paradigms for process interaction in distributed programs
Andrews, G. R. (1991) · ACM Computing Surveys · doi:10.1145/103162.103164 · Cited by 222
A framework for classifying and comparing architecture description languages
Medvidović, N., & Taylor, R. N. (1997) · doi:10.1145/267895.267903 · Cited by 220
A field guide to boxology: preliminary classification of architectural styles for software systems
Shaw, M., & Clements, P. (2002) · Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97) · doi:10.1109/cmpsac.1997.624691 · Cited by 206
Self-citationACME: An Architecture Description Interchange Language
Garlan, D., Monroe, R. T., & Wile, D. S. (2018) · Figshare · doi:10.1184/r1/6703466 · Cited by 193
Using object-oriented typing to support architectural design in the C2 style
Medvidovic, N., Oreizy, P., Robbins, J. E., & Taylor, R. N. (1996) · Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering · doi:10.1145/239098.239106 · Cited by 190
Using style to understand descriptions of software architecture
Abowd, G., Allen, R., & Garlan, D. (1993) · ACM SIGSOFT Software Engineering Notes · doi:10.1145/167049.167055 · Cited by 183
Experience with performing architecture tradeoff analysis
Kazman, R., Barbacci, M., Klein, M., Carrière, S. J., & Woods, S. G. (1999) · Proceedings of the 21st international conference on Software engineering · doi:10.1145/302405.302452 · Cited by 178
Deriving Architectural Tactics: A Step Toward Methodical Architectural Design
Bachmann, F., Bass, L., & Klein, M. (2003) · doi:10.21236/ada413701 · Cited by 123
The American Heritage dictionary of idioms
(2013) · Choice Reviews Online · doi:10.5860/choice.50-6485 · Cited by 107
The Domain-Specific Software Architecture Program
Mettala, E., & Graham, M. H. (1992) · Defense Technical Information Center (DTIC) · doi:10.21236/ada257225 · Cited by 91
Formal modeling and analysis of the HLA component integration standard
Allen, R. J., Garlan, D., & Ivers, J. (1998) · ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) · doi:10.1145/288195.288251 · Cited by 62
Toward higher-level abstractions for software systems
Shaw, M. (1990) · Data & Knowledge Engineering · doi:10.1016/0169-023x(90)90008-2 · Cited by 58
Self-citationManipulating recovered software architecture views
Yeh, A., Harris, D. R., & Chase, M. (1997) · ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) · doi:10.1145/253228.253265 · Cited by 52
The coming-of-age of software architecture research
Shaw, M. (2005) · ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) · doi:10.1109/icse.2001.919147 · Cited by 46
Self-citationThe Golden Age of Software Architecture: A Comprehensive Survey
Shaw, M., & Clements, P. (2006) · Defense Technical Information Center (DTIC) · doi:10.21236/ada494322 · Cited by 31
Self-citation(1986) · doi:10.1609/aimag.v7i2.537
Cited by
Controlling software architecture erosion: A survey
de Silva, L., & Balasubramaniam, D. (2012) · Journal of Systems and Software · doi:10.1016/j.jss.2011.07.036 · Cited by 184
10 years of software architecture knowledge management: Practice and future
Capilla, R., Jansen, A., Tang, A., Avgeriou, P., & Babar, M. A. (2016) · Journal of Systems and Software · doi:10.1016/j.jss.2015.08.054 · Cited by 160
Application of knowledge-based approaches in software architecture: A systematic mapping study
Li, Z., Liang, P., & Avgeriou, P. (2013) · Information and Software Technology · doi:10.1016/j.infsof.2012.11.005 · Cited by 74
Understanding software architecture erosion: A systematic mapping study
Li, R., Liang, P., Soliman, M., & Avgeriou, P. (2022) · Journal of Software: Evolution and Process · doi:10.1002/smr.2423 · Cited by 45
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
“The research field of software architecture has achieved tremendous progress since its inception in the 1980s [85].”
Background
Metadata
- Authors
- Shaw, M., & Clements, P.
- Venue
- IEEE Software
- Published
- 2006-03
- Volume
- 23
- Issue
- 2
- Pages
- 31-39
- ISSN
- 0740-7459 (ISSN-L)
- 1937-4194
- OpenAlex
- W2006116191
- Cited by
- 271
- References
- 50
- FWCI
- 31.00
- Type
- journal article
- Language
- en
- Open access
- closed
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
Data sources
Bibliographic data: Semantic Scholar, OpenAlex, Crossref.
Contains information from the Semantic Scholar Academic Graph Datasets, made available under the ODC Attribution License (ODC-BY 1.0).
Semantic Scholar’s data is described in: Kinney, R., et al. (2023). The Semantic Scholar Open Data Platform. arXiv:2301.10140.