Foreword
By Kevil Henney - May 2017
What is Architecture?
Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change. - Grady Booch
Not only does a good architecture meet the needs of its users, developers, and owners at any given point in time, it meets them over time.
If you think good architecture is expensive, try bad architecture. - Brain Foote and Joseph Yoder
Architecture is the decisions that you wish you could get right early in a project, but that you are not necessarily more likely to get them right than any other. - Ralph Johnson
Understanding the past is hard enough. Our grasp of the present is slippery at best. Predicting the future is nontrivial.
Architecture Paths
⛔ Rigidity
Strong and stable architecture comes from authority and rigidity.
If change is expensive, change is eliminated.
The architect's mandate is total and totalitarian, with the architecture becoming a dystopia for its developers and a constant source of frustration for all.
⛔ Speculative Generality
Hard coded guesswork.
Countless parameters.
Tombs of dead code.
Accidental Complexity
✅ Clean
Recognition that software is soft, preserving it as a first-class property of the system.
We operate with incomplete knowledge
We create things and we discover things.
We ask questions and run experiments.
Architecture is a journey rather than a destination.
Architecture is a process of enquiry rather than a frozen artifact.
Architecture is a hypothesis that needs to be proven by implementation and measurement. - Tom Gilb
Walking the Clean Path requires care and attention, thought & observation, practice & principle. This might at first sound slow, but it's all in the way that you walk.
The only way to go fast, is to go well - Robert C. Martin
Last updated