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

The only way to go fast, is to go well - Robert C. Martin

Last updated