An Introduction to Software Architecture

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 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.

PDF [2252 KB]

Authors

David Garlan

Mary Shaw

This report is related to the following area(s) of work:

Software Architecture

Technical Report
CMU/SEI-94-TR-021
January 1994

Cite This Report

SEI:

Garlan, David; & Shaw, Mary. An Introduction to Software Architecture (CMU/SEI-94-TR-021 ). Software Engineering Institute, Carnegie Mellon University, 1994. http://www.sei.cmu.edu/library/abstracts/reports/94tr021.cfm

IEEE:

D. Garlan, and M. Shaw, "An Introduction to Software Architecture," Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, Technical Report CMU/SEI-94-TR-021 , 1994. http://www.sei.cmu.edu/library/abstracts/reports/94tr021.cfm

APA:

Garlan, D., & Shaw, M. (1994). An Introduction to Software Architecture (CMU/SEI-94-TR-021 ). Retrieved May 19, 2013, from the Software Engineering Institute, Carnegie Mellon University website: http://www.sei.cmu.edu/library/abstracts/reports/94tr021.cfm

CHI:

Garlan, David, and Mary Shaw. An Introduction to Software Architecture (CMU/SEI-94-TR-021 ). Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 1994. http://www.sei.cmu.edu/library/abstracts/reports/94tr021.cfm

MLA:

Garlan, D., & Shaw, M. 1994. An Introduction to Software Architecture (Technical Report CMU/SEI-94-TR-021 ). Pittsburgh: Software Engineering Institute, Carnegie Mellon University. http://www.sei.cmu.edu/library/abstracts/reports/94tr021.cfm

Find Us Here

Find us on Youtube  Find us on LinkedIn  Find us on twitter  Find us on Facebook

Share This Page

Share on Facebook  Send to your Twitter page  Save to del.ico.us  Save to LinkedIn  Digg this  Stumble this page.  Add to Technorati favorites  Save this page on your Google Home Page 

For more information

Contact Us

info@sei.cmu.edu

412-268-5800

Help us improve

Visitor feedback helps us continually improve our site.

Please tell us what you
think with this short
(< 5 minute) survey.