Skip to content

Cenários — Dinâmica de Quadras

Mapa narrativo das possibilidades de uso. Cada cenário é uma cena com personas, contexto, narrativa, pontos críticos do sistema e perguntas em aberto.

Como navegar: cenários estão agrupados por categoria. Os cenários completos têm narrativa detalhada; os marcados com 🟡 são esqueletos prontos para desenvolver em conversa.

Como contribuir: copiar o template no fim do arquivo. Manter o formato consistente.

Índice por categoria


Onboarding

Cenário 1 — Fabricio chega sozinho num sábado de manhã

Personas: Fabricio (atleta casual), João (dono na operação)

Contexto: Sábado, 9h. Beach do João tem 4 quadras, ~18 atletas presentes. Fabricio vai sozinho, sem horário marcado, sem parceiro definido. Já jogou em outras arenas com sistema, é a primeira vez na Beach do João.

Cena:

Fabricio entra na arena. Olha à esquerda: as 4 quadras movimentadas, areia batida, gente trocando lados. À direita: o balcão do João, fila pequena. Em cima do balcão, um QR Code grande com a frase: "Tá na arena? Entra na fila aqui →".

Ele puxa o celular, mira a câmera, toca no link da notificação. Abre o navegador — não pede login, não pede senha, não pede instalar app. Carrega em 2 segundos.

A primeira tela diz "Beach do João" no topo, com o estado atual de cada quadra:

🟢 Q1 · Beach Tennis · Em jogo (Pedro & Carla vs João & Marina)
🟢 Q2 · Beach Tennis · Em jogo
🟡 Q3 · Vôlei · Próxima em ~10 min
🟢 Q4 · Beach Tennis · Em jogo

Embaixo, um botão grande: "Entrar na fila".

Fabricio toca. Modal aparece: "Continuar com Google". Ele toca, escolhe fabricio.silva@gmail.com, autoriza. 2 segundos, está dentro.

Como é a primeira vez dele no Sport Tech Club, aparece a anamnese rápida — 4 perguntas:

  1. Há quanto tempo você joga beach tennis? → "1-3 anos"
  2. Frequência típica? → "1× por semana"
  3. Background esportivo? → "Já joguei vôlei na escola"
  4. Como você se descreveria? → "Intermediário — controlo rebatida com efeito, ainda erro saque às vezes"

30 segundos, finalizado. Sistema cria perfil inicial: nível estimado intermediário (intervalo amplo — sem partidas ainda).

Tela seguinte: "Quer ser avisado no WhatsApp quando for sua vez de jogar?" com input + botão "Pular". Ele digita o número porque quer ir ao bar pegar uma água.

Vê a tela principal: "Você está na fila — posição 4 · estimativa: ~25 min" com sua foto (do Google), nome curto, e botões "Convidar parceiro" e "Sair da fila".

Pontos críticos do sistema:

  • Discoverability do QR (precisa ser visível na entrada — 1m de altura, frente e centro)
  • Performance da PWA (carregar em <2s em conexão da arena, possivelmente 3G/4G)
  • Onboarding zero atrito (Google login direto + anamnese rápida + WhatsApp opcional)
  • Anamnese precisa ser percebida como leve (4 perguntas, ~30s, com âncoras concretas — não rótulos vagos)
  • Estimativa de tempo de espera precisa
  • Cardinalidade Solo vs Dupla (Fabricio entrou sozinho — sistema vai parear?)

Critérios em jogo (Camada 3):

  • Formação de Equipe
  • Prioridade na Fila
  • Distribuição em Quadras
  • Elegibilidade probabilística (Fabricio com perfil "intermediário, intervalo amplo" — sistema avalia compatibilidade com pool)

Perguntas em aberto:

  • Sistema pareia automaticamente com outro solo, ou Fabricio precisa convidar?
  • Anamnese aparece apenas no 1º acesso ao Sport Tech Club ou a cada arena nova? (cross-arena)
  • 4 perguntas é o limite? 3? 5?
  • WhatsApp opcional vs obrigatório? Custo de SMS se não tiver WhatsApp?

Cenário 2 — Ana, visitante de outra cidade, primeira vez 🟡

Personas: Ana (visitante), João

Contexto: Quarta-feira, 16h, baixa movimentação, 1-2 quadras em uso. Ana está de passagem no Rio, encontrou a arena no Google Maps, foi pra lá.

Pontos críticos:

  • Ana não conhece ninguém — sistema funciona sem rede social pré-existente?
  • Pagamento avulso — está fora do escopo v0?
  • Como Ana se identifica como "elegível" sem histórico na arena?
  • Ela vai depender do João (operador) pra ser inserida?

Cenário 3 — Carla iniciante quer entrar mas tem medo do nível 🟡

Personas: Carla (iniciante), Rafael (namorado, iniciante em ascensão), Maria (avançada presente)

Contexto: Sábado de tarde, após aula coletiva. Carla e Rafael querem continuar jogando depois da aula. Carla está hesitante; Rafael quer arriscar uma partida casual. As únicas vagas próximas são em pools acima do nível deles.

Pontos críticos:

  • Elegibilidade probabilística: sistema compara PerfilDinâmico da Carla vs perfil-alvo do pool e mostra percentual de "boa partida esperada" (ex: "essa partida tem ~30% de chance de ser equilibrada pra você — quer arriscar?"). Sem rótulo binário "elegível/inelegível".
  • Saída humana: Carla pode entrar mesmo fora da faixa, com aviso. Sem barreira dura.
  • "Aviso amigável" sem humilhar — linguagem positiva ("desafio acima do seu nível atual", não "você é fraca pra esta quadra")
  • Resultado dessa partida (perda esperada de Carla) não afunda o score dela desproporcionalmente — algoritmo tem que entender que ela jogou contra perfil acima
  • Casal entra na fila como dupla automática ou como 2 atletas independentes?

Cenário 4 — Fabricio convida o amigo via WhatsApp e ele chega depois 🟡

Personas: Fabricio (já na fila), Lucas (amigo, chega 20 min depois)

Contexto: Fabricio toca em "Convidar parceiro", gera um link que manda no WhatsApp. Lucas tá no carro vindo da Tijuca, recebe a notificação.

Pontos críticos:

  • Como o sistema modela "dupla incompleta esperando pelo parceiro"?
  • Lucas chega — clica no link — vira automaticamente parceiro do Fabricio?
  • Se Lucas demora demais, o que acontece com a posição da dupla na fila?
  • Penalidade por dupla incompleta segura tempo de quem tá pronto?

Cenário 5 — Quatro amigos chegam juntos querendo entrar como bloco 🟡

Personas: 4 amigos do trabalho, primeira vez na arena

Contexto: Sexta às 19h. Querem jogar 2v2 entre si, não querem ser separados.

Pontos críticos:

  • Sistema entende "grupo pré-formado"?
  • Reservam 1 quadra inteira ou entram como 2 duplas na fila normal?
  • Como gerar 4 entradas de identidade rapidamente (cada um Google login separado é 4× a fricção)?
  • Existe um "join group" — 1 cria, 3 entram via link?

Cenário 6 — Atleta vindo de outra arena que já usa o sistema 🟡

Personas: Rodrigo (atleta de São Paulo), João

Contexto: Rodrigo já joga numa arena de SP que usa o Sport Tech Club. Vai à Beach do João pela primeira vez.

Pontos críticos:

  • Login via Google — sistema reconhece a conta dele
  • Perfil dele (nível intermediário em SP) é aceito automaticamente em outra arena?
  • Histórico/ranking dele aparece pro João?
  • Privacidade — Rodrigo quer expor histórico?

Cenário 7 — Atleta sem Google account 🟡

Personas: Sr. Antônio, 67 anos, mensalista de longa data

Contexto: Antônio não tem Google account. Tem só WhatsApp, e raramente abre.

Pontos críticos:

  • Fluxo alternativo: cadastro pelo João (operator-driven)?
  • Magic link via WhatsApp como fallback?
  • Sr. Antônio precisa fazer alguma coisa no celular ou João opera por ele?

Rotina

Cenário 8 — Pedro mensalista chega na quarta às 19h 🟡

Personas: Pedro (mensalista pontual), Jorge (instrutor de plantão)

Contexto: Quarta-feira, 19h, horário pico após o trabalho. ~12 atletas, 4 quadras todas ocupadas.

Pontos críticos:

  • Mensalista tem prioridade explícita ou implícita?
  • Como Pedro percebe que a prioridade dele foi respeitada? (transparência)
  • Despacho entre Filas (mensalistas vs avulsos)
  • Atrito social: avulso entende ser pulado por mensalista?

Cenário 9 — Maria e seu grupo das 18h 🟡

Personas: Maria + 5 amigos do grupo dela

Contexto: Terça às 18h. O grupo da Maria sempre joga junto, em 2 quadras adjacentes, regra "rei da quadra" entre eles.

Pontos críticos:

  • Como o sistema acomoda grupos pré-formados?
  • "Reserva implícita" de quadras pra grupos recorrentes — gera atrito com avulsos?
  • Pool dedicado pro grupo, vs pool aberto onde eles "ocupam"?

Cenário 10 — Fabricio chega num sábado lotado (fila de 15) 🟡

Personas: Fabricio, ~30 atletas, João

Contexto: Sábado, 10h, dia de sol, todas as quadras ocupadas, 15 atletas esperando.

Pontos críticos:

  • Estimativa de tempo de espera precisa não desencorajar Fabricio (~50 min é muito?)
  • Notificação WhatsApp vira essencial — atleta não fica grudado no celular
  • Atleta pode pausar o lugar dele na fila ("tô indo no mercado, volto em 20")?
  • Como o sistema sinaliza "você é o próximo, vem agora" sem ele perder a vez?

Cenário 11 — Pedro chega adiantado e a fila já tem outros mensalistas 🟡

Personas: Pedro, outros mensalistas

Contexto: Pedro chega 10 min antes de "seu" horário, descobre que outros 3 mensalistas chegaram antes.

Pontos críticos:

  • Mensalistas têm fila própria — FIFO entre eles?
  • "Seu horário" é literal ou é wishful thinking?
  • Sistema gerencia conflito entre múltiplos mensalistas elegíveis ao mesmo tempo?

Cenário 12 — Maria avalia o nível de um novato durante a partida 🟡

Personas: Maria, novato, demais 2 atletas da partida

Contexto: Novato entrou no pool intermediário, mas joga claramente acima/abaixo. Maria nota.

Pontos críticos:

  • O sistema já está aprendendo automaticamente via PerfilRecalculado a cada ResultadoConfirmado — após 3-5 partidas o desvio se corrige sozinho
  • Mas "claramente acima/abaixo" pode ser óbvio na 1ª partida — vale Maria ter um botão sutil de "feedback rápido" (👍/👎 calibração) que vira input adicional? Ou só o operador pode acionar OperadorRecalibrouPerfil?
  • Risco de bullying/exclusão se atletas puderem rebaixar uns aos outros — talvez só feedback "pra cima" (sugerir promoção) seja seguro
  • Como evitar que avaliação vire bullying/exclusão?

Cenário 13 — Carla volta semanas depois com nível maior 🟡

Personas: Carla, Jorge (instrutor)

Contexto: Carla fez 8 aulas, está mais forte. O PerfilDinâmico dela já evoluiu silenciosamente a partir das aulas + partidas casuais.

Pontos críticos:

  • Promoção é automática e contínua — não há mais "evento de promoção" cerimonial. O score subiu, agora aparece elegível em mais pools.
  • Carla nota a mudança — sistema mostra ("você agora é elegível pra 'Open Play Intermediário Sábado'") sem cerimônia exagerada
  • Mas: Carla deve ver o próprio score subindo? Volta à pergunta de transparência (item 12 de Perguntas em aberto)
  • Anamnese — Carla pode atualizá-la? ("Eu joguei muito esses 2 meses, sou mais forte do que disse antes") → AnamneseAtualizada

Cenário 14 — Bruno (sub-18) joga com adultos avançados 🟡

Personas: Bruno, Jorge (instrutor)

Contexto: Bruno é sub-18 mas tem PerfilDinâmico claramente avançado (treina 5×/semana com Jorge, vence atletas adultos avançados em treinos). Pool "Avançado Adulto" filtra por idade adulta — bloqueia Bruno por padrão.

Pontos críticos:

  • Anamnese inicial do Bruno já capturou "joga torneios sub-18, treina 5×/semana, instrutor: Jorge" — sistema já sabe o background
  • PerfilDinâmico dele bate com pool de adultos avançados, mas faceta faixa etária (estática, baseada em data nasc.) bloqueia
  • Solução: Jorge usa OperadorRecalibrouPerfil (ou um override específico de "ignorar faceta etária") — fica registrado com motivo. Outros atletas adultos podem ser notificados ("você vai jogar com Bruno, sub-18 com perfil avançado — ok?")
  • Faceta etária é fato (data nasc.) — não muda. O override é sobre como o critério de Elegibilidade lida com ela
  • Bruno consegue, sozinho, marcar "quero jogar com adultos quando for elegível"? Ou só operador faz isso?

Cenário 15 — Mensalista que paga mas vai pouco 🟡

Personas: Marcos (mensalista que paga, vai 1x/mês), Pedro (mensalista assíduo)

Contexto: Marcos chega após meses sem aparecer. Sistema o trata igual a um mensalista assíduo?

Pontos críticos:

  • Critério de "ativo" vs "inativo" — quem decide?
  • Prioridade igual entre todos os mensalistas, ou ponderada por frequência?
  • Marcos pode "perder" status se ficar inativo X meses?

Cenário 16 — Fabricio chega uma terça a noite (fora do horário típico dele) 🟡

Personas: Fabricio (fora da rotina dele de sábado)

Contexto: Quinta às 20h, Fabricio decide variar. Arena tem cara totalmente diferente — mais avançado, grupos fechados.

Pontos críticos:

  • Sessão configurada com regras diferentes da do sábado
  • Fabricio percebe a diferença sem se sentir intruso?
  • Sistema mostra "esta sessão é avançada" antes de ele entrar na fila?

Operação

Cenário 17 — João abre a sessão "Sábado Manhã Open Play" 🟡

Personas: João

Contexto: Sexta à noite, João abre o painel para configurar a sessão de sábado.

Pontos críticos:

  • Quanto tempo João leva pra configurar uma sessão? (Meta: < 2 min)
  • Pode usar template/perfil pré-configurado?
  • Reuso de configuração de semana passada?
  • Quais campos são obrigatórios vs opcionais?

Cenário 18 — João precisa intervir manualmente em uma fila 🟡

Personas: João, Pedro (mensalista insatisfeito)

Contexto: Sábado movimentado, Pedro acha que foi pulado, reclama com João.

Pontos críticos:

  • Override do operador sempre disponível e fácil
  • Trilha de auditoria das intervenções (OperadorIntervino com motivo)
  • Outros atletas veem que houve intervenção?
  • Pedro recebe notificação clara da correção?

Cenário 19 — João muda regra no meio da sessão 🟡

Personas: João, atletas em jogo

Contexto: Sessão configurada como "ganhador fica até 2 vitórias", mas tá criando filas longas. João decide mudar pra "ganhador sai sempre" no meio do dia.

Pontos críticos:

  • Mudança de regra afeta partidas em andamento ou só as próximas?
  • Atletas são notificados da mudança?
  • Sistema preserva o motivo (audit log)?

Cenário 20 — João vê painel do dia (relatório) 🟡

Personas: João, fim de domingo

Contexto: Domingo 22h, sessão encerrou às 20h. João quer ver o resumo do dia.

Pontos críticos:

  • Quais métricas importam pro João? (Atletas únicos · Partidas jogadas · Faturamento · Tempo médio de espera · Satisfação?)
  • Como exportar/compartilhar (com sócio, contador)?
  • Painel deveria ser proativo (manda no WhatsApp dele) ou reativo?

Cenário 21 — João transfere autoridade pra Jorge no meio do dia 🟡

Personas: João, Jorge

Contexto: Sábado tarde, João vai resolver problema fora. Passa a operação pro Jorge por 2h.

Pontos críticos:

  • Como modelar "operador temporário"?
  • Jorge tem permissões reduzidas (não mexe em billing)?
  • Quando João volta, há "handover" no sistema?

Cenário 22 — João bane atleta troll temporariamente 🟡

Personas: João, atleta troll, demais atletas afetados

Contexto: Atleta tá bagunçando — saindo/entrando fila, contestando tudo. João decide tirar ele do dia.

Pontos críticos:

  • Ban temporário (1 dia) vs permanente
  • Atleta vê motivo do ban?
  • Atleta consegue contestar/recorrer?
  • Próximo dia ele volta normal ou precisa "purga"?

Cenário 23 — João cria perfil de pool customizado 🟡

Personas: João

Contexto: João quer ter "Pool Senior 50+" toda quinta. Não existe template — ele monta do zero.

Pontos críticos:

  • v0 hardcoded vs v1+ rule engine — em qual ponto isso vira possível?
  • Wizard guiado ou config livre?
  • João consegue salvar como template próprio?

Cenário 24 — Jorge dá aula coletiva e gerencia a fila ao mesmo tempo 🟡

Personas: Jorge, 8 alunos da aula, atletas do open play

Contexto: Sábado tarde, Jorge dando aula em Q1 e cobrindo operação geral simultaneamente.

Pontos críticos:

  • Modo "operador ocupado" — ações urgentes esperam ou viram automáticas?
  • Notificações pro Jorge não podem distrair da aula
  • Atletas em conflito — esperam Jorge ou existe escalonamento?

Conflitos e Edge Cases

Cenário 25 — Resultado contestado 🟡

Personas: Fabricio (vencedor reportado), oponente que discorda

Contexto: Final de partida, Fabricio reporta "ganhamos 6-3", oponente entra contestando.

Pontos críticos:

  • Modelo otimista (60s janela)
  • Operador decide se conflito não resolver
  • Estado "CONTESTED" da partida — próxima partida pode iniciar enquanto isso?
  • Notificação ao operador imediata?

Cenário 26 — Internet caiu durante a sessão 🟡

Personas: João, vários atletas

Contexto: Wifi da arena caiu por 15 minutos durante sábado movimentado.

Pontos críticos:

  • Sistema offline-tolerant? (PWA + IndexedDB?)
  • Reconciliação quando volta?
  • Operador continua operando como antes (papel) durante queda?
  • Sinal claro de "modo offline" pra todo mundo?

Cenário 27 — Atleta entra, sai, volta tentando furar fila 🟡

Personas: Atleta troll, Fabricio (impactado), João

Contexto: Atleta percebe que pode "resetar" a posição saindo e voltando — testa o sistema.

Pontos críticos:

  • Critério de Retorno tem que ter penalidade ou identidade persistente impede o jogo
  • Detecção de padrão suspeito?
  • João tem ferramenta pra "bloquear" temporariamente?

Cenário 28 — Atleta abandona partida no meio 🟡

Personas: Atleta que sai irritado, parceiro deixado sozinho, oponentes

Contexto: Atleta perde 0-3, joga raquete na areia, sai.

Pontos críticos:

  • Partida vira "abandono" — quem vence?
  • Parceiro deixado é penalizado?
  • Sistema entra em "estado degradado" — operador resolve?
  • Substituto pode ser chamado ou partida cancela?

Cenário 29 — Atleta machuca durante partida 🟡

Personas: Atleta lesionado, parceiro, oponentes, João

Contexto: Pedro tropeça, machuca tornozelo, partida tem que parar.

Pontos críticos:

  • Cancelamento humano vs sistema entende automaticamente?
  • Próxima partida da fila começa imediatamente em outra quadra?
  • Parceiro do Pedro fica "órfão" — o que fazer?

Cenário 30 — Dois atletas com nome igual no Google 🟡

Personas: 2 João Silvas

Contexto: Coincidência, dois atletas com mesma identidade visível.

Pontos críticos:

  • Sistema mostra apenas o primeiro nome — gera confusão?
  • Mostrar inicial do sobrenome? Avatar diferente?
  • Como dono distingue na operação?

Cenário 31 — Atleta perde celular durante a sessão 🟡

Personas: Atleta que perdeu celular, João

Contexto: Atleta na fila, celular cai e quebra. Sem acesso à PWA.

Pontos críticos:

  • Operador tem como "manter posição" sem celular do atleta?
  • Atleta perde notificação de "sua vez"?
  • Recuperação no celular emprestado funciona?

Cenário 32 — Bateria do celular acaba 🟡

Personas: Atleta sem bateria

Contexto: 70% bateria ao chegar, 4 horas depois acabou. Atleta ainda na arena.

Pontos críticos:

  • Mesma classe do anterior — operador-side fallback
  • Avisos preventivos ("bateria baixa, salve a posição")?
  • Tomada de carga é responsabilidade da arena?

Cenário 33 — Sessão da PWA expira 🟡

Personas: Atleta logado há horas

Contexto: Atleta tá há 3h na arena. Token Google expirou. Faz nova ação e cai pra tela de login.

Pontos críticos:

  • Refresh silencioso de token?
  • Re-login não pode perder estado (posição, histórico do dia)?
  • Safari iOS gotcha (já mapeado pelo IAM specialist)

Cenário 34 — Atleta entra na fila e some pra almoçar 🟡

Personas: Atleta que sai, demais na fila

Contexto: Atleta posição 2, vai no shopping, demora 1h. Quando volta, não tá mais na fila.

Pontos críticos:

  • Critério de "abandono por inatividade" — quanto tempo?
  • Atleta volta — entra de novo no fim, sem aviso?
  • Notificação "você foi removido por inatividade"?
  • Operador override manual de retorno?

Cenário 35 — Atleta quer entrar mas pool está cheio 🟡

Personas: Atleta interessado, pool com limite (ex: 12 atletas máx)

Contexto: Pool "Avançado Sábado" tem limite de 12 (3 partidas simultâneas + 6 esperando). Cheio.

Pontos críticos:

  • Sistema permite "lista de espera" pra entrar no pool?
  • Atleta é notificado quando vaga abre?
  • Pool sem limite vs com limite — quando faz sentido cada um?

Eventos Especiais

Cenário 36 — Torneio interno aos domingos 🟡

Personas: João, ~16 atletas inscritos

Contexto: Domingo, formato torneio (chave eliminatória), regras diferentes do open play.

Pontos críticos:

  • Sessão "Torneio" tem critérios totalmente diferentes
  • Como o sistema lida com brackets/chaves?
  • Provavelmente fora do escopo v0 — capturar como v1+

Cenário 37 — Aula coletiva ocupa Q1 das 14h às 15h 🟡

Personas: Jorge (instrutor), 8 alunos da aula, atletas do open play em paralelo

Contexto: Sábado tarde, Q1 reservada pra aula, Q2-Q4 continuam open play.

Pontos críticos:

  • Pools sobrepostos (Aula + Open Play coexistem na mesma sessão temporal)
  • Atletas do open play não devem aparecer na fila de Q1
  • Quando aula termina, Q1 volta pro pool open play automaticamente?

Cenário 38 — Festa de aniversário aluga 2 quadras 🟡

Personas: João, aniversariante, 12 convidados, atletas do open play

Contexto: Sábado tarde, evento privado contratou Q1 e Q2 das 16h às 20h. Q3 e Q4 continuam open play.

Pontos críticos:

  • Pool "Privado/Evento" — convidados são identificados?
  • Atletas do open play percebem que tem só 2 quadras hoje?
  • Tempo de espera dobra — sistema avisa antes de eles chegarem?

Cenário 39 — Workshop com profissional convidado 🟡

Personas: Profissional convidado, ~20 atletas inscritos, Jorge organizando

Contexto: Domingo, evento especial divulgado em redes. Atletas pagam à parte pra participar.

Pontos críticos:

  • Cadastro/inscrição prévia (fora da chegada espontânea)
  • Identidade dos inscritos vs walk-ins
  • Quadras dedicadas, regras dedicadas

Cenário 40 — Avaliação de nível agendada 🟡

Personas: Atleta novo, João/Jorge avaliador

Contexto: Atleta marca horário pra ser avaliado (15 min). Após, recebe nível atribuído.

Pontos críticos:

  • Slot agendado fora da fila normal
  • Avaliação registra evento (AvaliacaoRealizada) que cria perfil
  • Atleta pode contestar nível atribuído?

Cenário 41 — Dia chuvoso, sessão cancelada 🟡

Personas: João, atletas que já chegaram, atletas a caminho

Contexto: Sábado 9h, chuva forte. João decide cancelar a sessão. Mas 5 atletas já chegaram e 8 estão a caminho.

Pontos críticos:

  • Cancelamento de sessão em massa — notificação a quem?
  • Quem já pagou avulso recebe estorno?
  • Atletas a caminho — sistema sabe quem (notificação pelo WhatsApp)?

Cenário 42 — Feriado com horário diferente 🟡

Personas: João, atletas confusos com horário

Contexto: 7 de setembro, arena abre só de manhã. Atleta acostumado com horário normal aparece à tarde.

Pontos críticos:

  • Sessão com horário customizado por dia
  • Comunicação prévia (push/WhatsApp) pros frequentes
  • Sistema mostra "fechado hoje das 14h" antes da pessoa sair de casa

Crescimento e Histórico

Cenário 43 — Fabricio joga há 6 meses, vê histórico próprio 🟡

Personas: Fabricio

Contexto: Fabricio quer ver "quanto eu joguei?", "ganhei mais ou perdi mais?".

Pontos críticos:

  • Histórico individual visível — pra ele ou também pros outros?
  • Métricas que importam pro atleta casual (não vira ranking competitivo)
  • Privacy: pode esconder?

Cenário 44 — Carla pede pro João revisar nível 🟡

Nota (a partir de v0.2): este cenário muda de natureza com o PerfilDinâmico. A "promoção" deixa de ser evento explícito e vira algo contínuo/automático (Cenário 13). Este cenário sobrevive como edge case: quando o atleta discorda do score automático.

Personas: Carla, João

Contexto: Carla acha que está mais forte do que o sistema mostra (talvez ela jogou pouco recentemente, score "cooled down"). Quer pedir avaliação humana ao João.

Pontos críticos:

  • Workflow de "solicitar revisão" — sistema oferece um botão ("Pedir reavaliação ao operador")?
  • João avalia (presencial ou olhando histórico) e usa OperadorRecalibrouPerfil se concordar — registro com motivo
  • Quanto tempo Carla pode "esperar" pra ser avaliada? SLA implícito do operador?
  • Anti-abuso: Carla pede toda semana — sistema rate-limita?

Cenário 45 — Atleta volta após meses fora 🟡

Personas: Atleta que parou de jogar, voltou após 6 meses

Contexto: Sumiu, voltou. Sistema reconhece (mesmo Google), mas perfil tá "frio".

Pontos críticos:

  • Mostra histórico antigo? Acumulado?
  • Nível "expira" se não jogar muito tempo?
  • Boas-vindas de volta — humano ou automático?

Cenário 46 — Fabricio sobe de intermediário pra avançado 🟡

Nota (a partir de v0.2): a "promoção" não é mais evento discreto — é deslocamento contínuo do score no PerfilDinâmico. Este cenário foca no momento em que isso vira visível pro Fabricio.

Personas: Fabricio, sistema

Contexto: Após 4 meses jogando 2×/semana, vencendo adversários intermediários e ocasionalmente avançados, o score do Fabricio cruzou o limiar pra "avançado".

Pontos críticos:

  • Sistema não precisa promover formalmente — ele simplesmente passa a aparecer elegível em pools "Avançado"
  • Fabricio recebe notificação? Ou descobre quando vê na tela? (decisão de UX)
  • cerimônia opcional — push: "🎉 Você agora é elegível pro Pool Avançado de Sábado" (engajamento sem ser meritocrático demais)
  • Score pode cair também — se Fabricio para de jogar por meses, score "esfria". Aí ele volta e se sente regredido. Como o sistema comunica isso sem desmotivar?

Multi-modalidade e Multi-pool

Cenário 47 — Arena com BT e vôlei simultâneos 🟡

Personas: Fabricio (só BT), Maria (BT e vôlei), João

Contexto: Beach do João tem 3 quadras BT e 1 vôlei. Fabricio entra na fila de BT, Maria pode escolher.

Pontos críticos:

  • Pool por modalidade — Fabricio só vê fila BT?
  • Maria com perfil multi-modalidade — escolhe qual fila?
  • Tela inicial mostra ambas modalidades de forma clara?

Cenário 48 — Atleta multi-modalidade 🟡

Personas: Maria

Contexto: Maria joga BT (avançada) e vôlei (intermediária). Quer poder participar das duas filas.

Pontos críticos:

  • Perfil tem um nível por modalidade
  • Maria pode estar em 2 filas simultaneamente? Ou tem que escolher?
  • Se for chamada nas duas — qual prevalece?

Cenário 49 — Q3 troca de modalidade durante o dia 🟡

Personas: João, atletas

Contexto: Q3 é BT pela manhã, vira vôlei à tarde. Mesma quadra física.

