Today marks 18 years since I first joined SAP and started helping business gain new insights into their operations through the use of Business Intelligence. Today I wanted to share a typical example of the critical role Analytics can play in gaining insights the help drive the business forward. The question we needed to answer was:

How might SAP be able to deliver operational insights from an operational Customer Service application?

We first begin with the data platform for powering our Analytics. While HANA has a well-earned reputation as one of the fastest HTAP databases available on the market today, what is less known is how the analytic engines within the platform help organizations better service their customers. Last fall I worked with a large Utility that was struggling to understand why despite spending millions of dollars on improving their web channel, the number of calls to their call center were increasing. They had KPIs, metrics and dashboards that showed: How many inbound calls their agents handled, Who was calling and How long the calls lasted. However, they did not have true insight into why they were calling. 30% of people who were calling into the call center were selecting “0” to opt out of the menu. Analytics between different interaction channels were siloed. After a call was completed, the CSR did not enter a call reason into the interaction record.

The Bottom Line was: The Utility had no idea why customers were calling the call center.

Could HANA Help?

HANA’s unique architecture offers over two dozen additional services that allow it to handle very difficult data processing challenges. A central part of HANA’s Advanced Analytic Processing is a mature Text Analytics engine which allows the platform to turn unstructured text into meaningful structured information. Here is a video describing how it works. Before HANA, if an organization wanted to do text processing on their data, they needed a specialized text processing platform, but with HANA text processing is already built in, saving time and money.

Full HANA Platform architecture.

The first thing we needed to do was link the customer and call center records to the call center transcriptions within HANA, so we knew which transcriptions were related to which call records. Next we told HANA to begin processing the transcriptions and using it’s text dictionary to categorize the text. Once we did this we discovered a couple of challenges:

  1. Overall the quality of the transcriptions was poor. We discovered that words were frequently incorrectly transcribed or missing altogether. This was hampered primarily by factors such as poor phone call quality, people speaking too softly/loudly or thick accents.
  2. Text Analytics required sentence breaks. Fortunately, we were able to use the accompanying speaker metadata to identify when the speaker changed and thereby use a Python script to create a collection of sentences.

Once we had built a text index for the transcriptions we began to look for clue that might indicate why someone was calling. We identified some themes (Billing, Payments, etc) and decided to look for commonly occurring word combinations in the same sentence. Here is an example of what we saw.

Commonly occurring words from the voice transcriptions

While useful, we needed to go deeper.

Clearly Billing and Payments was a big driver to inbound phone calls; however we needed to develop rules that would indicate what the key reason for the call might be. After reading through samples of transcriptions and taking notes a number of patterns began to emerge. We realized:

  • People tend to say what they wanted at the beginning of the call.
  • People would often want to discuss multiple topics over the course of a conversation.
  • The topic that was discussed the most during a call should be considered the reason for the call.
  • There were other factors that we should track including emotions, confusion, bad call, etc.
  • Over the course of a phone call it’s not uncommon for a number of different topics to be discussed, especially if the CSRs have been instructed to conclude the call with a special offer, such as an appliance warranty program.

Adjusting the Text Analytics Dictionary

It was clear the best approach would be to create a custom text rules and dictionary for our specific needs. We created just over 400 rules which were expressed using simple syntax and could be updated by an Analyst. Typically these rules would need to be hand-coded into a specialized syntax for the Text Analytics Dictionary; however in our case, we created the hdbtextrule file programmatically. Turning this spreadsheet…

Rules defined within Text Analytics to identify the Transcription Category
(e.g. what people were talking about)

Into a HANA hdbtextrule file:

CIS_VOICEOFCUSTOMER_RULES.hdbtextrule file

After going through several iterations of the text rules, we had successfully categorized the vast majority of the transcriptions. Each time we found a “text rule” within a sentence within the transcription, a new entity was extracted. As the result of running text analytics against the transcriptions using the new dictionary, HANA generated millions of records. Here is a sample of what we found in just one transcription. You can see the term meter occurred over 10 times.

Here you can see the individual topic tokens for Transcription 100007
Example of the Transcription Categories

Next, we were able to join the resulting transcription index to the transcriptions themselves and we counted the entities. Whatever transcription category appeared most often would be to reason why the customer called. (Some entities such as Emotion, were simply ignored during the calculation.) Resulting tests showed a high correlation between the known IVR exit point (“Press 2 for High Bill”) and the Transcription Category that occurred most frequently.

NOTE: With more time and analysis, we may have added additional weighting based who spoke the phrase and when during the call the phrase was spoken to see how it improved call categorization accuracy.

The Result? We were able to build a dashboard that showed why people were calling and what they were talking about during the call. Those 30% of people who had opted out were no longer a mystery!

… but could we do more? We wanted to understand what was affecting the call duration and see if we could affect change that might reduce the length of calls to help save time and money.

Affecting Change Through Prediction

While it was interesting to know what the topic of the conversation was and to see that the fourth most common topic was issues with the website, ultimately we also wanted to understand what was influencing call duration.

Enter the Predictive Engine. Another embedded service within the HANA database, which makes it so much more than just a database. Here again, we could run classification and regression algorithms on the data without the need to move out into SAS or another specialized data science tool.

We used SQL to reshaped the data to enable analysis at the transcription level and we bubbled up all the different topics that were discussed during the call and we discovered something very interesting. When we did analysis on what was influencing call duration something interesting came to light.

Influences on Total Call Duration

After running the algorithm, we received strong KI (predictive power, 82.4%) and KR (predictive confidence, 99.9%) results. We immediately noticed that the results also made sense logically. There would naturally be a correlation between total call duration and total hold time. What we didn’t expect was to see Confusion. Indeed, what we surmised was that due to a lack of procedural standardization across call centers, there were cases in which customer’s were confused by the payment process and needed extra help. The ability to clarify communication and standardize procedures should therefore lead to shorter calls.

Conclusion

I’m always amazed and the breadth of capabilities that exist within the HANA platform. It is so much more than just a database. It’s an innovation platform that allows organizations to obtain new insights into their operations by storing just one copy of their data and leveraging the native engines, such as Text Analytics and Predictive.

A few insights we gathered for this Utility included:

  • People were having problems performing some tasks on the new website.
  • There was a desire to be able to sign up for budget billing over the website.
  • Calls could be shortened significantly by allowing new service and service transfers to be processed via the website.

If you are interested, here is an overview demonstration of how we leveraged transcription data together with SAP Analytics Cloud to obtain new operational insights, saving time and reducing the cost to serve — ultimately delivering a superior customer experience.

Watch The Demo

«Good BI»