Publications

An Introduction to Software Architecture

David Garlan and Mary Shaw
In V. Ambriola and G. Tortora (ed.), Advances in Software Engineering and Knowledge Engineering, Series on Software Engineering and Knowledge Engineering, Vol 2, World Scientific Publishing Company, Singapore, pp. 1-39, 1993. Also available as: Carnegie Mellon University Technical Report CMU-CS-94-166, January 1994. Reprinted in "CMIS 460: Software Design and Development Faculty Course Guide", University of Maryland, Office of Instructional Development, Summer 1995.

KeyWords:software engineering,software architecture,software design,architectural styles

Online Links:      BIBTEX Citation       Postscript       PDF

Abstract:

As the size of software systems increases, the algorithms and data structures of the computation no longer constitute the major design problems. When systems are constructed from many components, the organization of the overall system -- the software architecture -- presents a new set of design problems. This level of design has been addressed in a number of ways including informal diagrams and descriptive terms, module interconnection languages, templates and frameworks for systems that serve the needs of specific domains, and formal models of component integration mechanisms.

In this paper we provide an introduction to the emerging field of software architecture. We begin by considering a number of common architectural styles upon which many systems are currently based and show how different styles can be combined in a single design. Then we present six case studies to illustrate how architectural representations can improve our understanding of complex software systems. Finally, we survey some of the outstanding problems in the field, and consider a few of the promising research directions.



Preferred citation: David Garlan and Mary Shaw. An Introduction to Software Architecture, In V. Ambriola and G. Tortora (ed.), Advances in Software Engineering and Knowledge Engineering, Series on Software Engineering and Knowledge Engineering, Vol 2, World Scientific Publishing Company, Singapore, pp. 1-39, 1993. Also available as: : Carnegie Mellon University Technical Report CMU-CS-94-166, January 1994. Reprinted in "CMIS 460: Software Design and Development Faculty Course Guide", University of Maryland, Office of Instructional Development, Summer 1995.

Entry last Updated 2006-07-31.

You are visiting Mary Shaw's Bibliographic pages (Copyright 2002, 2005,2007 by Roy Weil and others. All rights reserved ) It contains the database of papers published by her and others at Carnegie Mellon Computer Science Department. The software used to index and search these papers is Marian - the on-line-braian, available at Marian's Home site. Comments and suggesions are welcome