I’m all for UML to help communicate and serialize ideas in a consistent fashion. There have always been a number of pain points with UML that made me angry. One of them has been in-line guards — representing conditionals in a sequence diagram. It has been nearly impossible to succinctly represent complex conditonals (e.g. multiple
else ifs). UML 2 has introduced the “combined fragment”. IBM Developer Works has an article that demonstrates them in action. If you’re not up for reading the lengthy article at this time then just check out figure 8. This article uses them in a sequence diagram.
If you use Visio, then these UML 2.0 stencils may come in handy.