When I started designing chatbots for BEEVA almost a year ago, I applied some of my UX knowledge and did some unsuccessful research looking for tools that could fit my needs. Actually, I was quite amazed that I couldn’t find practical literature about the topic. There are tons of chatbots out there, but there’s little about how companies really get hands on.

I already shared some of my findings here, and here, with tools I found, general knowledge about designing chatbots and UX design applied on chatbots, but I think it would be great to make a deeper explanation about how I exactly face the situation on a regular basis.

If you are looking for a conversational and VUI designer reach me at jesusmartin.eu

My Framework

While many people immediately start thinking about how to manage the user flow, I separate my process into 4 different steps: the bot scope, the chatbot personality, a prioritized list of must-have features and the chatbot flow.

1) The Bot Scope

It basically explains what the chatbot is all about. It might seem silly but it is really important to make clear what people can expect from our chatbot. This is normally a business decision that comes from Management, but sometimes the opinion of a designer is needed to set the focus on what really matters. The last e-commerce chatbot we developed was meant to be useful by helping people decide which technological product they should buy, and which vendor will be offering the best price.

2) The Chatbot Personality

I take this part really seriously. The personality of the chatbot is one of the most important points to take into account if we want our assistant to succeed. I always start researching who our early adopter will be and in which situation they will be talking to the chatbot. Once that I got a clear picture, I tailor-make a personality that fits perfectly with the user and with the specific situation. Defining in advance how our chatbot is going to be will help us eventually to decide how the bot will talk and act in every situation.

Featured CBM: Designing a Chatbot’s Personality

3) A Prioritized List of Must-Have Features

What information any user would need from our chatbot to find it useful? In the example I mentioned previously, for the e-commerce chatbot, we researched among different retailers and users to come out with the next list: Updated product database, pictures, comments, specifications and prices from different vendors.

4) The Chatbot Flow

Obviously this is the most complex part, but I never give any step forward without knowing the previous ones. Once that I got all that information is time to start designing how the chatbot will behave in every possible scenario in its interaction with every user.

I always use Xmind for designing the flows from scratch. It’s easy to use and really fast if you want to make any changes. The first thing I need to do is create a color legend with every possible item I will include on the chatbot.

Because at this point the scope has been set, I need to take users to the functionalities that I cover. In the e-commerce chatbot I was able to give pictures, opinions, details and prices for technological products. Because the best way to set the scope is making it clear in the welcome message, that is the first thing I write down in Xmind. Right after, I point out every possible scenario the bot will need to deal with. In the example:

1- Don’t know: the users says anything the chatbot won’t ever be prepared to answer.

2- Known category: the users asks for a category of products the chatbot knows.

3- Known brand: the user asks for a category and a brand the chatbot understands.

4- Known product: the user asks for a category, a brand and a model the chatbot knows.

It actually looks like a gradient of success: from desperation to heaven.

The First Scenario Is the Saddest One

You can do little but trying to get the user back to your scope: remind them what you are meant to do or give them some examples.

Second and Third Scenarios are Great

They mean that the user is on its way. You only need to help them to give you the remaining information: whether suggesting them some brands of the specific category or going directly to well known models. Nevertheless, chatbots need to be designed for any possible misunderstanding in every step. That means that a specific error message needs to be set just in case the misunderstanding happens. That would help us to get the user back to the scope without restarting the whole process.