Blog post -
How to design a chatbot
As a user experience (UX) professional, visiting one of the great UX Monday after-work events has been on my agenda since I moved back from London to Munich. The event is set up to facilitate exchanges between UX professionals, designers, product managers, developers, and anybody else interested in UX and product development.
Instead of simply being a visitor at one of last year’s events, I had the chance to contribute with a talk and I’d like to share some thoughts on our topic for this terrific but challenging experience. The topic that my colleague Tessa and I talked about was “Diverse Data is King: How to use the Crowd to improve the UX of Conversational Agents”. In short, we gave our insights into how to test what is usually known as a chatbot. But what is a chatbot? Interestingly, the term itself is young but the idea is old. If you delve deeper you will find that the term “chatbot” is newly coined, but the concept is already over 50 years old. It started in 1966 with the chatbot ELIZA, later evolving with IBM’s Watson in 2006, Google Now in 2012 and Facebook Messenger chatbots being available since 2016.
There are a lot of good, as well as not so good, chatbots. We chose to have a look at the best chatbot – a multiple winner of the Loebner prize – to get a feeling of what is currently possible. Mitsuku is considered the best, or at least the most “humanlike” chatbot, and was developed as a virtual friend that can answer questions, play games, and is capable of basic reasoning. If Mitsuku piqued your curiosity you can have a chat with her here. Some of the interesting questions we discussed were: “What does the chatbot topic mean for you as UX professionals?” and “How do you design for chatbots and how does it vary from conventional UX design?”
Although the chatbot UX is very different from the “traditional” UX design process for graphical user interfaces (GUIs), they have more things in common than you’d think. We’ve summarized the most important things to consider:
User flows are NOT the same
If you have a flow in mind for a “traditional” GUI and think you can transfer it to a conversational flow, you’re wrong! Users will use chatbot interactions to achieve different goals and will also behave differently than while using a chatbot. That’s why you should find out what users would want to do with your bot, how they want to do it, and at what point.
Think about the context
Keep in mind that you are not building a new website or app. You’re integrating the chatbot into an existing environment so you have to ask yourself where it will be integrated (e.g. shopping website, social media bot, …), and in which circumstances the users will be using it.
Make sense of use cases
As the entire flow itself is different, it doesn’t make sense to redesign an existing feature into a chatbot conversation – buying shoes in a chatbot interaction does not make sense whereas reordering a simple grocery item could. It’s important to understand which situations people will feel comfortable using textual input or voice, or which situations they will be more efficient compared to alternative input methods.
Personality is the key
To be honest, this is the most exciting part for visual designers. Instead of just caring about grids, colours, and guidelines, you now get to design a complete personality for the bot. While doing so, you should keep in mind what kind of personality your chatbot is supposed to embody. Start by creating a persona and finding out what best fits the company or product it represents. How does it feel human? What does small talk mean? How intelligent should it appear to the user?
Take your time to design the language – your new profession as UX writer
This is the part you should be spending the most time on since it’s the main interaction element. Team up with a language specialist to find the right tone of voice. Think about how formal or informal the chatbot’s language should be, and what kinds of words your target users might use while talking to it, so that your chatbot can answer with the “same” voice. To meet all these requirements, you’ll have to collect a lot of data from your target group (as you can’t come up with all potential phrases on your own).
Welcome the user with a friendly welcome message
What is the first impression your user should get? For you, this is the opportunity to create a bot that pleasantly greets the user, sets expectations of how it can help the user, and provides essential tips and instructions for the optimal use of the chatbot.
Just like first impressions shape our relationships with other humans, the user’s first interaction with a chatbot can make or break the experience of the chat session, and determine whether or not the user will return.
Talk about failure
Failure is acceptable, but you should never leave a user’s message unanswered. This leaves the user alone and in a strange state, similar to how we feel when our messages to friends are met simply by “Seen at 2:02 PM”. The way to avoid upsetting the user here is with the usage of failure messages that help compensate for flaws. These messages have two objectives: Firstly, they should acknowledge the failure in a remorseful tone. Secondly, they should provide an opportunity for the user to overcome the failure, or extract valuable feedback from the user in order to prevent the failure in the future.
Iterate and test with your target group
Although it’s crucial to test visual designs with your users, it’s equally important to test conversational interactions with your target group. Observe what users input and what they expect, get screen recordings of what users do with the chatbot, and gradually improve through repetition.
But conversational agents still fail to provide great UX!
How can we close the gap between vision and reality? The answer is: train your bot the right way!
Build your bot up slowly, but consistently:
- Start with the core intents
- Train all intents sufficiently to avoid under- and overtraining
- Use as many different users as possible
- Limit their individual input and train in iterations if possible
- Consider what kind of training fits your intents best
- Never stop training your bot
This blog post was originally published on Testbirds.com.
- Working life
- artificial intelligence