Software Architecture

Program-Transformation.Org: The Program Transformation Wiki
A survey of software architecture is provided by David Garlan, in SoftwareArchitectureARoadMap.

Garlan loosely defines architecture as a software system's gross organization as a collection of interacting components. He recognizes six aspects of software development where architecture can play an important role:


There is a whole lot to say about SoftwareArchitectureDefinitions!


Some of the text books on software architecture include (by year):

  • W. Pree. Design Patterns for Object-Oriented Software Development. Addison-Wesley, 1995.
  • M. Shaw and D. Garlan. Software Architecture: Perspectives on an Engineering Discipline. Prentice-Hall, 1996.
  • F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, and M. Stal. Pattern-Oriented Software Architecture. Wiley, 1996.
  • L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison-Wesley, 1998.
  • C. Hofmeister, R. Nord, and D. Soni. Applied Software Architecture. Addison-Wesley, 2000.
  • J. Bosch. Design and Use of Software Architectures. Addison-Welsey, 2000.
  • M. Jazayeri, A. Ran, and P. van der Linden. Software Architecture for Product Families: Putting Research into Practice. Addison-Wesley, 2000.


Resources include:


Architecture Description Languages:


Selected papers:


Whether architecture is an adequate metaphor in software development is an issue of debate, which also requires a good understanding of the nature of traditional architecture.


See also


CategoryArchitecture | CategoryEntryPoint | Contributions by ArieVanDeursen