Software architecture is an important and wide area of software engineering. It is concerned mainly with the structure of software systems and with their technical aspects.

The Making of Software focuses on the following facets of architecture:

  • The process of architecture design
  • Architecture documentation
  • The relations of architecture to other software engineering activities such as requirements and testing
  • Architecture of software product lines