New research investigating UML models characterises deadlocks in sequence diagram as types of race condition
Friday 8 February 2008
Dr Bill Mitchell has just had an article on the theory of communication channel deadlocks accepted for publication in the highly prestigious journal IEEE Transactions on Software Engineering.
Abstract:
"UML sequence diagrams (SDs) are a mainstay of requirements specifications for communication
protocols. Mauw and Reniers’ algebraic (MRA) semantics formally specifies a behaviour for these SDs
that guarantees deadlock free processes.
Practitioners commonly use communication semantics that differ from MRA, which may result
in deadlocks. For example FIFO, token ring, etc. We define a process algebra that is an extension of
the MRA semantics for regular sequence diagrams. Our algebra can describe several commonly used
communication semantics. Regular SDs are constructed from concurrent message flows via iteration,
branching, and sequential composition. Their behaviour is defined in terms of a set of partial orders on
the events in the SD. Such partial orders are known as causal orders.
We define partial order theoretic properties of a causal order that are particular kinds of race
condition. We prove any of the common communication semantics we list either guarantees deadlock
free SDs or can result in a deadlock if and only if a causal order of an SD contains one of these types of
race condition. This describes a complete classification of deadlocks as specific types of race condition."

