01
What Is Architecture
The definition and scope of architecture: telling apart decisions that are expensive to change, separating the application, solution, and enterprise levels by decision scope, the decision, communication, and oversight responsibilities, how a decision cut off from the code becomes the ivory tower problem, and carrying the decision to the team through consulting and coaching.
- 01 Software Architecture Definition Defining software architecture as a set of decisions that are expensive to reverse: reading each decision's cost of reversal from the dependent closure in a model codebase, ranking decisions by that number, writing down the source of the threshold, and comparing that ranking against one by body size.
- 02 Architecture Levels Separating application, solution, and enterprise architecture by decision scope: distributing the same set of decisions across three levels by how many units they operate, the number of decisions each level covers and the number of units it affects, and the counts of uninformed units, repeated decisions, and conflicting implementations when a decision is made at the wrong level.
- 03 The Architect's Responsibilities Building the decision, communication, and oversight responsibilities as a matrix: translating a decision into a machine-auditable constraint form, running the supervised and unsupervised schemes with the same edge sequence on a codebase that grows shortcuts, the share of decisions with no counterpart left in code, and the hour distribution across the three responsibilities.
- 04 The Architect and Developer Relationship Modeling the ivory tower problem as a knowledge gap: keeping the import graph the decision-maker knows separate from the actual graph, running the hands-on and hands-off schemes on the same sequence of changes, and counting the stillborn-decision rate, the average knowledge gap, and the feedback delay.
- 05 Consulting and Coaching Conveying the same decision as a directive, a written rationale, and by working together: separating the common case from the edge case, measuring the correct-application rate and the cost of conveyance in a two-wave model, and counting which form of conveyance survives a team change.