Preparing an architecture review.
Most of the effort in an architecture review goes into producing the diagrams, and most of those diagrams describe the system as remembered rather than as built.
The situation
A review is scheduled and someone spends two days making diagrams. Those diagrams are drawn from memory and from the last set, which were also drawn from memory, so the review is conducted against a description that has been drifting from the system for some time. The discussion is then about the description.
Generate from the system
Generating from the repository and the infrastructure code means the review starts from what is deployed. The corrections people make during the review are then real findings rather than fixes to your drawing, which changes what the meeting is for.
Several views, not one
A review usually wants four: context so everyone agrees on the boundary, containers so the pieces are named, data flow for the request that matters, and failure so the single points are explicit. Trying to serve all four with one diagram is why review decks are unreadable, and generating them separately costs little.
The failure view earns the most
The single-points-of-failure diagram is the one that produces action items, and it is the one least often prepared because it is the most tedious to draw by hand. Marking components whose loss takes the system down is a small annotation and it reliably starts the most useful conversation in the room.
The four views
Questions
Related
- Onboarding Engineers to a CodebaseThe first week is spent building a mental model that somebody already has. A diagram transfers it in an afternoon.
- Documenting Legacy CodeIncluding the newest kind of legacy code: what a coding agent wrote for you over several sessions that nobody has looked at as a whole.
- System Design Interview PreparationThe diagram is the easy part. Interviews are decided by the tradeoffs you can defend when the interviewer pushes.
- Technical Design DocumentsThe diagram in a design doc usually gets drawn last, badly, because everyone is tired of the document by then.