In one form, a method for managing message flow includes processing
messages concurrently by processing nodes in a computer software
application. The processing nodes include at least one set of lock
acquisition, system resource access and lock release nodes interconnected
in a flow path. In such a set, the nodes are interconnected in a flow
path and process a respective one of the messages in a sequence defined
by the flow path. The processing includes granting access to a system
resource exclusively for the set's respective message responsive to the
lock acquisition node processing its respective message. The system
resource is accessed for the message responsive to the set's system
resource node processing the message. The accessing of the resource for
the message includes changing a certain system state. The exclusive
accessing of the system resource is released responsive to the set's lock
release node processing the message.