The Real Meaning of BTM (Business Transaction Management)

By Andreas Grabner (Profile)
Share |
Monday, February 6th 2012
Advanced

The term Business Transactions and Business Transaction Management is widely used in the industry but it is not always well understood what is really meant by it. The general goal of BTM is to answer business relevant questions that business owners ask to application owners:

  • “How much revenue is generated by a certain products?”
  • “What are my conversion and bounce rates and what impacts them?”
  • “Do we meet our SLAs to our premium account users?”

There are three key challenges associated with doing BTM right. Here is an overview of crucial topics you shouldn’t overlook.

Challenge 1: Contextual Information is More than Just the URL

We need information captured from the underlying technical transactions that get executed by your applications when users interact with your services/web site. Knowing the accessed URL, its average response time and then mapping it to a Business Transaction is the simplest form of Business Transaction Management – but doesn’t work in most cases because modern applications don’t pass the whole business transaction context in the URL.

Business Context information such as the username, product details or cash information usually comes from method arguments, the user session on the application server or from service calls that are made along the processed transaction.

Challenge 2: Business Context is Somewhere Along a Distributed Transactions

Modern applications are no longer monolithic. The challenge with that is that transactions are distributed, they take different paths, and data we need for our business context (username, product information, cash information, …) is often available on different tiers. This requires us to trace every single transaction across all tiers in order to collect this data for a single user transaction:

Every transaction is different, it involves different services, crosses multiple tiers and we need to capture business information along the full end-to-end transaction.