As we’ve discussed in other posts, defining what a chatbot is is not a straightforward process if you recognize that chatbots functionality can go well beyond the conventional definition of software that converses with humans (and bots) inside a chat platform.
In this post, we will go further to discuss the role chatbots will play in the future of software.
Regardless of what we hypothesize here, what will determine the success of chatbots are the killer use cases. And the killer use cases to some extent will depend on how chatbot technology develops and how the wider tech ecosystem developers.
It appears at this moment that augmented reality and virtual reality are set to play an increasingly important role in software and chatbots definitely have a role to play here. Especially regarding voice interfaces.
The proliferation of voice interfaces such as Alexa, Siri and Google Home already give us some clues as to the future. A chatbot assistant that is always with you and that assists you in a similar way to the way a human assistant seems a feasible vision of the future to some extent.
At the very least, even now, natural language processing (NLP) works well especially in capturing one of instructions and intentions. It’s not flawless of course and the user still needs to be “trained” to some extent in terms of understanding what the valid phrases to use are, but it works pretty well.
Whether the chatbot will ever pass the Turing Test is an open debate, but even with the current state of NLP chatbots can be useful.
For augmented reality and virtual reality voice interfaces make sense. They also make sense for other devices such as cars and IoT devices where the human is likely to understand more or less exactly what they want to do and will not be in a position to use a touch interface.
Voice doesn’t work so well for doing iterative tasks in a conversational way and probably won’t be used this way much in the near future at least.
Not only is it harder (or impossible) to get this right from a technology point of view, but graphical interfaces are a lot better for doing many tasks than using text or voice instructions. If you don’t believe me just try to instruct your colleague on how to build a spreadsheet you want to be built rather than building it yourself.
The spreadsheet example is instructive because it shows you where the value of voice and text instructions starts and ends. If your colleague already has a lot of relevant domain knowledge regarding what you want to be built then it is much quicker to instruct them with voice rather than build the spreadsheet yourself.
For example you could say:
“Build a sales spreadsheet using the sales template I prepared using the sales data from the XYZ system”
If your colleague understands the references you are making they can complete the task without more information.
If they don’t have a lot of domain knowledge then building it yourself is easier. The same applies to chatbots.
This gives you some idea as to why chatbots are the future but also about how to create bots that look to the future.
It is interesting to note that Google has already added this type of text instruction functionality to their spreadsheet tool (sheets) by which you can ask questions about your data or create a chart.
Even in this case, where the difference in the number of clicks is small versus creating the chart manually, the advantage is large.
Creating the chart yourself is slower and requires more mental and physical effort because of the precision involved in selecting the exact cells you want to operate on and ensuring that all operations are done in the exactly the right order.
This small example, we believe, gives you some insight into the future of chatbots.
The graphical interface will be tightly integrated with the bot for one thing. Not only will you be able to give the bot instructions or ask it questions about services or about what you see graphically, you will be able to access the same bot over different channels (say different messaging platforms) and in different ways (voice, text, GUI).
To achieve true usefulness bots will need to have not only a tight two way integration with and deep domain knowledge of the services they can provide, but they will also have to have a deep knowledge of the customer information including access to general features, like payments for example, that are relevant across many different operations.
There are of course limitations to bots at the moment which prevent them from achieving the goal of being the perfect assistance.
Some of the issues are solvable, like working out the best way for the bots to be integrated with app domain and with the personal domain of the customer. Other issues, like achieving a human-like intelligence are more difficult to solve.
This means that features such as human in the loop (the ability of a human to take over from the bot if it fails to perform appropriately) are likely to be part of bots for a while at least.
We hope that this gives you some idea of the role that chatbots can feasibly play in the future of software and why there is no doubt that they are the future.