A few months ago in the pages of SD Times, I wrote a column about contextual awareness being the next important hurdle to clear in application development. I’ve also recently written about the next-generation of human interfaces, which are morphing from visual and typed inputs into voice communication. 

A conversation I had with Suhas Uliyar, vice president of mobile strategy and product management at Oracle, has tied it all together, into something he called “instant apps,” I’ll let him explain.

“Mobile apps are changing into the concept of instant apps, using context based on the process you’re executing,” he said.

Before we go further, let’s take a couple steps back to catch up from where we are today. Many organizations are experimenting with chatbots, or already implementing them, as the first point of contact with customers and employees. Uliyar pointed out there are multiple ways in which chatbots can be engaged.

First, he said, it’s important to know the kind of interaction you want with the end user. For some, a simple menu-driven conversation can be effective, even though it’s not particularly conversational. It’s more often employed to replace Interactive Voice Response Systems (to hear our office hours press 3, for example). “You don’t need artificial intelligence, neural nets or natural language processing,” Uliyar explained.

More advanced chatbots have natural language processing capabilities and thus can be more conversational, to solve problems that go beyond simple user options to get them to the right place.

For developers, creating an application that employs chatbots starts with defining the level of interaction with the customer. It then encompasses integrating with all the possible channels a user can come to the organization through, whether Slack, Hipchat, Skype for Work, Facebook Messenger, and so many more. “Each channel has its own communication mechanism, so developers have to think that through,” he said. And, the developer must deal with queuing, error handling and protocols, as Uliyar said there is no standard way of doing those integrations.

Then, there are AI algorithms that must be selected, such as API.ai or open-source AI libraries, and there are pros and cons to each, he said. “How much do developers need to know if building their own chatbot applications? There is a lot to know. Which algorithms to use, how to tune the system …”

Finally, this all needs to be integrated to systems of record, where data is stored and from where it is retrieved, including databases, CRM and ERP systems and more.

Uliyar offered up some best practices for implementing chatbots:

  1. Always have a hel[p feature. “The user doesn’t know what a bot can or cannot do,” he said. “If the bot can’t answer a question, it should explain what it can do. If that doesn’t help, it should transfer the call to a human agent with context about the conversation and the data collected.
  2. Make sure the customer knows he’s talking to a chatbot. “When you look at that psychology, you know its limits and change your expectations. You’ll likely remain calmer,” he said.
  3. Make sure the chatbot can understand when the customer is upset. “Is the user typing in uppercase? Is he using emojis? If so, just hand the call straight off to an agent,” he said. “You don’t want the bot to upset the customer further.”
  4. If the customer repeats a question, hand it back to a human agent, but close the loop so the bot can learn from the agent’s action.

Which brings us back to “instant apps.”

Let’s say you’re on a bank website or mobile app, and have asked a chatbot a few questions about loan interest rates, repayment terms and more. They you decide to apply for a loan right there. Uliyar explained that you don’t want the bot to send you to a web page or a form for you to fill out to apply for the loan. The bot already has a lot of pertinent from your unstructured conversation; now it needs the structured information to complete the application. So the application or web page can offer up a pre-populated form that has the information it already has learned from the customer, and the customer needs only to fill out any remaining unanswered fields, and can even change loan amounts or repayment terms if he wants.

“Instant apps,” Uliyar said, “are like having micro apps that perform particular functions or processes based on what conversation was had.”

We’re already seeing them in the wild.

About David Rubinstein

David Rubinstein is editor-in-chief of SD Times.