Adding “evolvability” to the list of system quality attributes was inevitable and I was pleased to see O’Reilly published a book on the subject. But I was frustrated about the book content for several reasons.
First, Building Evolutionary Architectures is not pleasant to read. Written by three authors, there isn’t three different styles, there is no style at all. The sentences are verbose, and the concepts often obscured by useless technical jargon. Furthermore, I regret the introduced terminology —atomic versus holistic fitness functions, architectural quantum, etc.— too elaborate to gain a large audience.
Second, the book clearly lacks real-world, practical examples to illustrate concepts. Almost no code, no diagram. The book lies the foundation, the first stone toward more maturity, hoping tools to emerge to support the concepts of the book. The result is confusing for now, and prone to misinterpretation.
Third, authors fail, in my opinion, to acknowledge the role that developers could play in building evolutionary architecture. If architectural practices has to evolve, maybe it’s an opportunity to reconsider the role of the different actors. This point is a lot more debatable.
In definitive, I don’t blame the authors. They are all very knowledgeable, acclaimed authors, and there are valuable insights in this book (and great inspirational quotations). What they tried is to replicate the impact a book such as Continuous Delivery had had in the past. Despite these good intentions, Building Evolutionary Architectures does not offer the proper development that the subject deserves.