views:

259

answers:

2

I was wondering if anyone has some best practices to follow when diagramming distributed systems. Not being much of a visual designer I typically go through hours and several iterations till I reach the point where I feel the diagram matches the system. Of course after I show it to someone else I spend more hours cleaning and rearranging it so its suitable for both my collegues and myself.

Currently I'm trying to diagram our database feed loaders, caching system, distribution network and its clients. I can tell it'll be a long night.

+1  A: 

It will depend on the audience, but I recommend a place to start is UML, particularly the "deployment diagram". You will probably have to annotate it to help understanding, but it's a way to be a little bit more precise about displaying this sort of information.

Depending on the audience, you may want to change the "Nodes" in the strict deployment diagram for bitmaps of servers (or other iron) and the "Components" with representative bitmaps of applications / services.

Peter K.
A: 

If you are looking for a way to visualize the interactions of distributed systems petri nets may be a usefull diagramming technique. More popular are UML activity diagrams and as Peter noted deployment diagrams. But it depends on what aspect of the distributed system you want to model what diagram to use.

Petri nets and activity diagrams can describe the (distributed) processes whereas a deployment diagram describes the compents which interact.

Jasper