I've developed a new diagram that I think it much better at communicating how the messages in a system flow between components. I've used sequence diagrams for this in the past, but I've always found a number of problems with them.
This very simple flow produces a large diagram:
What's wrong with this?
I've set out to create a new type of diagram to replace sequence diagrams:
I decided to focus on the process rather than the participant, use a small number of familiar symbols (anything else, such as conditional or loops are done using notes), and keep the syntax terse.
The rules are basic:
I'd love to get your feedback - please add your comments below.