top of page
Writer's pictureSean Lazo

Human-Centered Bot Building Tools Framework

A framework to applying human-centered design thinking to the complex and heavily tech-driven world of AI chatbot building tools, using intuitive mental models and product philosophies that place humans creating them at the center.


What makes this framework unique?

Numerous books on designing AI chatbots focus on the advantages of bot integration and AI technology. However, none focus on the process, preparation, people, and tools to build bots. I examine how we might imagine simplifying these processes to better understand them, socialize them, and design great tools.




Contents

  1. Who's this for and what's its purpose

  2. What makes this guide unique?

  3. Today's world of chatbot building is complex

  4. Why I'm writing this

  5. How products have failed

  6. How the industry could succeed

  7. Example chatbot building tools

  8. The evolution of UX design in AI

  9. Evolving human-centered bot building

  10. Chatbot: Deep understanding of how humans will interact with the bot to achieve tasks

    1. Tasks: What human need the bot's help for

    2. Access: Where humans can use the bot

    3. Interact: How humans use the bot to fulfill tasks

    4. Conversation cycle

    5. Example customer use case

      1. Simple conversation

      2. Enhanced conversation

  11. Input

  12. AI: Deep understanding of how humans build bots

    1. Data scientists: What the bot thinks through NLP and intent recognition

    2. Bot developers: What the bot does through API processing and logic routing

    3. Conversation designers: What the bot says through flows, content, and interfaces

    4. Conversation cycle

    5. Example customer use case

      1. Simple conversation

      2. Enhanced conversation

  13. Build

  14. Tool: Deep understanding of how humans will come together in a tool to build bots

    1. Model: Humans understand the mental model of building bots

    2. Self: Humans build bots independently

    3. Efficient: Humans build bots easily and quickly

    4. Conversation cycle

    5. Example customer use case

      1. Simple conversation

      2. Enhanced conversation

  15. Deliver

  16. How does it all come together?

  17. Functions and interactions for sophisticated bots

  18. Adapting the Human Centered Bot Building method to tools

  19. Tool functions for efficient bot building

  20. Conclusion

  21. Resources & references


 

Today's world of chatbot building is complex

With many AI chatbot building tools out in the market, and many businesses interested in creating AI systems to support their customers, it's time to simplify, mature, and humanize the chatbot building process and tools, as the need evolves towards broad use for just about anyone and for anything. These tools are traditionally complex, requiring hand-coding, model building, linguistics experimentation, and conversation design from multiple practitioners to build a single bot. Businesses that have used these tools are constantly looking for the next efficient tool available to build out sophisticated bots, cheaply, with less effort, less people, and greater impact. Product teams that have build them struggled with simplicity, minimalism, requirements definition & prioritization, and adoption.


Our key problems:

  • Chatbots are challenged with helping users

  • Practitioners are challenged with building chatbots

  • Product teams are challenged with building intuitive chatbot-building tools


How might we understand the human factors that are key to building sophisticated AI chatbots?

Why I'm writing this

I am a Principal UX Designer at [24]7.ai who has led the inception and assembly of [24]7.ai Conversations, an AI chatbot creation tool, established in 2018, to its ongoing initiatives and growth today. I have spent the last 5 years learning, designing, and researching the intricacies of conversational AI chatbot building. I have repeatedly failed at articulating and delivering exceptional user experiences for our development tools, resulting in poor adoption, unusable workflows, misdirection, and misinterpretation. I have continued to optimize and develop a method and system for defining requirements and great UX mental models for AI chatbot creation, resulting in simplified and usable products.



How product teams have failed

  • Not appropriately defining the user problems

  • Inability to articulate the bot requirements: Every product practitioner speaks a different language, articulates differently, and has different goals.

  • Not defining the real problems at the start of the project: Problem statements are not written correctly in user-goal form, are defined too late in the schedule, or never really defined at all

  • Not allocating sufficient time to research, collaborative work sessions, design, and test: Designing and implementing too fast without confidence of understanding the problem and product goals

  • Lack of cross collaboration from all experts

  • Poor usability due to tech constraints and fast implementation.

  • Forgetting to cross-check against all dependencies: ensuring all factors are considered through product strategy and development

  • The tool is too complex and technical



How chatbot-building tools have failed


Pitfalls

  • No guidance or coaching

  • Requires expertise

  • Requires proactive building

  • Passive piece meal building

  • Purely form-based

  • Dispersed areas of relative content

  • Tech terminology, tech persona

  • No visualization of chatbot interactions

  • Submerged/indiscoverable conversational flow elements



How the industry could succeed

  • A common and simple method for speaking about the bot's experience will help product teams define the bot functional requirements

  • Intuitive mental models for product experiences will help product teams understand how to design great bot-building tools



