© 2016

Pragmatic Evaluation of Software Architectures


Table of contents

  1. Front Matter
    Pages i-xxiii
  2. What Is the Point of Architecture Evaluation?

    1. Front Matter
      Pages 1-1
    2. Jens Knodel, Matthias Naab
      Pages 3-10
    3. Jens Knodel, Matthias Naab
      Pages 11-20
    4. Jens Knodel, Matthias Naab
      Pages 21-34
    5. Jens Knodel, Matthias Naab
      Pages 35-45
  3. How to Evaluate Architectures Effectively and Efficiently?

    1. Front Matter
      Pages 47-47
    2. Jens Knodel, Matthias Naab
      Pages 49-58
    3. Jens Knodel, Matthias Naab
      Pages 59-72
    4. Jens Knodel, Matthias Naab
      Pages 73-82
    5. Jens Knodel, Matthias Naab
      Pages 83-94
    6. Jens Knodel, Matthias Naab
      Pages 95-104
  4. How to Apply Architecture Evaluation in Practice?

    1. Front Matter
      Pages 105-105
    2. Jens Knodel, Matthias Naab
      Pages 107-125
    3. Jens Knodel, Matthias Naab
      Pages 127-136
    4. Jens Knodel, Matthias Naab
      Pages 137-140
    5. Jens Knodel, Matthias Naab
      Pages 141-146
    6. Jens Knodel, Matthias Naab
      Pages 147-148
  5. Back Matter
    Pages 149-154

About this book


Thorough and continuous architecting is the key to overall success in software engineering, and architecture evaluation is a crucial part of it. This book presents a pragmatic architecture evaluation approach and insights gained from its application in more than 75 projects with industrial customers in the past decade. It presents context factors, empirical data, and example cases, as well as lessons learned on mitigating the risk of change through architecture evaluation.

By providing comprehensive answers to more than 100 typical questions and discussing more than 60 frequent mistakes and lessons learned, the book allows readers to not only learn how to conduct architecture evaluations and interpret its results, but also to become aware of risks such as false conclusions, manipulating data, and unsound lines of argument. It equips readers to become confident in assessing quantitative measurement results and recognize when it is better to rely on qualitative expertise.

The target readership includes both practitioners and researchers. By demonstrating its impact and providing clear guidelines, data, and examples, it encourages practitioners to conduct architecture evaluations. At the same time, it offers researchers insights into industrial architecture evaluations, which serve as the basis for guiding research in this area and will inspire future research directions.


Software Architectures Software Engineering Evaluation Empirical Software Validation Software Maintenance

Authors and affiliations

  1. 1.Fraunhofer IESEKaiserslauternGermany
  2. 2.Fraunhofer IESEKaiserslauternGermany

About the authors

Jens Knodel is senior architect and consultant at the Fraunhofer Institute for Experimental Software Engineering (IESE) in Kaiserslautern, Germany. He is responsible for project management, software and system architecture design, and smart ecosystems in research and industry projects. He shares his experience about software engineering at international conferences and journal publications, in scientific publications and is a lecturer for software architecture at the Fraunhofer Academy, the Technical University of Kaiserslautern, and the Hochschule Mannheim.

Matthias Naab is head of the Architecture-Centric Engineering department at Fraunhofer IESE and a lecturer for software architecture at the Fraunhofer Academy. He led and conducted dozens of architecture evaluations for customers from many industries, helping customers to make adequate decisions around their software systems. He shares his experience about architecture evaluation at practitioner conferences and in scientific publications.

Bibliographic information

Industry Sectors
Chemical Manufacturing
IT & Software
Consumer Packaged Goods
Finance, Business & Banking
Energy, Utilities & Environment


“The focus of this well-organized guidebook is the evaluation of software architectures. It presents practical experience- and context-based guidance for software architecture evaluations. … it is of value to software engineers, software architects, designers, managers, and software evaluators. … this book contributes to our understanding of software architecture via guidance for the pragmatic evaluation of software architecting and supports software architecture’s central role in the development, maintenance, and improvement of software.” (J. M. Perry, Computing Reviews, November, 2016)