|Issue No. #9||27 November 2001||ISSN: 1532-1886|
We encourage you to forward this newsletter to others. Please also CC to firstname.lastname@example.org so that we can provide them a free subscription too.
Clash of the Titans (Real-time Rating Versus Batch) by Carl Wright
Each day more than a billion telephone calls are rated. How are they rated? Is it batch or real-time?
Everyone talks about their real-time rating solutions. My company, like others, offers a real-time rating solution. The excitement related to real-time processing is so strong that Portal Software Inc. uses it in their trademarked slogan "Real Time No Limits".
As a vendor or carrier involved with rating, nobody brags about their batch rating. Batch rating is mentioned in an apologetic manner. This is quite unfair to batch rating. I believe that batch rating processes ten times more transactions than real-time, but nobody loves it.
Below I'll show you why real-time rating is hard to do well and why batch remains an attractive approach to rating. This is not an exhaustive review. It won't fit in one newsletter.
How You Show The Customer Their Transactions
Your bill (paper, electronic, etc.) shows each customer your measurement of their usage and your charges for their use. The transactions shown on a bill are always arranged in date/time order. Not showing them in this order makes it difficult for your customer to evaluate their bill and pay it. We can all agree that getting customers to pay their bill is the primary purpose of the bill.
This date/time order of displaying and processing these transactions is fortunate. It is the order of how they should be delivered by the network to the rating and billing functions.
Doing It In Real-Time
Since the order in which the customer uses your network is the order in which you record the events, you can rate everything as it finishes and just total them up as you go along.
Figure 1. Rating in real-time as transactions occur using ongoing totals
Further, you can then keep a total of their usage (dollars, minutes, etc.) and use this information to perform tiered volume discounting/rating. Examples are the "first five hundred minutes are free" or a plan where the fee for services drops as you use more.
Oops! Maybe Not
The flow of transactions in the real-time rating environment is dependent on getting everything in the right order and correctly processing them. The reality of business is that most transactions arrive in the right order and most transactions are correctly processed the first time. The operative word here is "most". The pain in the job of processing transactions is when the transactions don't arrive in the right order and/or when they don't get processed correctly the first time.
Here are some examples of how things do go wrong.
The Calls Come Out Of The Switch In The Wrong Order
When a single switch records call records (or other transactions), the switch records each transaction as it finishes. If there is only one telephone that can create a transaction, then the transactions recorded for a customer appear in ascending date/time order. Unfortunately, there is often more than one phone associated with an account. This means the output records will sometime be in date/time order and other times not. The cause of the error is that the recording device records the transaction at the end of each transaction. So, I can start a phone call and talk for twenty minutes, then after ten minutes have passed, you can make a three minute call on another phone for the customer account. You finish the second call before I finish the first one. The real-time rating flow of records delivers the second call before the first.
Figure 2. A situation where a later call is output before an earlier one
The Calls Come out of the Network in the Wrong Order
With a real-time services network involving more than one switch, you will have occasions when the information on transactions processed from one switch cannot not flow in real-time. These may be accidental or deliberate disconnects. But if your rate plans assume that the records come in proper order, you will get bad results.
Figure 3. What it looks like when a transaction doesn't arrive in date/time order
Perhaps you can rollback your transactions and your processing to correct these gaps in information when a broken link is repaired. But you've made a simple system much more complex.
The Impact When Things Can Go Wrong With Real-Time Rating
When a mistake is made in the entry of rating data, you create a real-time flow of rating errors instead of revenue. When information recorded by the network (cell sites, phone numbers, trunk identifiers, etc.) changes and the changes are not made immediately in your rating software, you create another real-time flow of rating errors.
You've got two different outcomes from these errors.
These errors can also happen in a batch rating environment. With a batch rating process, you can just re-rate everything that is affected to correct the error.
Roaming with your wireless phone or by charging calls to your wireline account from another phone creates transaction records in the switches of other carriers. Without significant investments in communications networks, you can not count on getting these transactions in real-time. When there are delays in the delivery of those records to your carrier, you get rating and billing errors. If your billing is batch oriented or if it re-rates everything before billing to correct "out of order" errors, you protect your customers from rating errors.
The problem can get worse than just a few hours or days of delay. According to 4 September 2001 USA Today article, customers of Voicestream Wireless were charged for roaming calls in January this year that had been made during the month of November previous. With some customers this pushed them over their limit on minutes included in their monthly charge. They were charged thirty cents per minute for the time over their monthly limit. (click for the article.)
How Batch Is Better
How Batch Is Bad
Real-time rating and/or batch rating can work for your business. You can go entirely with a real-time processing environment, if you can either structure your network services so that nothing gets sold that you can't rate (i.e. prepaid only) or your business rules eliminate the "out of order" problem (i.e. no tiered discounting).
If you want the benefits of real-time, but have to deal with the realities of "out of order" data flows, you will want a hybrid real-time and batch solution. Perform real-time rating everywhere you can. Use this information to support your customers and your business decision-making. Educate everyone using the information about the sources and possibilities of "out of order" data and their impact. Use batch processing to correct any disruptions from "out of order" data before your billing is done.
If you don't have to know how much has been spent in real-time, you can use batch rating. Regardless, I urge you to rate your calls frequently so that you can uncover the sources of your rating errors while you have ample time to correct them before you begin your billing.
Tell Me What You Want To Hear About
The subjects that I cover in Rating Matters are driven by my personal interests in rating and billing. These are limited by the breadth of my personal experience. Please let me know about items you want to hear about or you'd like explored further. Send me your requests at .
2001 Service Level LLC
Rating Matters is a trademark of Service Level LLC