Design a Chatbot on MS Teams. Part 2

Tania Mogil
SoftServe Design
Published in
7 min readApr 29, 2020
Photo by Kelly Sikkema on Unsplash

You are going to read the second part of the article, the first one is here (MS Teams bots capabilities.

Making your first conversational flow

As soon as you’ve defined the type of chatbot, its intelligence level, and scope, you can start creating a conversation flow. It’s better to use primitively simple words and phrases during this stage, as you might need to frequently add/delete responses.

Let’s look at a simple example of an enterprise chatbot, which aims at facilitating the communication process between the colleagues in one company and see how we can design it using the guidelines below.

Make a basic flow

You can start from a basic one which is a happy path: greeting, new request, success. Hand sketching helps quickly produce ideas when starting:

… and then digitalize your first sketches by adding more details.

Here you go, the first draft is ready for feedback.

Get the first feedback from the team and add more scenarios

Ask your team to give the first feedback on the concept. Is it acceptable enough to move on? Improve your flow with each iteration by adding more branches, depending on cases your user may encounter. Include fail cases and remember that fails can be “achieved” by the user in different ways.

Include a legend. If you are going to share the flow with your colleagues, it would be better to include a legend for better interpretation. Still, it’s not compulsory.

Mind the cases for (useful recommendation from Microsoft):

· Recognized questions — e.g. How to create a meeting in MS Teams?

· Recognized non-questions — e.g. Hello!

· Unrecognized questions — jfgogb,jgg

“I need help” case

Add a “Help” case, when the user wants to start from the beginning and cancel their current request or simply rollback.

It may be a command in the Command menu, which is named “Help” or a message indicating how to form requests.

Chatbot Personality

A chatbot should represent your brand identity and befriend your user to involve him/her in an enjoyable interaction. Who is going to be a frequent user of your product? User research here will be extremely handy, as it will reveal the age of your audience, social peculiarities, common behavior patterns, and pain points.

This is what you should work with to befriend your user — enable your chatbot to mirror your users and solve their main pain point(s).

The meme is taken from https://imgflip.com/i/2ddb0g

Etiquette & Communication Manner

When you’ve defined the user persona, it’s time to craft your communication flow with proper voice, tone, and wording, reflecting your user’s personality.

At this stage you may ask a copywriter or content strategist for help — they know how to use words properly to attract the attention of a specific audience.

Be human, but don’t overdo it

Sound like a friend, not like a grumpy cat. Despite being a robot, your chatbot shouldn’t behave this way. Include some friendly jokes, people like to have fun! Creative responses that will strike a chord.

The user should understand that they are interacting with a bot, not a human. If you are designing your chatbot to pretend it is a human, you are likely to face a penalty — like in California where B.O.T (“Bolstering Online Transparency”) Act or California Senate bill 1001 says that it is illegal for bots to represent themselves as humans.

Wondering how? Just say that you are a bot. Something like this will save you from illegal actions.

Keep the language simple

Avoid using regional slang if your audience is broad, and do not use acronyms or abbreviations that may be unclear.

One more thing — keep in mind that not everyone can fully understand technical language.

Communicate your goal from the start

Give a value proposition of your product at the beginning of the communication flow, before the user takes any actions. Make the user interested first while communicating the purpose of your product properly.

Make your chatbot’s responses easy to read

People won’t read too much text. Use different text styles for attracting attention to the most important things. Benefit from bulleted lists to highlight options to choose from (like in the visual example above from the “Do” section). Detailed guidelines can be found in the Microsoft Documentation for adaptive cards.

React on some basic phrases

You may be surprised, but… People say “hello” and “thanks” to bots! Reflect on how your bot will react on that and invent some creative responses.

Meme taken from https://chatbotsmagazine.com/why-you-shouldnt-be-testing-your-bot-on-your-own-57bc42fc7efc

People can greet, thank, and say goodbye in different ways. Elaborate on which alternative greetings/goodbyes/thank you phrases your user may use with your developer or data scientist and include them to the chatbot’s knowledge base.

UX best practices to keep in mind

Basic functionality in bot section, more tweaks in the tab

If you create a personal app for Microsoft teams with a full variety of functions and a chatbot is a part of it — you can demonstrate some basic functionality in the bot section with an invitation link to the tab (Hello, deep linking functionality) with a richer set of features. Why is it a good practice? Demonstrating a full variety of functions with the help of a chatbot may supersaturate your user with communication and make them tired of your chatbot. People sometimes can be tired of communication, so leave some space where your user can be on their own.

Include a Command menu

Do not underestimate the power of the command menu, as it helps your bot communicate its capabilities directly and save user’s time by choosing the appropriate command from the list.

Do not give too many results for the inquiry

Try showing 7 +/- two results in a single message (Hello, Miller’s law).

Another solution on how to deal with a large variety of results is to provide a link where the user can sort and filter results.

If your app is not installed, inform about it

Let a user know if the app is not installed and share the next steps — buttons, links — anything that may be useful and help the user proceed. You can do it with the help of your chatbot or leave these directions in the empty tab — or even better, use both. If the app is already installed, start with a greeting and communicate the value proposition of your product.

Empty tab with directions

Warn before sending away

If you are going to send your user somewhere outside the messaging platform (e.g. open a website), let them know about it beforehand in the chatbot’s message.

Do not make an appearance out of the blue

Try not to initiate bot without the user’s request or at least try to activate it in appropriate cases only. If the user is bothered too much, you’ll have two outcomes: best-case scenario, they will give you the cold shoulder, worst case — you’re blocked forever.

Teams components for a chatbot

This is what Microsoft has defined in detail.

Text messages and replies are in the form of cards, which are used not only for chatbots but for the apps as well. The cards are adaptive, so users can enjoy using your chatbot on mobile too.

Depending on your needs, there are different types of cards: carousel, digest, lists.

Typography is also formed in a smart way. You can use titles to “hook” the user for what’s most important. Remember that people do not like reading excessive text and usually do not pay much attention to envelope text — so you can include the details here.

Images will help you demonstrate the product, or offer a variety of options the user may need.

Summary

Take the following steps to create your own chatbot in Microsoft Teams platform:

1. Define a purpose. Your chatbot should communicate clearly what it has been made for and which problem it solves.

2. Choose the chatbot type and define the required language complexity. Understand whether your chatbot will have memory to learn from a previous conversation with users and how complicated the flow will be (e.g., linear w/o NLP).

3. Define the scope — will users be able to add your chatbot to a group chat or channel or is it available for 1:1 conversation only?

4. Define whether your chatbot will be a part of the app or it will be a stand-alone entity covering everything in the chat area.

5. Create a conversation flow with some basic wording.

6. Conduct user research and define chatbot’s personality.

7. Define your tone of voice and enrich the flow with more advanced phrases and words.

8. Mind some best UX practices.

9. Use adaptive card guidelines from Microsoft

Voilà! The chatbot is ready for testing!

--

--