The evolution of UX Design in AI

From its origin, AI has been constantly evolving, with inventions of new approaches and thought processes to help develop and control it for the better use of humanity. AI has a stigma that is perceived to be simple in usage but complex in development. Below is a timeline of how design has helped shaped AI's use, value, and understanding.



Evolving human-centered bot building

The timeline above illustrates the different factors of AI development and design, from the technology creation, ethical practices, and user experience design. Human-centered bot building encapsulates the understanding of all of those aspects into one, to build cohesive and usable bot-building tools.


Here's how the UX team takes a human-centered approach to designing bot building tools, placing human-centered principles at the center of its processes & thinking, and the factors surrounding it.


Disclaimer: human-centered design is not about humanizing the bot, but about placing humans at the center of product creation as a means to create tools that are user-centered and usable by humans.





The Human-Centered Bot Building diagram above is envisioned as a circular process made up of 3 parts that connect to one another in a sequence: Chatbot, AI, and tool. Each of these 3 parts consist of 3 functions that are critical in understanding how they impact the user that is interacting with the bot and the tools to create them. The understanding of all parts come together to enrich the creation of exceptional tools that enable humans to build sophisticated bots. Let's examine each part and function.



Chatbot: Deep understanding of how humans will interact with the bot to achieve tasks

The interaction between human and bot is still very unnatural. Bots are transparent about its purpose and functions and is portrayed as a smart system as opposed to a human alternative. The language in which humans speak to bots, and how bots speak to humans, is still deliberately unnatural for language clarity and processing. Understanding how the bot needs to function to help humans, and how humans expect to use the bot to help achieve tasks, will further clarify the factors considered to help build sophisticated bots and tools.


There are 3 key functions that represent an interactive chatbot, all of which need to work together to ensure proper engagement and presentation of the bot:

  • Tasks: What humans need the bot's help for

  • Access: Where humans can use the bot

  • Interact: How humans use the bot to fulfill tasks





Tasks: What humans need the bot's help for


The user journey to using a bot starts with the user needing help with a particular problem, getting information, or achieving transactional tasks. Examples of tasks can include: getting information about carry-on luggage for a flight, setting up a remote control, or booking a flight. These tasks differ in complexity, ranging from simple question/answer interactions to complex journey requiring user information, service integrations, and form filling.



Access: Where humans can use the bot


Users will typically go to a business website and track the customer service phone number or initiate a chat with a bot. A voice bot could also be present through the customer service phone number. Bots are instantly available and could serve users quickly at any time of the day.



Interact: How humans use the bot to fulfill tasks


Users can either speak or type messages to a bot depending on the modality that the bot is available in or of their choosing. Each modality have nuances and require special interactions. The differences between voice and digital is: voice has no visual, and digital is all visual. Voice requires more attention and is time sensitive, since the users have to listen and pay attention to the responses. This affects conversation design, because bot responses need to be short and concise. Digital could be more passive in that users can take their time to read and respond to the bot. Handling information gathering is different in each modality: digital can use forms, and voice needs to ask the user for each info one at a time audibly.



Conversation cycle


The paradigm below outlines a philosophy on how creators and everyone involved in designing, building, or managing these tools must speak or think about the bot's interactions. The creation tools must represent this thinking in order for creators to understand how to build the right user experience for their bot and to contribute the appropriate content and tasks to build out the bot.



Example customer use case

The customer needs help switching their airlines flight departure time. The customer calls the company or accesses the customer service chatbot on the company's website. Here is how to design this bot conversation with the ITDS method:


Simple conversation




  1. As a chatbot builder, I will enter phrases that the end-user tells the bot. ie: "please help me switch my flight departure time", or "switch flight", or "change itinerary".

  2. As a chatbot builder, I will map these phrases to an intent I call: Change Flight.

  3. As a chatbot builder, I need to authenticate the user so we can recognize their existing flight plan and profile information, so I will integrate APIs and logic rules.

  4. As a chatbot builder, I will create the bot response that is said to the end-user if they are authenticated: "Sure [name], is this for flight [confirmation code] from [departure location] to [destination location]?".

  5. As a chatbot builder, I will build out the rest of the flight change journey.


Enhanced conversation

