What is a good diagrammatic way to represent asynchronous event communication between two systems (the pub sub model)? I am not looking for tools but more of a representation. Is it a sequence diagram, a swim lane diagram or some other?

  • I think when you write "a sync", you meant "async". "Async" is short for the word "asynchronous" whose opposite is "synchronous". – Derek Elkins left SE Nov 24 '17 at 5:31

The UML sequence diagram is well adapted to represent an interaction between several objects (or components or, why not,systems). It has semantic to make the difference between synchronous and asynchronous communication. You may even show delay in message passing (but don't abuse of it).

However for a more complex interactions between systems, you should consider BPMN collaboration diagrams. They were designed specifically for this purpose. They have the advantage of facilitating the representation of how each system reacts to events in a flow of related tasks, including exceptional events such as time-outs and errors.

In both cases the communication is based on messages. Both allow asynchronous and synchronous communication (although synchronous requires more efforts in BPMN). But BPMN will allow the more precise and powerful event diagramming you're looking for.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.