Design Considerations for Conversational UX
Note: These are very high level thoughts. In a series of follow-up articles, I would like to dive deeper into each of the concepts described below. The aim is to build a design framework for conversational UX. So please feel free to contribute your thoughts.
It has been a long journey of Humans trying to perfect the mode of communication with Computers. We are now at a stage where we have realised that the best and most natural way to communicate with machines is through conversations.
Communication skills have been a key to success for the human race.
Communicating comes naturally to humans. The first thing that a child learns is to communicate through voice and gestures, writing is forced to us as a mode of communication. The human body comes pre-installed with all the tools to help us communicate — Speak, See, Hear, and Gesture through expression and movement.
If we are trying to achieve a truly enhanced conversational experience with machines, we cannot discount that there is more to it than just visual, verbal and textual communication.
Contextual information plays a big part too. We are able to engage in meaningful conversations when we have additional background information.
I am sure we are not trying to replace humans with machines (though some might disagree), and hence we may not be able to achieve what the human brain is capable of doing. As far as I know, we still don’t understand how our brain works. Scientists are still debating different theories for how semantic and syntactic information are processed⁽¹⁾. Semantics refers to the meaning of the words and Syntax means the rules that our brain uses to combine words into phrases and sentences.
Sound too complicated? :) I’m in the same boat too…
So, the purpose of this article is not to go into the science of the human brain, but to generate a discussion on how (with all the limitations of the technology) we can design experiences between humans and machines primarily driven by conversation. Can we figure out how to design a framework for Conversational UX?
To understand this, let’s try to analyse the key ingredients for generating meaningful conversations. One of the key criteria to even begin a conversation is to have a shared language. Without this, it isn’t possible to even take the first step.
Till now we’ve been taking the effort to learn the language of the machines. Although it works, it has a steep learning curve.
Over a period of time, we have managed to bring down this curve substantially (as shown below).
As you can see, until recently we’d been trying to learn to communicate with machines. We got better and better at it over time, but still we were far away from having real conversations with our machines.
So the first step in creating a better shared language with machines is to NOT change the way we communicate but to make the machines smart enough so that they understand our natural language.
We now want the machines to learn our language.
The reason we want a shared language is because we want the machine to understand our “intent.” It’s a really complex task and this is where all the NLP, ML and AI stuff happens.
If the machine can understand a user’s intent, it is able to have a better conversation with the user.
But just having a shared language and the ability to communicate does not mean we can indulge in meaningful conversations.
For example, if you meet a stranger on the street, even though you might be able to communicate with each other does not mean you can have a meaningful conversation with that person. One needs to build a relationship over a period of time to improve the quality of conversations.
You can draw a parallel here with how any human-to-human relationship develop.
Initially there has to be a lot of sharing of information and hence there is high amount of input from both persons involved in trying to build a relationship. While each person is providing a great amount of information, the ‘quality of returns’ they initially gain is not great.
Over a period of time, as both learn more and more about each other, the quality of returns improve and the amount of information you need to input reduces.
This graph above tries to show how any learning system enhances user experience over a period of time as it learns and adapts to the users needs and requirements.
But relationships don’t just get built by sharing information. A successful and long lasting relationship depends on these 4 crucial parameters:
- Transparency = Trust, Credibility, Confidence
- Feedback = Learn/Unlearn, Grow, Improve
- Engagement = Motivation, Personal, Exploration
- Limitations = Adapt, Empathize, Forgive
Trust, Credibility, Confidence
Any conversational system / application would have greater chance of succeeding if it can be transparent to the user about everything it does.
Many a time, you might have encountered a situation where an app did something and you went, “Wait a minute, how did it know this?” It’s happened with me a few times. The very first time I encountered this was when one evening I started walking towards my car in the parking lot and Google Maps sent me a push notification saying “15 minutes to Home. Traffic moderate.”
That’s valuable information, but I don’t remember authorizing Google Maps to monitor my movement in the background (probably when I accepted the terms and conditions when I updated my app).
So when the app showed me that notification the first time, it could have tried to be a little more ‘transparent’ in letting me know why it took that action. That would have built some trust and confidence.
While designing for conversational interfaces, we should make sure that we provide enough transparency for all the actions that are being taken.
Note: A followup article will dive deeper into designing for Transparency.
Learn/Unlearn, Grow, Improve
The more feedback one receives, the more they are able to improve and enhance. Same applies to any learning system. While we expect the system to learn and unlearn through its usage, the user is also equally responsible for providing the right kind of feedback to the system to help improve it.
So, as a designer of such a system, one must provide the right tools to the users so that they can give constructive feedback to the system and help the system learn where and why the system breaks or does not perform as per users expectations.
But we all know that asking the user to provide such feedback, especially when something did not work the way they expected, would be a hard thing to achieve. So a smart way to deal with this would be to build some kind of intelligence into the system which can identify the instances where the user had trouble getting what they wanted and try to steer the conversation subtly to a path that would help the system gather some key information about what did not work.
“Did you find everything alright?”
(Every time you checkout at CVS you hear this, but I haven’t seen anyone [yet] saying NO.)
It’s the same as any human to human interaction. The way you ask for feedback will decide if you are going to get the feedback or not. The feedback seeking should seem genuine, not mechanical.
Designing such a feedback mechanism is very crucial to the success of building a system that can learn and grow.
Note: A followup article will dive deeper into designing Feedback.
Motivation, Personal, Exploration
If someone shows interest in you or the work you are doing, or takes personal effort to do things for you and encourage you, you are more likely to build a stronger relationship with that person. Humans seek motivation to thrive.
So what would “Engaged” mean in the context of conversational interfaces?
So far, my understanding is that such a system would have to be much more proactive rather than just serve ‘relevant’ information or ‘answer’ question.
It would need to have the ‘behaviour’ of inquisitiveness.
If it observes that I have been seeking information about say Arduino tutorials, buying breadboards, checking out blogs on IoT, and then one day asks me, “What are you building? I would love to know” or “I see that you have been exploring electronics, have you ever tried to build your own PCB using copper plates? It’s fun and easy, I can show you how it is done”. That would be so “human like”—personal, engaging and motivating.
Note: A followup article will dive deeper into designing Engagements.
Adapt, Empathize, Forgive
Finally, no one is perfect. We all understand that and hence we easily empathize with fellow humans.
While machines have been taught to be empathetic to humans, humans never want the machine to fail (because it’s a machine).
When we use autocorrect while texting, it’s the machine being forgiving to our mistakes.
In the same way, a machine learning system is not a perfect machine. It will do probabilistic matching, hence it is going to fail at times and we will need to “Autocorrect” it. And the machine being machine, is less likely to repeat those mistakes, much like us.
Limitations are also not just about mistakes, they are also about what are the machines capabilities. Hence we should design the conversational user experiences such that it allows for open and honest communications. Allows the machine to expose its limitations and not pretend to “know it all”. But do it in a way so that it creates empathy for itself.
Note: A followup article will dive deeper into designing for Limitations.
Invitation to participate
As mentioned, these are some very initial thoughts on figuring out a design framework for Conversational UX.
I would love to have a highly engaged discussion around this as this is still such a new field for UX designers.
We are all trying to experiment different things and figuring out what would be the best way to design for:
- Systems that learn over a period of time.
- Systems that can talk, speak and understand users intents.
- Systems that are sometimes self-evolving and sometimes trained.
- Systems that have not even been designed yet, but are not too far from being created.