Ask HN: Why there's no universal way to draw software architecture diagram?

4 points by colafly ↗ HN
Being a consultant I've seen so may styles of diagrams in the company. I realized even in the same company, people interpret the same diagram differently. It is very inefficient. A lot of time it is just a client, server, database, with some business logic etc. Why we cant have standardized pattern across everywhere? or does that exist? I also don't understand the concept of "reference architecture" because when i was software engineer in a big organization we never need a reference to draw diagram.

7 comments

[ 5.6 ms ] story [ 32.9 ms ] thread
Look up UML (https://en.wikipedia.org/wiki/Unified_Modeling_Language).

It is such a language, but it’s so complex that ’not everybody’ likes it.

A big problem with such languages is that you want to use diagrams to tell a story, and that story may require showing more or less details, depending on the goals of the diagram.

Consequently, you may both need a generic “A is related to B” arrow between objects and specialized “A owns B, so if A is destroyed, so will B”, “A knows B, and nobody else does, but if A is destroyed, B may live on”, “A knows B, and they more or less are equals”, “A knows B, and so may up to 5 others”, etc.

UML seems useful IMO. Personally I don't use it because I don't want to get it wrong - miscommunication is often more harmful than insufficient communication. It's probably something that should be taught in college, but I didn't do CS and nobody in the industry does it, so I never picked it up.
I learned UML back when I did college 15 years ago, but haven't really used that now. I thought that's out dated.
Because we do not have the energy not inclination to enforce a universal visual language on others.
Maybe have a look at the C4 model. You might find it useful.
> Why there's no universal way to ...

Because PEOPLE.