They provide a simple conceptual execution framework for both implementers and users. The user thinks of a transaction as a single change event that either happens or doesn't happen. Implementers think of a transaction as a programming style that allows them to write modules that can participate in distributed computations. Suppose you want to transfer money from one bank account to another. The implementers and the users want to make sure that either both accounts change or neither changes.
Transactions provide a way to bundle a set of operations into an atomic execution unit.
The contract is final when the escrow officer announces that everyone has signed. If any party disagrees, the deal is off. Once they agree, the transaction can occur. In MS DTC terminology, the director is called the transaction manager. The participants in the transaction that implement transaction-protected resources, such as relational databases, are called resource managers.