The chatbot builder can enhance their conversation to include variable pathways dependent on the user's state or answer. The example below extends a simple conversation to a complex one, requiring variable API checkpoints, logic routing, and tailored messages.

  • What if the bot can't identify the user, or if the user doesn't have existing flight info The bot would need to collect information from the user (as depicted below in blue parallelogram 'API doesn't return user's flight info).

  • What if the bot verifies the correct flight info? The bot would confirm the flight and offer other options (as depicted below in gray message bubble 'Yes').

  • What if the bot verifies the incorrect flight info? The bot would need to check or ask the user for another flight of theirs (as depicted below in gray message bubble 'No').





  1. As a chatbot builder, I will create the bot response that is said to the end-user when they are not authenticated: "Please tell us your flight confirmation code."

  2. As a chatbot builder, I will build out the flight info confirmation journey by including the user input, intent recognition, API, and bot message.

  3. As a chatbot builder, I will create the bot response that is said to the end-user when they confirm that the flight is wrong: "Which of your scheduled flights did you want to change?".



Input


Once users interact with a bot, they will either type, speak, or select (click or tap on a touch tone selection via phone or menu option via visual interface) - giving input to the bot. When this input is given by the user and received by the bot, the bot's AI will undergo processing to first interpret the input, recognize what the user intention is, then return the appropriate bot response. In the section, we'll detail out how humans work on the AI aspects of the bot.




AI: Deep understanding of how humans build bots

There are 3 key practitioners that work together to build bots, all with varying expertise for different facets of the bot:

  • Thinks: Data scientists build the bot's IQ through NLP & intent recognition

  • Does: Bot developers build the bot's functions through APIs & logic

  • Says: Conversation designers build the bot's responses & flows






Data scientists: What the bot thinks, through NLP and intent recognition



Data scientists build upon the bot’s intelligence to ensure the bot understands what the users say through Natural Language Processing and intent mapping. Data scientist build models that try to achieve high intent recognition accuracy by developing algorithms and methods that enable machine learning. To simply put, they examine all the possible words and phrases that a user says.


Bot developers: What the bot does through API processing and logic routing




Bot developers build upon the bot’s performance and functions to ensure the bot is working efficiently, accurately, and returning appropriate data to the user. Bot developers build the scenarios that determine which function, data, or conversational pathway to present to the user using APIs and logic routing. To simply put, they examine all the possible use cases, functions, and data that a user would need to fulfill a task.



Conversation designers: What the bot says through flows, content, and interfaces





Conversation designers build upon the bot conversational responses and flows, to ensure the bot is helping the user fulfill their task efficiently through a series of steps. To simply put, they design for all the possible uses cases that a user would potentially do.



Conversation cycle



The paradigm above outlines a philosophy on how creators and everyone involved in designing, building, or managing these tools must speak or think about the bot's interactions. The creation tools must represent this thinking in order for creators to understand how to build the right user experience for their bot and to contribute the appropriate content and tasks to build out the bot.



Example customer use case

The customer needs help switching their airlines flight departure time. The customer calls the company or accesses the customer service chatbot on the company's website. Here is how to design this bot conversation with the ITDS method:


Simple conversation




  1. As a chatbot builder, I will enter phrases that the end-user tells the bot. ie: "please help me switch my flight departure time", or "switch flight", or "change itinerary".

  2. As a chatbot builder, I will map these phrases to an intent I call: Change Flight.

  3. As a chatbot builder, I need to authenticate the user so we can recognize their existing flight plan and profile information, so I will integrate APIs and logic rules.

  4. As a chatbot builder, I will create the bot response that is said to the end-user if they are authenticated: "Sure [name], is this for flight [confirmation code] from [departure location] to [destination location]?".

  5. As a chatbot builder, I will build out the rest of the flight change journey.


Enhanced conversation

The chatbot builder can enhance their conversation to include variable pathways dependent on the user's state or answer. The example below extends a simple conversation to a complex one, requiring variable API checkpoints, logic routing, and tailored messages.

  • What if the bot can't identify the user, or if the user doesn't have existing flight info The bot would need to collect information from the user (as depicted below in blue parallelogram 'API doesn't return user's flight info).

  • What if the bot verifies the correct flight info? The bot would confirm the flight and offer other options (as depicted below in gray message bubble 'Yes').

  • What if the bot verifies the incorrect flight info? The bot would need to check or ask the user for another flight of theirs (as depicted below in gray message bubble 'No').




  1. As a chatbot builder, I will create the bot response that is said to the end-user when they are not authenticated: "Please tell us your flight confirmation code."

  2. As a chatbot builder, I will build out the flight info confirmation journey by including the user input, intent recognition, API, and bot message.

  3. As a chatbot builder, I will create the bot response that is said to the end-user when they confirm that the flight is wrong: "Which of your scheduled flights did you want to change?".



Build


Once users interact with a bot, they will either type, speak, or select (click or tap on a touch tone selection via phone or menu option via visual interface) - giving input to the bot. When this input is given by the user and received by the bot, the bot's AI will undergo processing to first interpret the input, recognize what the user intention is, then return the appropriate bot response. In the section, we'll detail out how humans work on the AI aspects of the bot.



Tool: Deep understanding of how humans will come together in a tool to build bots

There are 3 key product principles that must exist for bot building tools:

  • Model: Humans understand the mental model of building bots

  • Self: Humans build bots independently

  • Efficient: Humans build bots easily and quickly



Model: Humans understand the mental model of building bots



Conversation designers build upon the bot conversational responses and flows, to ensure the bot is helping the user fulfill their task efficiently through a series of steps. To simply put, they design for all the possible uses cases that a user would potentially do.



Self: Humans build bots independently



Conversation designers build upon the bot conversational responses and flows, to ensure the bot is helping the user fulfill their task efficiently through a series of steps. To simply put, they design for all the possible uses cases that a user would potentially do.



Efficient: Humans build bots easily and quickly



Conversation designers build upon the bot conversational responses and flows, to ensure the bot is helping the user fulfill their task efficiently through a series of steps. To simply put, they design for all the possible uses cases that a user would potentially do.



Conversation cycle



The paradigm above outlines a philosophy on how creators and everyone involved in designing, building, or managing these tools must speak or think about the bot's interactions. The creation tools must represent this thinking in order for creators to understand how to build the right user experience for their bot and to contribute the appropriate content and tasks to build out the bot.



Example customer use case

The customer needs help switching their airlines flight departure time. The customer calls the company or accesses the customer service chatbot on the company's website. Here is how to design this bot conversation with the ITDS method:


Simple conversation

  1. As a chatbot builder, I will enter phrases that the end-user tells the bot. ie: "please help me switch my flight departure time", or "switch flight", or "change itinerary".

  2. As a chatbot builder, I will map these phrases to an intent I call: Change Flight.

  3. As a chatbot builder, I need to authenticate the user so we can recognize their existing flight plan and profile information, so I will integrate APIs and logic rules.

  4. As a chatbot builder, I will create the bot response that is said to the end-user if they are authenticated: "Sure [name], is this for flight [confirmation code] from [departure location] to [destination location]?".

  5. As a chatbot builder, I will build out the rest of the flight change journey.


Enhanced conversation

The chatbot builder can enhance their conversation to include variable pathways dependent on the user's state or answer. The example below extends a simple conversation to a complex one, requiring variable API checkpoints, logic routing, and tailored messages.

  • What if the bot can't identify the user, or if the user doesn't have existing flight info The bot would need to collect information from the user (as depicted below in blue parallelogram 'API doesn't return user's flight info).

  • What if the bot verifies the correct flight info? The bot would confirm the flight and offer other options (as depicted below in gray message bubble 'Yes').

  • What if the bot verifies the incorrect flight info? The bot would need to check or ask the user for another flight of theirs (as depicted below in gray message bubble 'No').





Deliver



Once users interact with a bot, they will either type, speak, or select (click or tap on a touch tone selection via phone or menu option via visual interface) - giving input to the bot. When this input is given by the user and received by the bot, the bot's AI will undergo processing to first interpret the input, recognize what the user intention is, then return the appropriate bot response. In the section, we'll detail out how humans work on the AI aspects of the bot.




How does it all come together?

The success of a sophisticated bot is contingent on how creators come together to build it through exceptional tool UX paradigms.


Functions and interactions for sophisticated bots

Refer to previous blogs for case studies

  • APIs

  • Logic

  • Entities

  • Grammars

  • Multi-language

  • Cards

  • Vivid Speech

  • Confirmation

  • Standard patterns

    • No match

    • Agent escalation

    • End chat

    • Disconnect

    • Hold and continue

    • Skip

    • Bot processing

    • Global menu options


Adapting the ITDS Method into tools

When designing a bot:

  1. USER INPUT: Start with what the end-user (customer) wants to do. Construct the varying ways a user asks the bot what they need help with, all the possibilities and combination of words, synonyms, and sentence structures.

  2. THINKS: Then, map the user inputs to an intent.

  3. DOES: Next, based on the intent, determine if the bot needs to: a) return personalized information via APIs, b) choose a pathway based on the user's state or condition via logic routing, or c) needs to just send a bot response (if API and logic is not required).

  4. SAYS: Last, construct the bot response that the user will receive. This could be more disambiguation to hone in on the user's initial input, requiring users to further get specific on what their goals are.

  5. Continue the journey by cycling through this process and build out your flow to its completion.


Tool functions for efficient bot building

Refer to previous blogs for case studies

  • Visual paradigm (flow)

  • Folders (anatomy of the bot)

  • Modules (reusability)

  • Optimization (bot performance analysis)

  • History and audit

  • Multichannel

  • Search





 

Resources & References


Comments


bottom of page