Do you want to learn a new language? Need help fighting that parking ticket? Now there’s a bot for that! Thanks to advances in artificial intelligence, human beings and businesses can now automate and outsource their most tedious tasks to a bot.
The most obvious benefit of using chatbots is that they can automate repetitive tasks like answering questions, so you can free up time for more fun activities like binge-watching Netflix 😉
Before we dive into the details of what it takes to build a chatbot, let’s get the basics out of our way.
What is a Chatbot?
If you’ve spent any time online recently you’ve most likely come across a bot also known as “internet/web robot”. A bot is a piece of software code designed to run automated tasks/scripts. Bots gained notoriety during the 2016 election because of their role in amplifying fake news.
Chatbots are more advanced versions of bots and operate through “conversational” interfaces, which allow two-way interactions. Chatbots can be as simple as Q&A bots (ask a question and get an answer) or more sophisticated like Siri or Alexa (Amazon Echo) with more human-like context and interaction.
10 Questions You Need to Answer Before You Get Started.
Many new (technology) projects fail because folks are in a mad rush to start building even before they finish planning and designing. If you’re reading this post, you’re likely interested in building a chatbot or at the very least exploring what’s involved.
Here are 10 key questions to help you think through the crucial details so you’re not tearing your hair out half-way through your chatbot project.
- What business problem are you trying to solve?
We see it all the time. Hype and excitement around a new technology often overrides business sense. Technology is not the end goal, it’s merely a means to achieving said goal. Chatbots can do many things like answer customer support questions, schedule meetings, conduct research or even respond to matches on dating sites. Start your project by clearly defining your business problem and show how you plan to use chatbots to solve it.
Pro tip: Include concrete $$ figures on cost-savings and other potential benefits from implementation to garner support for the project in your organization.
- What are your primary use cases?
Sky is the limit when it comes to uses for chatbots. Start with a few specific use cases based on your industry or function. This will help keep your project on track and ensure it doesn’t go off the rails. For example, you can use chatbots to provide insurance quotes for a specific market or help your customers find the best airfare. Use cases with narrow focus are more likely to be successful as they are easier to implement, test and evolve rather than broader applications with infinite variables.
- Who are your users?
It seems intuitive and yet, it’s easy to overlook the folks who are going to use your chatbot. Keeping the average user in mind during the design process as it will help you define the right features, functionality and build engaging human-like interactions. It is helpful to understand – Is your audience young or old? Are they more likely to use text/messaging or voice to communicate? Do they contact you via your website, social networking sites or some other site? Is their tone of conversation formal or informal? These questions will help you design a user-friendly Chatbot that your users will enjoy conversing with.
- Which type of conversational interface will your users prefer?
Not too long ago, chatbots were limited to text-based interactions but conversational interfaces have now expanded to include voice assistants, Alexa and Siri being the most well-known ones. This means chatbot and conversational UI developers must decide which type of interface they want to use for their applications. All platforms support text messaging formats but some support both text and voice interfaces. Understanding your users (#3) will help you pick the right conversational interface for your users.
- Which platform/s do you want to build on?
There are many options for developing your chatbots. For many businesses building on their existing infrastructure and leveraging their vendor ecosystem like Salesforce, Microsoft, etc. makes the most sense.
Based on your tech stack and user profile, you can decide if you want to build a native messaging chatbot on Facebook Messenger, use an enterprise platform like Salesforce , develop a standalone app, integrate into your existing website or build a chatbot that can work across multiple platforms.
- What resources and skills do you need?
Most businesses have limited time and resources so here are some options that will help you decide whether to go the DIY route or outsource the chatbot development.
- Build/DIY – If you have the coding/programming skills, you can build your own chatbot. All the major platforms have open APIs and SDKs for developers to start chatbot development on their platforms.
- Customize – This is the hybrid option. You can grab open source code from third-party site like Github and modify it for your use. This is a great way to ramp up quickly especially, if you have the coding/programming skills.
- Buy/Outsource – Buy it off-the-shelf and get help from your internal tech team or hire a consultant to help you deploy it.
If you’ve made it this far, well-done! Let’s keep going…
- Which knowledge base will you use?
A knowledge base is the fuel for your chatbot. It contains the content your chatbot needs to function. Without meaningful or accurate content, your chatbot won’t able to answer any questions or interact in a meaningful way. There are a few different ways you can populate your knowledge base.
- Existing source: You can repurpose an existing database by reformatting and adapting it for your chatbot application. For example, you can use your FAQs as the basis for a basic Q&A chatbot.
- New source: If you don’t have an existing knowledge base then you may just need to build one. Best way to do it is to sit down for a Q&A with the audience for your chatbot and use your conversation as the starting point for building.
- Scrape from internal databases: There are solutions available to mine your existing database and extract information from your legacy systems, but this can be a costly and cumbersome exercise. The biggest challenge after extraction is classifying and formatting information in a way that can be used by your chatbot application.
Pro tip: Keep the costs of building a knowledge base in mind when doing the ROI analysis on this project and try not to underestimate the effort.
- How will you create the conversation flow/design?
Designing the chatbot such that that it mimics real human conversations is both an art and a science. The chatbot needs to be “knowledgeable” while reflecting your brand voice/tone and being as “human-like” as possible.
If you don’t want to build the conversation design from scratch, you can use the templates that many vendors provide when you sign up for their service. You can also repurpose conversation maps or scripts you currently use for training your team for the tasks you are trying to automate through chatbots.
- What type of scalable architecture and backend integration will you need?
Designing a chatbot to meet the needs of a global organization with thousands of customers across multiple locations is an entire blog post by itself. But here are some basic questions that should be part of your planning process – number of users, expected volume of questions, type of expected queries (complex vs. simple), etc.
Integration into backend enterprise systems is another important consideration. For example: Will the chatbot need to pull up information from the customer account to answer questions? Setting up the chatbot is the easy part but keeping it going will need additional resources and planning.
- What other non-technical considerations do you need to keep in mind?
Every industry is different and it is helpful to have a good understanding of the taxonomy to design user-friendly chatbot. Some industries are highly regulated like the finance industry so there may be restrictions on what information can be shared via the conversational UIs as well as region-specific regulations on privacy and how sensitive information from these conversations should be handled. Understanding the non-technical considerations that affect your chatbots is just as important as technical requirements. Tone and personality also matters.
And that concludes the top 10 questions you should answer before you start designing your chatbot. This is not a comprehensive list but merely a starting point for your project. Share your pro tips in the comments below or tweet those to @MiaD
Mia Dand is the CEO of Lighthouse3.com, a Strategic Research & Advisory firm based in the San Francisco Bay Area. Mia is an experienced marketing leader who helps F5000 companies innovate at scale with digital and emerging technologies. She has built and led new digital/emerging tech programs for global brands including Google, Symantec, HP, eBay and others. Mia is a strong supporter and champion for diversity & inclusion in tech. You can connect with her on Twitter @MiaD or LinkedIn