1. A distributed transaction processing system comprising: a plurality of service application programs each capable of performing an operation; a data store comprising a plurality of transaction definitions, each transaction definition indicating a transaction definition name uniquely identifying the transaction definition and a plurality of operation definitions indicating a plurality of operations constituting a transaction; a requesting application program configured to produce a transaction request message indicating a transaction definition name identifying one of the plurality of transaction definitions included in the data store; and a computer having a memory device storing a process automation application, the process automation application configured to: receive the transaction request message indicating the transaction definition name from the requesting application program, use the transaction definition name to obtain the transaction definition from the data store, produce a transaction instance directed acyclic graph data structure comprising a plurality of nodes, wherein each of the plurality of nodes corresponds to one of the plurality of operation definitions, produce an operation request message for each of the plurality of operation definitions by traversing a path through the transaction instance directed acyclic graph data structure, send the operation request messages to at least one service application program, wherein the at least one service application program is configured to send an operation response message indicating an output of performing an operation to the process automation application in response to receiving an operation request message, and produce a transaction response message using the operation response messages, and send the transaction response message to the requesting application.