Le concept de transaction fait partie du patrimoine universel des sociétés humaines dont il est l’un des éléments régulateurs de la fonction d’échange : échange d’un travail contre un salaire, échange d’un bien ou d’un service contre un autre bien ou service, association de deux individus et/ou organisations en vue d’un but inaccessible à chacune des parties prises individuellement.
Une transaction implique toujours trois acteurs :
clients et fournisseurs sont les acteurs de l’échange. Ils procèdent selon un protocole explicite connu des deux parties ; ce protocole peut varier selon la nature de l’échange. Le « client » demande un service ou un bien, le « fournisseur » offre le service ou le bien souhaité ;
le « juge arbitre », ou observateur neutre, est le garant que la transaction s’est effectuée selon les règles. Il contresigne l’accord des deux parties afin d’en garder une trace officielle accessible par tous.
Il n’est donc pas étonnant de retrouver ce concept au cœur des systèmes d’information dans la mesure où ceux-ci ont comme ambition de modéliser l’activité des individus et/ou des organisations dans le but d’automatiser tout ou partie de la gestion des informations conformément aux objectifs de l’entreprise.
C’est ainsi que, dans une transaction bancaire, par exemple un retrait d’argent, il doit y avoir « simultanément » la remise d’une certaine somme d’argent au client, et débit du compte client de la somme correspondante ; l’opération se fait sous le contrôle du caissier — ce peut être une billetterie automatique — qui s’assure de la solvabilité du client tout en étant le garant de celle de la banque.
C’est ce bloc indivisible qui forme la transaction. Soit les règles qui constituent la transaction ont été respectées, et la transaction est déclarée valide, soit elles n’ont pas été respectées et alors la transaction est invalide, c’est-à-dire qu’il ne s’est rien passé.
La notion de transaction est donc étroitement associée à celle de déontologie et de respect de règles comportementales. Une transaction est un ensemble d’actions cohérentes qui doivent avoir le même sens pour tous les acteurs : c’est donc une notion fondamentalement sémantique.
Émergence du transactionnel en informatique de gestion
La notion de programmation transactionnelle apparaît explicitement à la fin des années 60, début des années 70, avec les premiers réseaux de terminaux et les premières bases de données. On passe progressivement d’un monde exclusivement batch à celui du télétraitement interactif. Ce faisant, un certain nombre...