Os bots são empolgantes. Todos estão falando sobre isso e todos querem construir um. Alguns dos primeiros bots receberam críticas mistas – eles são interessantes, mas são essencialmente brinquedos. À medida que as pessoas começam a trabalhar com bots com mais recursos, os desenvolvedores devem avaliar e planejar todo o ciclo de vida do bot. Com base em nossa experiência na criação de centenas de bots avançados e na ajuda aos desenvolvedores na criação de milhares de outros, apresentamos a seguir o que consideramos o processo de criação de bots de ponta a ponta.
As etapas do ciclo de vida de um bot são as seguintes:
- Requisitos
Reúna os requisitos de mercado para o bot: quem é o cliente-alvo, quais são os pontos problemáticos e quais benefícios a solução oferecerá. Essa etapa é semelhante a qualquer outro projeto de software, embora as outras etapas abaixo sejam exclusivas dos bots.
- Espécie
Desenvolva uma especificação de produto para o bot identificando os recursos e a funcionalidade do bot. Os recursos devem oferecer os benefícios identificados na etapa de Requisitos. Observe que a especificação também deve incluir uma descrição curta e longa do bot, juntamente com outras garantias que serão exigidas posteriormente na etapa Publicar.
- Script
Embora as duas primeiras etapas sejam semelhantes às de outros ciclos de vida de software, esta etapa é exclusiva do processo de criação de bots. Enquanto os sites e aplicativos têm interfaces estruturadas, os bots têm uma interface de conversação. Em vez de criar wireframes como fazemos para sites e aplicativos, isso envolve a criação de scripts de conversação que representam as interações do usuário.
O script de conversação deve ser representativo das conversas reais do usuário. Como a interface de conversação não tem guias ou prompts, o script do bot deve orientar o usuário para realizar a tarefa desejada. Dependendo do contexto, o script pode ou não oferecer suporte a recursos de PNL. Se o bot for projetado com a PNL em mente, o script do bot deverá lidar com uma ampla gama de variações nas entradas do usuário. Observe que a PNL e a IA devem ser usadas com cautela. O uso excessivo pode aumentar as expectativas do usuário e levar à decepção.
- Arquiteto
Crie o projeto de engenharia para o bot. Isso inclui os componentes de front-end e back-end. O front-end refere-se à interface de conversação, traduzindo a entrada do usuário em ações específicas e vice-versa. O back-end refere-se à computação realizada pelo bot, bem como às integrações com outros serviços da Web.
- Desenvolvimento
Esse é o estágio de desenvolvimento em que o bot é desenvolvido. Dada a interface de conversação, os desenvolvedores de bots se encontrarão iterando muito mais entre a codificação e o teste do que no desenvolvimento tradicional de software. Assim que o bot for codificado para lidar com um conjunto específico de declarações de conversação, é uma boa prática testar a unidade do código por meio da interface de mensagens.
Os desenvolvedores também devem inserir sondas de rastreamento no bot – elas serão úteis no estágio de rastreamento.
- Teste
Conforme descrito acima, o teste está profundamente entrelaçado com o processo de desenvolvimento. No entanto, o teste é complicado para um desenvolvedor de bots. O código deve ser testado não apenas no emulador, mas também na plataforma de mensagens real. Dada a diversidade de aplicativos de mensagens e as diferenças na renderização de mensagens, esse pode ser um processo demorado. Além disso, diferentes plataformas de mensagens têm diferentes diretrizes e limitações de acesso para bots de teste.
Além do teste de unidade durante o ciclo de desenvolvimento, essa etapa também inclui o controle de qualidade final do bot. O processo de controle de qualidade deve executar o bot por meio dos scripts de conversação desenvolvidos acima. O processo de controle de qualidade também precisa estar ciente e garantir a conformidade com as diretrizes de publicação da plataforma de mensagens. As plataformas de mensagens têm diretrizes diferentes (por exemplo, os bots não devem enviar spam, devem se apresentar, se explicar, se comportar, lidar com exceções etc.).
- Implementar
Depois que o bot é criado, ele deve ser implantado em um ambiente hospedado. O ambiente hospedado deve ser estável e precisa de seu próprio monitoramento e suporte de desenvolvimento.
- Publicar
Depois que o bot for testado e implantado, ele deverá ser enviado às várias lojas de aplicativos para aprovação. Cada plataforma de mensagens tem um processo de aprovação diferente, com graus variados de rigor. Os envios exigem uma variedade de elementos descritivos, como uma descrição curta, uma descrição longa, imagens, scripts, vídeos etc. (é melhor desenvolver esses elementos na fase de especificação). As plataformas de mensagens também exigem que seus bots sejam “bem comportados” e autoexplicativos. Esse processo pode levar de dias a semanas e envolver várias iterações, com várias pegadinhas para quem está publicando pela primeira vez. O que torna isso mais difícil é o fato de que os processos de aprovação também estão evoluindo, o que faz com que esse seja um alvo em movimento!
- Monitor
Depois que o bot é publicado, ele deve ser monitorado. Não me refiro apenas ao monitoramento de operações, conforme mencionado na fase de implantação. Refiro-me ao monitoramento do bot usando scripts de conversação reais. O monitoramento operacional pode indicar que os sistemas estão bem, mas o bot ainda pode não responder a determinadas conversas de usuários. A melhor maneira de monitorar o bot é monitorar a conversa do usuário.
- Promover
Embora a publicação na loja de bots seja a primeira etapa, há outras opções para tornar seu bot detectável. Existem lojas de bots entre plataformas que estão fora das plataformas de mensagens e que ainda podem direcionar tráfego para o seu bot. Estão surgindo novos canais de publicidade que apresentarão seu bot a novos usuários.
- Analisar
À medida que o bot começa a ser usado, seu desempenho deve ser monitorado e os resultados analisados. Isso envolve a revisão dos registros de conversas e das métricas de uso. Analisar o comportamento de conversação é diferente de analisar os caminhos de cliques para sites e aplicativos. A conversa ideal é aquela que permite que os usuários realizem suas tarefas com o mínimo de esforço. Dependendo do contexto, isso pode significar conversas mais curtas ou mais longas – a que impõe a menor carga cognitiva ao usuário é a melhor. Os desenvolvedores devem identificar e corrigir os pontos de vazamento – onde as conversas estão sendo interrompidas ou abandonadas.
Repetir
O que você aprendeu na fase de análise pode ser incluído novamente no processo de desenvolvimento do bot para criar um bot em constante aperfeiçoamento. Alguns bots podem até mesmo ser programados com programas de IA de autoaprendizagem que precisam de informações de usuários e treinadores para se aperfeiçoarem continuamente.
Criar bons bots não é fácil. Um pouco de estrutura e processo ajudam muito a alcançar o sucesso dos bots. Além disso, minha empresa, a Gupshup, está criando uma plataforma de bots que torna mais fácil e rápido para os desenvolvedores criarem bots melhores. Falarei mais sobre isso no próximo post. Enquanto isso, feliz criação de bots!
Explore esses recursos essenciais para expandir seu conhecimento sobre bots e criação de bots: