DEV Community

Discussion on: Diagrams are the ultimate engineering tool

Collapse
 
danielwarner profile image
Daniel Warner

Yup. Arrows are problematic when you are trying to represent control flow. Best to just avoid them... go with a line :-)

Collapse
 
wesen profile image
Manuel Odendahl

Why do you think arrows are problematic for control flow? I actually always use arrows (in every diagram), almost never just lines.

Thread Thread
 
danielwarner profile image
Daniel Warner

Arrows imply a simple, one directional relationship that doesn't provide a lot of value in terms of communicating how a system works. Arrows have their place of course (UML sequence diagrams spring to mind) but if you are not describing something simple like a request or a query they gloss over key relationships. This is probably why UML itself has a dozen or so styles of arrow to describe class relationships.

Thread Thread
 
wesen profile image
Manuel Odendahl

isn't indicating the direction of a relationship (which you of course need to ascribe some meaning) more useful than non directional? But I agree, the meaning of an arrow while it can be informal at times, needs to be shared amongst the participants. For flow contrl / state machines, I use arrows to mean "from this state, you can get to this state", and then potentially annotate the arrow with a condition that would cause that transition.

Were you referring to the * ... 1 annotations you can use in class diagrams?