Structure and its consequences.
WHAT IT IS
The decisions about structure that are expensive to change.
WHAT THAT INCLUDES
How the system is divided into parts How those parts communicate Where data lives What technologies are used How quality attributes are achieved
WHAT DISTINGUISHES ARCHITECTURE FROM DESIGN
Cost of change. Architectural decisions are the ones you cannot easily reverse.
WHAT DRIVES IT
Quality attributes, more than features.
WHY
Two systems doing the same thing need different architectures if one must handle vastly more load.
WHAT GOOD ARCHITECTURE PROVIDES
The ability to change the system without rewriting it Parts that can be understood separately Room to grow where growth is expected
WHAT IT DOES NOT PROVIDE
Anticipation of every future need.
WHAT TO AVOID
Designing for requirements that do not exist Distributing a system that does not need distributing Patterns applied without a problem
WHAT TO DOCUMENT
The decisions, and the reasoning behind them.
WHY
So whoever questions them later can judge whether the reasoning still holds.