Il software di gestione delle transazioni per l'automazione del workflow è una parte fondamentale di qualsiasi settore che coinvolge l'elaborazione delle transazioni, tra cui l'ecommerce, la finanza, l'ospitalità e qualsiasi azienda che richiede una gestione accurata del database.
In modo critico, il software di gestione delle transazioni si basa sul concetto di atomicità per definire una singola transazione come una serie di operazioni che devono essere tutte completate, altrimenti nessuna viene considerata completata. In altre parole, per mantenere la conformità dei dati, un sistema di gestione delle transazioni assicura che una transazione non possa mai essere completata parzialmente.
Ad esempio, quando una persona tenta di prelevare denaro da un bancomat, un software di gestione delle transazioni elabora le richieste e le modifiche necessarie al database per controllare il saldo del conto, sottrarre l'importo richiesto, aggiornare i registri della banca e rilasciare il contante erogato. Tutti questi passaggi sono considerati una nuova transazione e il sistema di gestione delle transazioni garantisce che l'intero processo sia completato per evitare incongruenze nel database della banca e preservare un registro accurato.
Durante una transazione, lo stato del database correlato è in movimento e viene considerato incoerente. Durante questo periodo, una transazione può eseguire un numero qualsiasi di operazioni di lettura e/o scrittura leggendo il database per fornire informazioni (come controllare il saldo di un conto bancario) e/o scrivendo nuove informazioni nel database (come l'aggiornamento del saldo del conto dopo un prelievo). Solo una volta completata la transazione, il database può tornare a un nuovo stato coerente.