The token flow semantics of UML 2 activity diagrams is formally defined using Abstract State Machines. Interruptible activity
regions and multiplicity bounds for pins are considered for the first time in a comprehensive and rigorous way. The formalisation
provides insight into problems with the UML specification, and their solutions. It also serves as a basis for an integrated
environment supporting the simulation and debugging of activity diagrams.