Preface

Software architecture is the centerpiece of modern system development. The goal of architecture-centric development is the effective, efficient, competitive development of software products. The activities of development are anchored in the architecture. The goal of this text is to provide both student and professional a comprehensive treatment of architecture-centric development, instructing how to develop products and serving as a reference for the panoply of techniques, modeling notations, standards, and methods comprising the approach.

The text is intended for upper-division undergraduate and graduate courses in software architecture, software design, component-based software engineering, and distributed systems; the text may also be used in introductory as well as advanced software engineering courses. The targeted courses can be of different lengths, from a single ten-week quarter, to a fifteen-week semester, to a two-semester sequence. Both the breadth and depth of topics covered will vary depending on the exact nature of the course. Specific recommendations for instructors are provided below.

With such an ambitious goal, the text is extensive and may be approached in different ways. In this preface we guide the reader in the use of the book. Hence we briefly present here:

  • The general view of software architecture taken by the book.

  • The scope of the book.

  • The intended audiences.

  • Our assumptions regarding the technical maturity/background of the professionals and students ...

Get Software Architecture: Foundations, Theory, and Practice now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.