Why We Need Architecture and Design in Agentic Development 📎
Without architecture and design, the agent decides everything per feature: where the code goes, how it talks to the rest of the system, which operations to expose, and what the data looks like.
Architecture removes coordination ambiguity: where does this belong, and how does it interact with the rest? It is decided once per system and held constant. It defines what a business component is, that it consists of Boundary, Control and Entity, what each layer may depend on, and how components communicate. The human owns it. A named architecture such as BCE compresses pages of rules into a few tokens in the prompt. The agent never rediscovers it per task. Two agents implementing two features in parallel, with no component structure, edit the same shared classes and overwrite each other's changes. With component boundaries defined up front, each agent works inside its own component. A reviewer checks placement without reading every line.
Design removes implementation ambiguity: how exactly should this piece behave? It is decided per feature, inside the bounds the architecture already fixed. Which operations does this boundary expose, which entities does the component own, is this one control class or three, what is the shape of the record. The agent owns it, steered by a specification. In my projects the specification lives in package-info.java, next to the code it describes (SBCE). The agent implements it, the tests decide whether the result is adequate, and the agent regenerates it when the specification changes.
The test: if a decision would be the same in every business component, it is architecture and belongs in a convention the agent loads once. If it would differ between the orders component and the invoices component, it is design and belongs in the specification of that component. Package layout, layer dependencies and naming rules pass the first test. The shape of an order line item passes the second. A design decision that turns out to be universal gets promoted into the architecture.
In classical projects architecture takes a few days and design takes the rest of the project. With agents the ratio inverts. Design becomes cheap because it is generated. Architecture becomes more valuable because it is the only thing that keeps a thousand generated designs consistent with each other.
Fewer decisions left to the agent means fewer mistakes, fewer corrective turns, fewer tokens, and less human review.
ve turns, fewer tokens, and less human review.