Chapter 59. Prefer Principles, Axioms, and Analogies to Opinion and Taste

Michael Harmer has worked in software for 16 years as a developer, team leader, architect, principal engineer, and practice manager.

Michael Harmer
image with no caption

WHEN CREATING YOUR ARCHITECTURE you should explicitly use principles, axioms, and analogies to guide the creation. This gives the architecture a number of benefits that are not present if you simply create by implicitly leveraging your experience, opinions, and tastes.

Documenting your architecture will be easier. You can start by describing the principles that were followed. This is much easier than trying to communicate your opinions and experience. The principles will then provide a convenient handle for those tasked with understanding and implementing the architecture. It will also be invaluable for subsequent or inexperienced architects who need to work with the architecture.

An architecture with clear principles is an architecture that frees its architect from reviewing everything and being everywhere. It gives architects greater leverage and influence. You will not need to be an omniscient workaholic to ensure that others can consistently:

  • Implement and adapt the architecture

  • Extend the architecture into related domains

  • Reimplement the architecture using newer technologies

  • Work out the detailed edge cases

Disagreements about opinion and taste invariably turn into ...

Get 97 Things Every Software Architect Should Know 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.