UML Distilled Martin Fowler
State Diagrams State Transition Diagrams define a number of states and the transitions between the states
Harel Statechart
When to use State Diagrams Describing an object across several user- cases
Activity Diagrams The activity diagram describes the sequencing of activities, with support for both conditional and parallel behavior. An activity diagram is a variant of the state diagram where the states are activity states.
Activity Diagrams
When to use Activity Diagrams Analyze a user-case Understanding workflow Describe a complicated sequential algorithm Dealing with multi-threaded applications Do not use it when: Trying to see how objects collaborate Trying to see how many objects behave over their lifetimes
Deployment Diagrams A Deployment Diagrams shows the physical layout of components on hardware nodes. A deployment diagram is a good place to show how components and objects are routed and move around a distributed system.
When to use Deployment Diagrams Distributed Systems