Hacker News

109

More common mistakes to avoid when creating system architecture diagrams

The most common mistake I've seen is not agreeing on what arrows represent: control or data. Does A-(customer data)->B mean A asks B for data or A sends customer data to B?

Of course, sequence diagrams make it clear with two separate arrows when control and data flow in different directions, but a lot of diagrams are of the "plain old boxes and arrows" variety.

by orthoxerox1774187072
As the resident Diagram Maker at my job I really appreciate any and all discourse on the topic. Knowing the purpose of your diagram is a hugely under-appreciated part of the process. Service flow chart or system architecture? High level system overview or actionable, followable flow-chart? The engineer in me always wants to put All The Things in the chart, to make it maximally "correct". It's never the right move. But how to make it clear what's included or not, and why?

I still struggle with finding the best approach each time; I'd love more discussion of this stuff.

by drewbeck1774209229
Idk, while system architecture diagrams look cool and feel informative, I generally don't feel like they actually help you get started working somewhere on a project. Mistake #3 in this article, putting too much in, is part of this.

So https://www.jerf.org/iri/post/2025/on_layers_and_boxes_and_l... is an interesting take: put links in your diagram, so it functions as a table of contents. This seems most useful for someone who needs to start working on a project.

Similarly https://haskellforall.com/2026/02/browse-code-by-meaning asks how to show what's in a repo, but maybe file tree is not best and a diagram with links as table of contents is the answer.

That said practically speaking, I'm not sure what tooling easily creates working links in a diagram that looks good in any context, for instance mermaid might render on github but not a text editor.

Of course for other purposes maybe just go crazy with the diagram. I once had a coworker draw this super detailed master diagram, maybe 50-100 things on it, which I was told impressed senior government officials (after my manager recolored all the red to avoid connoting errors). But for the purpose of orienting developers a table of contents with links sounds better.

by dematz1774195746
The biggest mistake is not knowing your audience.

Is the diagram for marketing? A sales proposal? A business person using the product? Technical peer?

If you don't know this, you don't know if you have the right level of detail.

by icedchai1774193997
This is just an advertisement for their service.

In my 20 years in this field I can easily count on one hand the times a diagram like this has been useful. I’ve seen more cases where they were clearly created to satisfy some exec that wanted to see it and never updated again.

by dawnerd1774188343
Couple of comments:

> This can be as simple as adding a type suffix to a resource name (e.g. Orders Table, Results Bucket)

Don't encode types in names. And I disagree somewhat that the names are really needed at all.

> Making a “master” diagram

I think such a diagram is useful but obviously each top-level "box" in it doesn't need to contain all sub-components.

by zabzonk1774184487
Diagrams are communication tools, and are best done with a target and goal in mind. The C4 framework is good for addressing multiple levels of abstraction and different types of viewers. The business execs don't need the level of detail that someone debugging the system does.
by datadrivenangel1774185398
I generally have given up on diagrams. Systems and flows I work with are too convoluted to be mapped out. Only the simplest of flows can be diagrammed and it usually leaves out important facts. When dealing with non technical people, I have found out through trial and error that excel works best. I start out with sample data on one sheet and walk them through the various transformations in sheet2, sheet3 etc. I even create a table of contents that has links to the different sheets. In a phrase, seeing data is believing.
by rawgabbit1774197861
Architecture diagrams are the bane of my existence right now. I sit there and listen to engineers opine on the different types, levels, details, etc. And all I can think is...

What a TERRIBLE way to store information in an AI era. Diagrams are so...human.

by chrisss3951774207450
> Meaningless animations

As someone who usually hates animations, in the example given I actually find them useful, assuming that they are representative of the actual flow. They are also unobtrusive because they are steady-state.

by layer81774203194
Their master diagram example in #3 contains a #2 mistake with an unconnected resource (the stripe account). Maybe a double validation of why the master diagrams can be hard to maintain.
by kingforaday1774187102
The worst ones are diagrams that look clean but hide all the decisions that actually matter. A messy diagram that shows the real tradeoffs is more useful than a pretty one that lies
by ashwinnair991774183652
My thought process is that a diagram should stand on its own and should be understandable by non technical business people. I always have callout notes as stickies on the diagram explaining what it does.
by raw_anon_11111774191137
Route53 being off on the side but unconnected is still valuable info...
by ranman1774198566
The main one i would add is a lack of symmetrical alignment. the point of a diagram is to create a shared abstraction for reasoning about a system or set of problems. The point of that is to scale work on it to other minds. It should enable others to parse it and ask useful questions.

If your diagram is ugly, you're probably mixing levels of abstraction without acknowledging it. It's a forcing function on articulating what you know and what is outstanding. Something that is black boxed should be referenced as a black box.

I use a lot of data viz because it's a high bandwidth way to show relationships, dynamics, order of complexity and its location, information problems, scope, and de-noise data. So much can be explained by having AI make you a uml sequence diagram of a concept. it is unreasonbly effective. If you are making a "chart for management" and using powerpoint or native excel charts, you're probably creating garbage though.

by motohagiography1774205308
[dead]
by bamwor1774207366
[dead]
by devnotes771774206234