The book's definition of software architecture is sufficiently general in purpose to be compatible with well-known architecture approaches, such as the Zachman framework and open distributed processing. Unfortunately, these approaches are not covered because they are considered too advanced for the book's target audience. The book defines architectural concepts by establishing several formative taxonomies, including system qualities, architecture styles, and unit operations. System qualities are overall characteristics of software systems that are affected by architecture. Architecture styles are categories of architectures that share similar components and general patterns of interchange.
Unit operations are applications of fundamental architecture principles.
One of the more advanced topics covered is the Software Architecture Analysis Method. This is a technique for evaluating and comparing architecture designs. The technique includes identification of architectural change cases, followed by an assessment of their system impacts. The results are compiled into a simple tabular form and scored. Both books have a nonprescriptive, nonjudgmental philosophy about software architecture.