Practices
Create agents that converse, inform and delight.
Onboard Users
Conversational agents should always be able to talk about what they can do or what they know. They should be able to handle preliminary questions like, “Can you help me find a restaurant?,” “Do you sell movie tickets?” or simply “What can you do?“


Progressive Disclosure
Progressive disclosure is an interaction design technique that breaks down information into sequences in order not to overwhelm end users. Provide next steps sequentially and break down a process into bite-sized chunks. This is especially important for voice-based agents where the conversation history must be memorized. For example, if a user asks, “What’s a good restaurant to go to?,” elicit additional details one at a time: “What kind of food are you in the mood for?,” “Within walking distance or a short drive?“


History
Relaying the current state of the conversation to the user will differ depending on the interaction modality. In text-based interactions, consider dividing a chat history into breakpoints. Provide these as conversation landmarks, so that the user can successfully review the history of a conversation. In voice-based interactions, use repetition tactfully to not only provide feedback but also to mark location.


Artifacts
Whenever possible leverage the medium to facilitate the conversation. Just as in human conversation, an image or visual aide can sometimes complement the utterances. For example, an image of an object can establish a referent when the name is not known, or a map with an X can better relay complicated instructions than words.


Multimodal Feedback
Give the user feedback through the conversation and the visual user interface (if present) to illustrate whether or not a request was heard or an action took place. For example, a simple “One moment please” and a spinning wheel can show the user that the system is working on a request.


Fail Gracefully
Don’t be afraid to let the conversational agent admit a lack of understanding. Sometimes humans don’t understand each other either. Display what the agent does understand so the user can better diagnose and repair the trouble. For example, “Do you mean, can I recommend a restaurant?” or “Do you want attractions in Rome or flights to Rome?“


Personality
Construct the persona of your agent somewhat like you would for your user. How serious or professional do you want your agent to be? Enable your agent to employ humor and emotion in ways that are consistent with its persona. For example, your agent might give a humorous response to “How are you doing?” or an emotional one to “You’re not very smart.“

