: CUSTOM SOFTWARE : TYPES OF SOFTWARE : TRANSACTION PROCESSING
TRANSACTION PROCESSING SYSTEM
A Transaction Processing System or Transaction Processing Monitor
is a set of information which process the data transaction in database
system that monitors transaction programs (a special kind of program).
The essence of a transaction program is that it manages data that must
be left in a consistent state. E.g. if an electronic payment is made,
the amount must be either both withdrawn from one account and added to
the other, or none at all.

In case of a failure preventing transaction
completion, the partially executed transaction must be 'rolled back'
by the TPS. While this type of integrity must be provided also for
batch transaction processing, it is particularly important for online
processing: if e.g. an airline seat reservation system is accessed by
multiple operators, after an empty seat inquiry, the seat reservation
data must be locked until the reservation is made, otherwise another
user may get the impression a seat is still free while it is actually
being booked at the time.
Without proper transaction monitoring,
double bookings may occur. Other transaction monitor functions include
deadlock detection and resolution (deadlocks may be inevitable in
certain cases of cross-dependence on data), and transaction logging
(in 'journals') for 'forward recovery' in case of massive failures.