2
votes

I am preparing a presentation and want to show some UML diagrams which will tell about how my distributed program runs. Since UML is a common language in the software world, I thought that it is one of the best ways to tell about the things in my mind to the listeners.

The problem is that I don't know how I can use UML diagrams for some distributed tasks. Firstly, I want to use Sequence diagrams and show the distributed components as actors. It looks possible. But, how can I demonstrate mpi_reduce_all function in this diagram? And, how can I demonstrate asynchronous communication and then synchronization (i.e. after a while I run isend/irecv commands, I synchronize the processes using wait_all function)?

Is there any idea for this? Or alternative diagrams to demonstrate what I want?

1

1 Answers

4
votes
  1. Check uml-diagrams.org: UML Activity Diagram Examples. The Fork/Join node in UML Activity Diagram is explicitly designed to show parallel tasks and synchronization points.

  2. For the purposes of a presentation consider BPMN. The Business Process Model and Notation (BPMN) language is also common in the software world and is also backed by the Object Management Group (OMG).

    Description of parallel tasks and data exchange and synchronization points is among it's strong features.

    See also: