Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Projeto] [atividade] Desafio: Automatizando tarefas

Você está trabalhando como pessoa desenvolvedora júnior em uma equipe que está criando um sistema para auxiliar no controle de presença em eventos online. O time precisa de um algoritmo que processe a lista de participantes e envie um e-mail de agradecimento apenas para quem participou de toda a transmissão ao vivo.

“Queremos automatizar o envio de agradecimentos. Mas só para quem assistiu à transmissão do início ao fim. Você consegue organizar esse processo em um algoritmo?”

Utilize os conhecimentos sobre algoritmos para construir uma solução em linguagem natural, com etapas claras e executáveis.

Considere:

Quais são os dados de entrada necessários?
Como o algoritmo pode verificar a condição de presença completa?
Que decisão precisa ser tomada com base nesses dados?
Qual deve ser a ação final?
Para saber mais detalhes sobre uma solução para esse desafio, clique na Opinião da Pessoa Instrutora.

3 respostas

Opinião do instrutor

Uma forma possível de resolver esse desafio é:

Dados de entrada: lista de participantes com horários de entrada e saída.

Verificação: comparar se o tempo de permanência corresponde à duração total da transmissão.

Decisão: se o tempo assistido for igual ou maior ao tempo total do evento, então enviar e-mail.

Algoritmo (em linguagem natural):

Para cada participante da lista:
a. Calcular tempo assistido.
b. Verificar se o tempo é igual ao tempo total da transmissão.
c. Se for, enviar e-mail de agradecimento.
d. Senão, não enviar.

Eu escrevi toda a resposta aqui mas ela voltou para a tela de login e perdi tudo. Terei que escrever absolutamente tudo novamente pois não sabia que isso poderia ocorrer e não tenho um rascunho, fiz diretamente aqui. Mais tarde postarei minha resposta.

solução!

Proposta de algoritmo para controle de presença e automação de emails

Como desenvolvedora júnior proponho a criação de um algoritmo de filtragem lógica para automatizar o reconhecimento de presença. O objetivo é garantir que o envio de e-mails de agradecimento seja preciso, escalável e baseado em critérios objetivos de engajamento, eliminando o processamento manual.

  1. Quais são os dados de entrada necessários?
  • Dados de identificação: nome (para personalizar o texto) e e-mail (para o envio).
  • Logs de acesso: horário de entrada e saída, e o tempo total de permanência de cada usuário na sala.
  • Parâmetros do evento: horário de início e término, e o tempo de duração total.
  • Margem de tolerância: Um percentual aceitável (ex: 5% a 10%) para cobrir pequenas quedas de conexão ou atrasos técnicos.
  1. Como o algoritmo pode verificar a condição de presença completa?
    O algoritmo calcula: (Tempo de Permanência do Usuário / Duração Total do Evento) * 100.
    O sistema valida a presença se o resultado for igual ou superior à meta definida (ex: >= 90-95% do tempo, de acordo com a margem de tolerância a ser alinhada).

  2. Que decisão precisa ser tomada com base nesses dados?
    Se atingiu a meta de presença: O usuário é inserido na "fila de disparo de agradecimento personalizado".
    Se não atingiu a meta: O usuário é classificado como "presença parcial" e não recebe o e-mail automático, servindo como dado para análise de retenção.

  3. Qual deve ser a ação final?
    O sistema envia o e-mail de agradecimento, conforme a fila de disparo criada acima, preenchendo o nome do participante no template do email, e tudo de forma automatizada e não manual.

Extras:

  • O algoritmo pode gerar também um log final com o total de e-mails enviados e uma lista de quem teve problemas de conexão (presença parcial) e sem presença, para possível revisão manual sobre problemas na plataforma, intermitências na transmissão, disparo de email perguntando sobre a experiência com o conteúdo e/ou plataforma;
  • Os dados também podem ser analisados junto com dados de outros eventos para entender a frequência de participação, picos de audiência, picos de desinteresse, servindo como base para muitas outras análises.

Essa abordagem garante que o processo seja escalável e livre de erros manuais. Além disso, permite que a equipe utilize os dados para uma análise futura, transformando um simples envio de e-mail em uma fonte de inteligência sobre o comportamento dos participantes e da plataforma de trasmissão.