Push/pull visualization in dataflow diagram
Asked Answered
D

2

7

I'm trying to visualize a data flow in a diagram where data can flow in one or many directions. Some actors push the data to another actor in the diagram and other actors pull the data.

From what I can find, there is no notation of it in uml but I might be wrong. What would be a good way of conveying who the acting part is as well as the direction(s) of the data flow in a diagram like this?

Diego answered 29/11, 2012 at 18:40 Comment(2)
Hi -- For me in such cases, I prefer to identify the flows separately. I'd use a Data Flow diagram (en.wikipedia.org/wiki/Dataflow_diagram). You are right there are no similar tools within UML; UML wasn't built for systems analysis though. In UML you could take a stab at using an interaction diagram but it would only be a hack.Papyrology
Thanks, I ended up coloring the arrows instead and provided a legend to interpret it. Not the nicest solution but the only thing I could think of at the time.Diego
R
1

I might be influenced by the german software company I currently work at, but for those cases I really like FMC (Fundamental Modeling Concepts), which is -- said oversimplified -- a more abstract version of modeling (than e.g. UML) and is mainly used by software architects.

The point why I recommend that here, is that FMC already has the a concept of agents and thus can be easily used for actor diagrams. It has connectors for something called channels, which can be unidirectional and thus are good to visualize message passing and simple connectors for data access (read, read/write, and write; e.g. database access). I used it for some modelings of a actor-based Akka systems and it worked quite well for me.

If it's not FMC, I'd also use data flow diagrams as will recommended.

Racing answered 23/2, 2013 at 23:2 Comment(2)
Ah, this looks interesting and might fit my needs better than UML in cases like this. Will keep it in mind for next time.Diego
FMC would be a good choice. Use FMC block diagrams to identify the actors (visualized as rectangles) as well as the storages and channels containing the data (visualized as rounded nodes, e.g. circles) and arcs connecting these nodes to visualize read and write access. A supplementary diagrams could help to illustrate the dependencies of the actors' activities.Dvorak
D
1

will confirms that there are no immediate solutions for this in UML so the options I see are: separating the flows, coloring the graph in some custom way, use different arrow types or fiddle with the graph in some other way to convey the message.

Diego answered 4/12, 2012 at 12:31 Comment(0)
R
1

I might be influenced by the german software company I currently work at, but for those cases I really like FMC (Fundamental Modeling Concepts), which is -- said oversimplified -- a more abstract version of modeling (than e.g. UML) and is mainly used by software architects.

The point why I recommend that here, is that FMC already has the a concept of agents and thus can be easily used for actor diagrams. It has connectors for something called channels, which can be unidirectional and thus are good to visualize message passing and simple connectors for data access (read, read/write, and write; e.g. database access). I used it for some modelings of a actor-based Akka systems and it worked quite well for me.

If it's not FMC, I'd also use data flow diagrams as will recommended.

Racing answered 23/2, 2013 at 23:2 Comment(2)
Ah, this looks interesting and might fit my needs better than UML in cases like this. Will keep it in mind for next time.Diego
FMC would be a good choice. Use FMC block diagrams to identify the actors (visualized as rectangles) as well as the storages and channels containing the data (visualized as rounded nodes, e.g. circles) and arcs connecting these nodes to visualize read and write access. A supplementary diagrams could help to illustrate the dependencies of the actors' activities.Dvorak

© 2022 - 2024 — McMap. All rights reserved.