When it comes to diagrams in software development many things and opinions can be discussed, and often are, about the use of diagrams in software development (and -architecture): UML, not UML, C4, types of diagrams (e.g. class diagram vs component diagram etc), 4+1 model, level of detail, auto generate or not, and so on. All of the discussion is good, and there will never be one true answer.<p>What I would love to hear about is a very pragmatic and individual question:<p>What types of SW diagrams have actually made a difference for you/your team in a decision making situation?<p>I know that diagrams often have good use when it comes to explaining a system to a new hire, or other person not already familiar with the system.<p>I’m more curious if anyone have used diagrams in an analytical situation and as input to a design decision. Have you used diagrams in a way that gave you some insights into a problem that you couldn’t get just by taking about it? Have you used diagrams to show that solution A is better than solution B?
Having a diagram helped me multiple times. I'm aware of different types and I'm quite interested in visualisation, but... it never really mattered. A diagram showing what you want is good, others are not, regardless of whether it has an official name.<p>One specific non-SW type I consciously use is an argument map, if you're after decision making. See argdown <a href="https://argdown.org/" rel="nofollow noreferrer">https://argdown.org/</a>
I think diagrams regardless of which type you use are most useful to make sure everyone is aligned on what those options are _in order to have the discussion_. Then the discussion can take place and it logically comes to the right outcome (hopefully) as everyone has clarity on what’s being discussed.<p>Without the diagram people talk about different things but think they’re talking about the same thing. You need diagrams. Even if you just write it on white boards.