Pontos críticos:

  • Pool sazonal — Q3 está em pools diferentes em sessões diferentes (já modelado)
  • Como atletas BT entendem que Q3 some da fila deles à tarde?
  • Transição limpa entre sessões consecutivas

Cenário 50 — Dupla mista de modalidades 🟡

Personas: Fabricio (BT) + amigo (vôlei)

Contexto: Querem jogar juntos. Mas as modalidades são diferentes — qual fila?

Pontos críticos:

  • "Dupla mista" tem sentido?
  • Sistema bloqueia ou permite com aviso?
  • Caso edge ou caso comum?

Pagamento (v1+)

Provavelmente fora do escopo v0, mas vale mapear.

Cenário 51 — Avulso paga via PIX antes de jogar 🟡

Pontos críticos:

  • Cobrança automática antes de entrar na fila?
  • Confirmação PIX → check-in
  • O que acontece se atleta pagar mas não chegar?

Cenário 52 — Mensalista renova mensalidade pelo app 🟡

Pontos críticos:

  • Lembrete de vencimento
  • PIX recorrente / cartão
  • O que acontece se não renovar — cai pra avulso?

Cenário 53 — Pacote de aulas (10 aulas) consumido pelo sistema 🟡

Pontos críticos:

  • Carteira de "créditos de aula"
  • Cada aula consome 1 crédito
  • Visibilidade pro atleta

Multi-arena (v1+)

Cenário 54 — Fabricio vai numa arena nova da mesma rede 🟡

Pontos críticos:

  • Perfil persiste entre arenas
  • Histórico unificado
  • Permissões de visibilidade entre arenas

Cenário 55 — Torneio inter-arenas 🟡

Pontos críticos:

  • Atletas de várias arenas em um evento
  • Ranking unificado
  • Bracket que cruza arenas

Acessibilidade e Limites

Cenário 56 — Sr. Antônio, 67 anos, sem app 🟡

Personas: Sr. Antônio, João

Contexto: Mensalista de longa data, não usa apps. João vai precisar operar por ele.

Pontos críticos:

  • "Atleta operado por terceiro" — modelagem?
  • João adiciona Sr. Antônio na fila pelo painel
  • Sr. Antônio nunca vê tela do sistema, só joga

Cenário 57 — Atleta com mãos sujas/molhadas 🟡

Pontos críticos:

  • UI tem que funcionar com toque impreciso
  • Botões grandes, sem hover, sem precisão milimétrica
  • Voz como alternativa? (provavelmente não no v0)

Cenário 58 — Atleta deficiente visual 🟡

Pontos críticos:

  • Acessibilidade da PWA — leitor de tela
  • Notificação por som / vibração
  • v0 cobre? Ou é v1+?

Cenário 59 — Atleta sem WhatsApp 🟡

Pontos críticos:

  • SMS como fallback (custo: ~R$ 0,05/msg)
  • Push notification pela PWA (precisa instalar como home screen)
  • Atleta fica grudado no celular

Cenário 60 — Conexão de internet ruim no celular 🟡

Pontos críticos:

  • PWA funciona com latência alta?
  • Atualizações de fila demoram a chegar — atleta perde a vez?
  • Compressão de dados, polling otimizado

Próximos cenários a desenvolver

(Lista colaborativa — adicionar conforme conversamos.)

  • Aniversariante ganha quadra grátis (regra promocional)
  • Amigo do dono entra fora da fila (e como sistema lida sem virar zona)
  • Atleta tira foto/vídeo no meio do jogo — atrapalha contagem de tempo?
  • Sponsor/marca quer aparecer no painel da arena (futuro)
  • Integração com câmeras — replay, transmissão
  • Atleta marca presença antes de chegar (a caminho da arena)

Template para novo cenário

markdown
### Cenário N — [Título curto e descritivo]

**Personas**: [lista]

**Contexto**: [quando, onde, qual o estado da arena]

**Cena**:

> [narrativa em prosa, em itálico/blockquote, com detalhes visuais e sensoriais]

**Pontos críticos do sistema**:
- [o que tem que funcionar pra esse cenário não quebrar]

**Critérios em jogo (Camada 3)**:
- [quais critérios da Camada 3 do modelo são tensionados aqui]

**Perguntas em aberto**:
- [coisas que esse cenário levanta e ainda não foram decididas]