This book is for software professionals, or students who have knowledge and experience in software engineering. We anticipate three classes of reader:

  • Practicing software engineers who wish to understand both the technical basis of software architecture and the business and organizational forces that are acting on them.

  • Technical managers who wish to understand how software architecture can help them to supervise the construction of systems more effectively and improve their organizations.

  • Students of computer science or software engineering who might use this book as supplemental reading in a first or second software engineering course.

    Part Two: Creating an Architecture
    Part Four: Moving From One System to Many