Processo de design de chatbot para um programa de engajamento do cliente
tl;dr: Este artigo é um excerto de um artigo apresentado no ILA 2018, no Rio de Janeiro, e apresenta o processo de design na construção de um Chatbot para o XSolution (pseudônimo usado por questões comerciais e de sigilo) por meio da parceria SIDI — Samsung Instituto de Desenvolvimento para a Informática, com o Projeto Samsung — Cin UFPE. O objetivo do chatbot em questão é prover ajuda aos usuários de um programa de capacitação e engajamento de vendedores e ajudá-los no suporte ao programa, regras e solução de problemas técnicos de forma rápida e eficaz.
Introdução
Nos dias de hoje, usuários têm usado mais dispositivos móveis que computadores desktop e está sendo cada vez mais difícil impressioná-los e engajá-los na web. O ecossistema de aplicativos rapidamente saturou, sendo também cada vez mais caro e árduo competir dentro desse mercado.
Curiosamente, os aplicativos que permanecem nos smartphones dos usuários são os de mensagem, como Whatsapp, Facebook Messenger, Slack ou Telegram. Os usuários passam boa parte de seu tempo online nesse tipo de aplicação.
Os chatbots surgem a partir de um programa desenvolvido por Joseph Weizenbaum, em 1966, chamado ELIZA, que mimetiza uma terapeuta por meio de uma conversa muito convincente com seu paciente. É considerado o primeiro chatbot da história e inspirou toda uma geração de desenvolvedores desde então. (Mc Tear et al., 2016)
Chatbots são interfaces conversacionais que simulam conversas baseadas em texto. É importante que isso resulte numa comunicação fluida, consistente, mas é fundamental que o usuário saiba que ele está lidando com um chatbot e não com um humano.
Apesar da base de conversação dos chatbots ser textual, alguns elementos de interface têm sido usados para agilizar ou antecipar decisões dos usuários. Elementos gráficos como menus com tópicos que sugiram o que o usuário procura são exemplos desse tipo de recurso usado para facilitar o diálogo e agilizar a resolução do problema.
Projetando um Chatbot
Projetar um chatbot é, acima de tudo, um processo de design centrado no usuário. Não se trata apenas do design de uma interface gráfica, mas do design de uma experiência. E essa experiência precisa ser a melhor possível.
“A experiência do usuário é uma consequência da apresentação, funcionalidade, desempenho do sistema, comportamento interativo e recursos de assistência de um sistema interativo, tanto de hardware quanto de software. É também uma consequência das experiências anteriores do usuário, atitudes, habilidades, hábitos e personalidade.” (ISO, 2010)
Para definir a experiência de uso do chatbot, dentro do contexto do problema em questão, fez-se necessário seguir alguns passos importantes no direcionamento da solução.dos usuários. Elementos gráficos como menus com tópicos que sugiram o que o usuário procura são exemplos desse tipo de recurso usado para facilitar o diálogo e agilizar a resolução do problema.
Metodologia
O processo de design do Chatbot do XSolution teve como abordagem o Design Centrado no Usuário. “Todo o processo de design é tanto um processo criativo como um processo de solução de problemas” (Löbach, 2001). Como processo de solução de problemas, ele conta com 4 fases macro: análise do problema, geração de alternativas, avaliação das alternativas e realização da solução.
Esse processo é replicado em diversas metodologias de design, tal como a metodologia de Design Thinking que foca no conjunto de métodos e processos que propõe soluções com base na empatia e no foco nas pessoas afetadas pelo problema em questão, trazendo uma visão holística para a inovação.
O modelo do double diamond propõe dois momentos: o momento de imersão no contexto do problema e o de construção de valor. A primeira fase é de interpretação e alinhamento dos achados para os objetivos do projeto, definição de princípios de design, propostas de interação e alternativas à solução. O segundo momento é da prototipação das ideias para desenvolvimento e validação da solução.
Entendendo o problema
Para começar a projetar o chatbot e suas interações, foi necessário entender o problema e conhecer o usuário que iria utilizá-lo.
O fale conosco do X Solution, um programa de relacionamento entre a Samsung e lojas parceiras, era um canal de contato dos vendedores.
O intuito do canal era de tirar dúvidas e responder aos questionamentos dos usuários do programa de capacitação: questões sobre as regras do programa, suporte para problemas técnicos e até mesmo registro de reclamações. O suporte ao cliente no Fale Conosco era realizado por um atendente por meio de mensagens de texto. Alguns questionamentos acabavam sendo repetitivos e a quantidade de dúvidas terminava por sobrecarregar o atendimento tanto na velocidade quanto na padronização das respostas.
Com intuito de auxiliar o “Fale Conosco” do X Solution, foi solicitada a criação de um Chatbot para melhorar e agilizar a comunicação entre usuários do programa de capacitação e a equipe de comunicação da Samsung, com objetivo de solucionar em tempo real os problemas do usuário do sistema de forma mais rápida, prática e assertiva, aumentando a satisfação do usuário final.
Pesquisa e imersão
Para projetar a experiência de uso do Chatbot, foi necessário fazer uma pesquisa do estado da arte dentro do tema de interfaces conversacionais, assistentes virtuais e chatbots, considerando o contexto de design de interação. Além da pesquisa na literatura, também foi feita uma pesquisa inicial de mercado por meio de um benchmark de soluções similares.
“Um chatbot de domínio específico dá visibilidade a um único serviço, produto ou marca. Ele representa aquele serviço e os usuários associam o bot àquele serviço.” (Shevat, 2017 p.24). Interfaces conversacionais para Serviço de Atendimento ao Consumidor (SAC) são aplicações já consolidadas no mercado. Como exemplos bem sucedidos de chatbots criados para SAC, podemos citar a Lu, assistente virtual do Magazine Luiza e o Baianinho, assistente virtual das Casas Bahia, além de Anna, chatbot da IKEA, loja sueca de móveis, que foi um dos primeiros chatbots do tipo, criada em 2005. Este tipo de assistente, além de agilizar a comunicação e a assertividade na solução de dúvidas do usuário também é capaz de aprender com os diálogos, enriquecer seu vocabulário e ficar mais inteligente.
Shavat (2017) define alguns aspectos, habilidades e componentes que devem ser considerados ter na construção da interação com um chatbot: personalidade, avatar, nome e intervenção humana.
Personalidade: é a chave dos atributos que irão diferenciar um bot dos demais que oferecem um serviço similar. Fazendo uma analogia, seria como a escolha cromática dentro de uma interface gráfica de um aplicativo, algo que vai dar consistência em toda a interação e indicar aos usuários com que tipo de bot ele está lidando. Para a criação da personalidade, é importante considerar sempre o público-alvo e o contexto em que o usuário irá utilizar o chatbot. A personalidade do bot deve estar de acordo ao nível de descontração ou conservadorismo que o ambiente possui.
Avatar: Dar nome e face ao chatbot é uma das chaves para seu sucesso. Dotá-lo de personalidade é importante, mas é fundamental que o avatar também reflita essa qualidade. O avatar também ajuda o usuário a identificar o chatbot e reconhecer com quem está falando.
Intervenção humana: Sugerir correções no curso da conversa ou lidar com erros é uma estratégia inicial para um chatbot gerenciar as conversas. Caso ele não consiga, é necessário que o problema seja encaminhado a um humano.
Ideação
Nesta fase começou-se a pensar nas características que o chatbot teria. Qual sua personalidade? Que tipo de linguagem ele irá utilizar?
Para começar a projetar a interação do Chatbot, foi necessário definir uma Persona. Por meio dela, foi mais fácil definir uma personalidade e o tipo de linguagem utilizada, que futuramente ajudaria na formulação dos diálogos nas mais diversas situações.
Para a criação do avatar, foi identificado na pesquisa que a maioria dos bots possui uma fisionomia humana, caricaturizada ou mais realista, com intuito de humanizar o chatbot. Dotá-los de características humanas pode gerar mais empatia com o usuário.
No caso do chatbot do XSolution, o cliente escolheu algo que pudesse refletir os produtos da Samsung. Aspectos como modernidade, tecnologia, design de produto foram levados em consideração na hora do briefing. Nas reuniões de ideação para a criação do personagem, o time, juntamente com o cliente, chegou à conclusão que a ilustração de um robô simpático que, além de parecer um assistente virtual semelhante aos que existem no mercado, possuísse elementos estéticos de produtos Samsung. A conclusão é que essa seria a solução mais adequada e poderia se diferenciar do que é praticado comumente no mercado.
Definidos a personalidade e o avatar, foi necessário idealizar o tipo de linguagem que o chatbot teria. A interação e a comunicação também deve ser feita de forma natural, de modo que o vendedor se sinta confortável como se estivesse falando com um atendente de verdade.
Habilidades conversacionais
O passo seguinte foi pensar nas habilidades conversacionais que o chatbot precisa ter para garantir a eficácia da sua interação com os usuários. Algumas habilidades conversacionais definidas para o XSolution são:
- Empatia: Mesmo para os atendentes de call-center, empatia é uma habilidade que poucos dominam. Se uma conversa é iniciada com muitas emoções negativas e críticas, normalmente as pessoas respondem com defesa e negatividade. Porém, no que diz respeito a atendimento ao cliente, é fundamental empatizar com os usuários, mesmo quando esses parecem estar errados.
- Oferecer opções: É importante deixar claro para o usuário o que o chatbot é capaz de fazer. Ao invés de dizer “O que eu posso fazer por você hoje”, oferecer opções no início da interação pode ser muito mais eficaz.
- Lembrar de detalhes pessoais: Lembrar sempre o nome do usuário e o que ele acabou de perguntar é parte fundamental da fluidez da conversa.
- Não repetir perguntas/respostas: Ao invés de repetir uma pergunta ou resposta inúmeras vezes, uma maneira melhor de lidar com os erros dos usuários é oferecer uma solução alternativa. Se o usuário repete uma mesma pergunta geralmente significa que essa resposta não foi satisfatória.
Ao ter acesso a alguns diálogos reais entre o Fale Conosco e os usuários, foi possível mapear que tipos de questionamentos e problemas são mais comuns, quais os caminhos que a conversa pode seguir e assim projetar os fluxos de navegação com os cenários possíveis de comunicação e interação.
Prototipação
Chatbots podem ser criados baseados em regras ou por inteligência artificial, “incluindo deep learning, processamento de linguagem natural (NLP) e algoritmos de machine learning, e exigem grandes quantidades de dados” (Rouse, 2017). Chatbots alimentados por regras são mais limitados e somente respondem a comandos específicos e seguem fluxos de navegação bem definidos. Se o usuário diz algo errado, o sistema não saberá interpretar.
Já com os chatbots criados por meio de Inteligência Artificial, o usuário não precisa ser extremamente específico no que está dizendo, pois o bot aprende e entende linguagem natural, não apenas comandos. Com o passar do tempo, o Chatbot aprende com as conversas e fica mais inteligente.
O chatbot do XSolution foi criado baseado em regras bem definidas. Ele tem um espectro limitado até onde pode ir e foi feito baseado nas possibilidades de interação que o usuário pode ter com o bot.
Para auxiliar na criação dos fluxos navegacionais, de interação e facilitar a criação dos diálogos, foi feita uma ontologia. De acordo com Castro et al. (2017) uma ontologia é uma representação de dados baseada em conceitos e seus relacionamentos, representada em um formato que pode ser lido tanto por seres humanos quanto por máquinas, detalhando seus principais conceitos e os relacionamentos entre si. A adoção de ontologias promove a gestão do conhecimento, desempenho, escalabilidade e reutilização. De acordo com Abdul-Kader e Wood (2015), um chatbot complexo é tão bom quanto sua base de conhecimento.
A partir da ontologia, foi possível definir os fluxos de navegação que iriam dar suporte aos primeiros wireframes. O fluxo foi dividido em categorias (dúvidas, elogios, reposição, suporte, problemas técnicos, etc) e cada uma possuía um caminho específico.
A partir de uma ação do usuário, a conversa é inciada pelo chatbot, que dá as boas vindas, informa ao usuário o que faz e como pode ajudá-lo. Em seguida, são dadas opções ao usuário por meio de um pequeno menu que oferece as duas opções macro do menu: “solucionar dúvidas ou problemas” e “enviar elogios ou sugestões”. Essa escolha foi feita baseada na maioria das questões dos usuário resolvidas pelo Fale Conosco.
Apesar da interação do usuário com o chatbot ser textual, alguns outros elementos de interação foram utilizados com intuito de antecipar decisões do usuário e agilizar o atendimento.
Um menu carrossel surge sempre que o chatbot não consegue resolver às dúvidas do usuário por meio de texto. Esse menu é exibido ao usuário em formato de cards com as categorias disponíveis e oferece opções para o usuário solucionar seu problema ou dúvida. Ao clicar na opção desejada, a opção é repetida na caixa de diálogo logo abaixo do menu.
Caso o usuário não consiga resolver seu problema através do menu, existe a possibilidade de contato com um humano, através do envio de mensagem ou fazer uma chamada telefônica por meio do chatbot, escolhendo a opção no card. Além disso, mesmo com as opções do menu, o usuário pode também escrever seu problema no campo de texto para que o bot possa novamente tentar uma resposta.
Além de responder às dúvidas dos usuários, o chatbot também tem a função de colher feedback dos usuários através de pequenas pesquisas de satisfação. São pesquisas para, além de medir o nível de satisfação do usuário com o programa, identificar os motivos para um mau desempenho num quiz ou saber o porquê do usuário não gostar de determinados tipos de conteúdo.
Essas pesquisas são feitass no chatbot do XSolution por meio de questões respondidas rapidamente por meio de uma escala Likert. Esse é outro elemento de interação utilizado no chatbot que foge ao padrão de texto e dá uma função distinta à função original de tirar dúvidas e resolver problemas, mas também de colher feedback a respeito do programa.
Por fim, o chatbot do XSolution segue a abordagem de fornecer sempre feedback ao usuário, ou seja, não deixá-lo esperando por uma resposta sem saber o que está acontecendo. Quando uma mensagem estiver sendo gerada pelo chatbot, um feedback visual deve ser mostrado no diálogo.
Boas práticas para design de chatbots
Costuma-se dizer que design é um diálogo entre designer e usuário. Para entender a necessidade do usuário, conversamos com eles sobre suas dores e seus problemas. Discutimos com nossos colegas sobre propostas de soluções. É uma forma de colocar pra fora nossos pensamentos de forma clara e objetiva para que o outro os entenda.
No entanto, a conversação se tornou uma realidade cada vez mais relevante para o mundo dos designers no momento em que computadores começaram a se comunicar conosco. Conversa tornou-se uma interface de usuário. E como esse é nosso métier, é preciso estarmos preparados para projetarmos essas interfaces.
Por fim, seguem alguns aspectos importantes e de boas práticas para um projeto de chatbot:
- Entenda o problema do cliente: o que ele está querendo resolver? Quais as dores do seu usuário? Esse primeiro passo é fundamental para identificar se o chatbot é ou não uma solução para o problema.
- Conheça quem vai usar seu chatbot: usuário e contexto de uso são informações essenciais para qualquer projeto de design e não seria diferente para um chatbot. A experiência de uso depende de quem vai fazer uso dela.
- Mergulhe no tema: pesquise soluções similares para problemas semelhantes ao que pretende resolver. Pesquise chatbots para problemas similares, o que fazem, como são e como agem.
- Crie uma persona para o seu chatbot: criar nome e avatar para seu bot é a melhor forma de criar familiaridade com ele. Além disso, ajuda a definir sua personalidade, tipo de linguagem usada, dentre outras características próprias.
- Crie um chatbot empático: colocar-se no lugar do outro é uma virtude para poucos. Em atendimento ao cliente, quando muitas vezes ele está emocionalmente abalado com seus problemas e sem conseguir resolvê-los, empatia é uma habilidade fundamental. Dotar seu chatbot de empatia, reconhecer no diálogo do usuário quando ele pode estar irritado, é muito importante para saber como responder com empatia e paciência.
- Não tente enganar seu usuário: um chatbot não é uma pessoa e fazer o usuário pensar isso é um erro que um designer não poderia cometer. Deixar a conversa fluida como se fosse uma conversa com um humano é diferente de querer fazer o usuário pensar que não está falando com uma máquina.
- Desenhe os fluxos de interação: eles vão ajudar a entender os caminhos que uma conversa pode seguir, auxiliar na tomada de decisão quanto a elementos de interação e quando o chatbot não irá conseguir resolver o problema do usuário. Se possível, guie o usuário num fluxo com a menor quantidade de interações possível para que ele chegue ao seu objetivo de forma mais rápida.
- Textos curtos: os diálogos devem ser quebrados em respostas curtas para não cansar o usuário e deixar a conversa fluida.
- Feedback: não deixe o usuário sem feedback. Quando o chatbot estiver processando alguma informação, um feedback visual precisa aparecer para o usuário entender o que está acontecendo. O contrário também é importante: solicitar que o usuário forneça informações sobre o atendimento, se ele foi útil ou eficaz, se resolveu seu problema.
- Elementos de interação: além de textos, o designer pode prover ao usuário uma interface com elementos de interação que antecipem decisões do usuário ou ajudem a deixar a interação mais fácil e rápida. Menus, botões com possíveis respostas para o usuário quando as questões tiverem respostas curtas, como “sim” ou “não”, por exemplo, são alguns elementos que podem ser usados para facilitar e melhorar a experiência de uso.
- Intervenção humana: em casos em que o bot não consegue resolver o problema, avaliar as possibilidades de redirecionamento da conversa para um humano.
Referências Bibliográficas
ABDUL-KADER, A., WOOD, J. Survey on Chatbot Design Techniques in Speech Conversation Systems. In (IJACSA) International Journal of Advanced Computer Science and Applications, Vol 6, N. 7, pp. 72–80 (2015)
CASTRO, Fernanda, TEDESCO, Patrícia; ALVES, Havana, QUINTINO, J., STEFFEN, J., OLIVEIRA, F., SOARES, F., SANTOS, A.L.M, SILVA, F.Q.B. Developing a Corporate Chatbot for a Customer Engagement Program: a Roadmap. 2017.
EPSTEIN, Robert, ROBERTS, Roberts, BEBER, Grace (Editors). Parsing the Turing Test: Philosophical and Methodological Issues in the Quest for the Thinking Computer. Springer: New York, 2009
HUTCHINS, E. Metaphors for interface design. Em M.M. Taylor, F. Neel e D.G. Bouwhuis, editors, The Structure of Multimodal Dialogue. Elsevier Science Publishers, Nova York, 1989.
ISO. ISO 9241–210:2010. Ergonomics of human-system interaction. Part 210: Human-centred design for interactive systems, 2010.
Klüwer, Tina. From chatbots to dialog systems. Perez-Marin D, Pascual-Nieto I (Editores). Conversational agents and natural language interaction: techniques and effective practices. IGI Global Publishing Group, Hershey, Pennsylvania, pp 1–22, 2011.
LÖBACH, Bernd. Design Industrial: Bases para a configuração dos produtos industriais. Tradução Freddy Van Camp. Edgard Blücher, Rio de Janeiro, 2001.
MC TEAR, Michael; CALLEJAS, Zoraida; GRIOL, David. The Conversational Interface: Talking to Smart Devices. Switzerland: Springer International Publishing Switzerland, 2016.
MORAN, MICHAEL E. Epochs in Endourology
The da Vinci Robot. Journal of endourology. Volume 20, N. 12, 2006
MULDOWNEY, Oisin. Chatbots: An Introduction and Easy Guide to Make Your Own. Dublin: Curses & Magic, 2017.
NORMAN, Donald A. O Design do Dia a Dia. Rio de Janeiro: Rocco, 2006.
NICULESCU, Andreea Ioana. Conversational interfaces for task-oriented spoken dialogues: design aspects inuencing interaction quality. PHD Thesis. Holanda: University of Twente, 2011.
Rabiner, L; Juang, B-H. Fundamentals of speech recognition. Prentice Hall, Upper Saddle River, 1998.
ROUSE, Margaret. Chatbot. Atualizado em Novembro de 2017.https://searchcrm.techtarget.com/definition/chatbot Acesso em 14 de Junho de 2018
ROUSE, Margaret. IMbot. Atualizado em Setembro de 2005. https://searchdomino.techtarget.com/definition/IM-bot. Acesso em 14 de Junho de 2018
SHEVAT, Amir. Design Bots: Creating Conversational Experiences. O’Reilly, 2017.
TURING, Alan M. Computing Machinery and Intelligence. Mind, Volume LIX, Issue 236, Páginas 433–460. Oxford, 1950.
WIKIPEDIA. Chatbot. https://en.wikipedia.org/wiki/Chatbot#cite_note-target-1. Acesso em 18 de Junho de 2018.
Schlicht, Matt. The Complete Beginner’s Guide To Chatbots: Everything you need to know. 2016. https://chatbotsmagazine.com/the-complete-beginner-s-guide-to-chatbots-8280b7b906ca. Acesso em 26 de Junho de 2018.