2
respostas

[Projeto] Desafio: organizando o suporte ao cliente

“Precisamos melhorar a forma como lidamos com os pedidos de suporte dos usuários. As mensagens chegam com vários problemas misturados, como dificuldades para acessar o sistema, dúvidas sobre pagamento ou erros no uso de funcionalidades. Está tudo confuso e difícil de responder de forma ágil.”

  1. Decompondo o problema

    • Separando os pedidos por categoria, grau de complexidade e volume recebido.
  2. Reconhecendo padrões

    • Identificar se a dificuldade para acessar o sistema é a mesma para uma % significativa dos usuários, mesmo vale para as dúvidas sobre o pagamento e erros de funcionalidade da ferramenta. Assim que identificado, alimentar essas dúvidas em um banco de dados e criar um agente de IA que irá ajudar os clientes com essas dificuldades.
  3. Abstração

    • Simplificar o layout do chatbot que irá se comunicar a primeira vez com o cliente, apenas lhe entregando opções relevantes e que façam parte do problema do usuário, por exemplo:
    • Problema com o app?
    • Dúvidas sobre pagamento?
    • Informar erro sistêmico?
  4. Criação do algoritmo

    • Montar um fluxo de processo para identificar o problema do usuário e consequentemente o caminho que levará para a solução.
    • Cliente enviou mensagem > Qual canal de comunicação? > Site / app / WhatsApp > Identificar o problema > Reconhecer categoria do problema via reconhecimento de caracteres chaves > Enviar a resposta ao usuário via ChatBot com a resposta resumida.
2 respostas

Olá, Bruno. Como vai?

Sua aplicação dos quatro pilares do pensamento computacional para resolver esse problema de suporte ao cliente ficou excelente! Você conseguiu pegar um problema do mundo real, que inicialmente parece caótico ("está tudo confuso"), e estruturá-lo de forma lógica e escalável.

Para complementar sua linha de raciocínio e enriquecer ainda mais o seu projeto, trago algumas observações e sugestões práticas sobre como cada etapa que você desenhou funciona no dia a dia do desenvolvimento de software:

1. Decomposição

Você separou muito bem o problema por categorias. Na prática, essa divisão é o que permite criar filas de atendimento específicas. Por exemplo, problemas de pagamento podem ser direcionados para uma equipe financeira ou para uma API de validação de estorno, enquanto erros de funcionalidade vão direto para o time de tecnologia.

2. Reconhecimento de Padrões

Sua ideia de usar a recorrência dos erros para alimentar uma Inteligência Artificial é perfeita. Identificar que 80% dos usuários enfrentam o mesmo erro de login permite que você atue na causa raiz (corrigindo o sistema) e não apenas no sintoma (respondendo mensagens).

3. Abstração

Excelente escolha de design. Abstrair, neste cenário, é ignorar os detalhes irrelevantes da mensagem do usuário (como o desabafo ou palavras repetidas) e focar apenas no que define o problema. Criar um menu inicial simples no chatbot evita a sobrecarga cognitiva do cliente e garante que ele seja categorizado corretamente desde o primeiro clique.

4. Algoritmo

O fluxo que você desenhou está muito bem estruturado. Para deixar o seu algoritmo ainda mais robusto, uma boa prática é pensar nos caminhos alternativos ou de exceção. No seu fluxo atual, o chatbot envia a resposta resumida. Mas e se a resposta não resolver o problema?

Podemos complementar o final do seu algoritmo com uma tomada de decisão:

Cliente enviou mensagem 
  > Identificar canal (Site/App/WhatsApp) 
  > Reconhecer palavras-chave 
  > Chatbot envia resposta automatizada
  > O problema foi resolvido?
      Se SIM: Encerrar atendimento.
      Se NÃO: Direcionar para um atendente humano (Transbordo).

Adicionar essa condição garante que o cliente nunca fique "preso" em um loop com a IA caso o problema dele seja muito específico.

Seu raciocínio lógico está afiadíssimo e o projeto atende perfeitamente ao proposto na atividade. Parabéns!

Espero que possa ter lhe ajudado!

Algoritmo "Suporte_Ao_Cliente"

Var
// Entrada de dados
nome_cliente : caractere
codigo_problema : inteiro
sistema_fora_do_ar : logico

// Processamento
prioridade : caractere
setor_responsavel : caractere

Inicio
Escreval("--- SISTEMA DE TRIAGEM DE SUPORTE (HELPDESK) ---")

// 1. Entrada de Dados
Escreva("Nome do cliente/empresa: ")
Leia(nome_cliente)

Escreval("")
Escreval("Selecione a categoria do problema:")
Escreval("1 - Dúvidas de uso ou configuração")
Escreval("2 - Erro no sistema (mas o sistema abre)")
Escreval("3 - Problemas com pagamento ou faturamento")
Escreva("Digite a opção (1 a 3): ")
Leia(codigo_problema)

Escreva("O sistema está completamente fora do ar/bloqueado? (S/N): ")
Leia(resposta_status)

Se (resposta_status = "S") ou (resposta_status = "s") Entao
sistema_fora_do_ar <- verdadeiro
Senao
sistema_fora_do_ar <- falso
FimSe

// 2. Processamento (Regras de Negócio e Tomada de Decisão)

// REGRA CRÍTICA (Garante a maior prioridade independente do tipo)
Se (sistema_fora_do_ar = verdadeiro) Entao
prioridade <- "CRÍTICA (SLA 2 horas)"
setor_responsavel <- "Infraestrutura e Plantão Técnico"

Senao
// Regras baseadas na categoria selecionada
Escolha codigo_problema
Caso 1
prioridade <- "BAIXA (SLA 48 horas)"
setor_responsavel <- "Atendimento Nível 1 (Suporte Geral)"
Caso 2
prioridade <- "MÉDIA (SLA 24 horas)"
setor_responsavel <- "Atendimento Nível 2 (Desenvolvimento)"
Caso 3
prioridade <- "ALTA (SLA 4 horas)"
setor_responsavel <- "Departamento Financeiro"
Caso Defaluto
prioridade <- "NÃO DEFINIDA"
setor_responsavel <- "Triagem Manual (Recepção)"
FimEscolha
FimSe

// 3. Saída de Dados (Ticket Gerado)
Escreval("")
Escreval("--- TICKET DE SUPORTE GERADO COM SUCESSO ---")
Escreval("Cliente: ", nome_cliente)
Escreval("Prioridade do Chamado: ", prioridade)
Escreval("Direcionado para: ", setor_responsavel)
Escreval("--------------------------------------------")

Fimalgoritmo