top of page
lápis
Escrevendo Histórias Eficientes

​​História de usuário é uma descrição curta e simples de uma funcionalidade do ponto de vista do usuário final.

Ela ajuda a:

  • Guiar o desenvolvimento com foco no valor entregue

  • Criar alinhamento entre Product Owner, DEV, QA e UX

  • Servir como base para teste

 Formato clássico:

Como [tipo de usuário]
Quero [uma ação ou funcionalidade]
Para que [benefício ou valor entregue]

Como cliente do e-commerce
Quero visualizar meus pedidos anteriores
Para que eu possa acompanhar minhas compras

 

 Escrita eficiente em Gherkin

O Gherkin serve pra transformar a história em casos de teste legíveis por humanos e máquinas, usados tanto por testes manuais quanto automatizados.

 Regras para boa escrita em Gherkin:
  • Simples, clara e objetiva

  • Um cenário = um fluxo de teste

  • Usar linguagem de negócio

  • Incluir dados representativos (ex: produtos, status, códigos)

 

Estrutura:

  Funcionalidade: Histórico de Pedidos

  Cenário: Exibir pedidos finalizados
  Dado que o cliente está logado no sistema
  E acessa o menu “Meus Pedidos”
  Quando ele visualizar a lista de pedidos
  Então ele deve ver os pedidos com status "Entregue"

 

Exemplos de histórias de usuário

 API – Consulta de Saldo do Cliente

Como cliente logado
Quero consultar meu saldo atual via API
Para que eu possa visualizar meu limite disponível nos canais digitais

Critérios de aceitação:

  • Deve retornar saldo, data de atualização e moeda

  • A resposta deve seguir padrão JSON

  • A API deve estar protegida por token de autenticação

 

Tela – Histórico de Transações

Como cliente do app
Quero visualizar o histórico das minhas últimas transações bancárias
Para que eu possa acompanhar movimentações da minha conta

Critérios de aceitação:

  • Exibir data, tipo de transação, valor e descrição

  • Permitir filtro por data

  • Exibir as 10 últimas transações por padrão

  • A interface deve estar alinhada com o novo design system

 

Financeiro – Geração de Boleto

Como cliente com pagamento em aberto
Quero gerar o boleto da minha fatura atual
Para que eu possa realizar o pagamento dentro do prazo

Critérios de aceitação:

  • A geração deve incluir vencimento, valor e código de barras

  • O boleto deve estar disponível em PDF

  • Deve ser possível copiar o código de barras

  • A API de geração deve validar se a fatura está vencida antes de emitir o boleto

 

Segurança – Recuperar Senha

Como usuário que esqueceu a senha
Quero recuperar minha senha via e-mail
Para que eu possa acessar minha conta novamente com segurança

Critérios de aceitação:

  • O link enviado por e-mail deve expirar em 15 minutos

  • A nova senha deve ter pelo menos 8 caracteres, 1 número e 1 letra maiúscula

  • A recuperação deve ser auditada no log de segurança

 
Integração – Enviar Notificação via Kafka

Como sistema financeiro interno
Quero enviar um evento para o tópico Kafka após o pagamento ser confirmado
Para que outros sistemas possam reagir ao status do pagamento

Critérios de aceitação:

  • O evento deve conter ID do pagamento, status, timestamp e CPF do cliente

  • O envio deve ser assíncrono

  • Em caso de falha, deve ser registrado e reprocessado

Critério de Aceite 

O que é:

Critérios de aceite são regras objetivas que definem quando uma história de usuário pode ser considerada funcionalmente correta e pronta para ser aceita pelo Product Owner (PO).

São condições mínimas e verificáveis, escritas antes ou junto com a história, que orientam:

  • O que deve funcionar

  • O que deve ser validado

  • Limites e exceções

 Importância:
  • Evita mal-entendidos entre DEV, QA, PO e UX

  • Garante foco no valor do negócio

  • Serve de base para criação de cenários de teste

  • Ajuda na automação de testes com Cucumber/Gherkin

  • Define claramente o que é sucesso na entrega

 Exemplo prático:

História: Como cliente, quero visualizar meu saldo bancário para acompanhar minha conta

Critérios de aceite:

  • O saldo deve ser retornado com duas casas decimais

  • O valor deve estar em reais (BRL)

  • Deve ser exibida a data da última atualização

  • A API deve retornar código 200 com conteúdo válido

  • Se o cliente estiver deslogado, deve retornar 401

 Definição de Pronto (Definition of Ready - DoR)

 O que é:

É uma checklist acordada pelo time que define quando uma história está pronta para entrar em desenvolvimento.

Ela garante que a história esteja madura, clara e com todos os insumos necessários para começar o trabalho sem dúvidas.

 Importância:
  • Evita histórias "pela metade" sendo desenvolvidas

  • Minimiza retrabalho e interrupções

  • Facilita a planejamento da sprint

  • Ajuda o time a dizer “não está pronto para desenvolver”

  • Fortalece o papel de QA e UX desde o início

Exemplo de checklist – Definição de Pronto:
  • História de usuário escrita no formato correto

  • Critérios de aceite claros e objetivos

  • Regras de negócio discutidas

  • Protótipo disponível (se houver interface)

  • Dependências mapeadas

  • Dados de teste definidos (para QA e DEV)

  • API contratada/documentada (se houver)

  • Pontuada e priorizada

Diferença entre Critério de Aceite e Definição de Pronto:

Critério de Aceite - Define o que precisa estar funcionando para a história ser considerada "feita e aceita"

Definição de Pronto - Define o que precisa estar preparado antes da história entrar em desenvolvimento

Uma história, várias tarefas (quebra técnica)

Uma única história de usuário pode (e deve!) ser dividida em múltiplas tarefas técnicas, como:

Tipo de Tarefa: Modelagem do banco
  • Responsável: DEV

  • Exemplo: Criar tabela orders

Tipo de Tarefa: API backend
  • Responsável: DEV

  • Exemplo: Criar endpoint GET /orders por usuário

 Tipo de Tarefa: Teste da API
  • Responsável: QA ou DEV

  • Exemplo: Validar o retorno da API com status code 200 e conteúdo esperado

 Tipo de Tarefa: Criação de tela
  • Responsável: DEV

  • Exemplo: Desenvolver componente em React para exibir o histórico de pedidos

Tipo de Tarefa: Teste da interface
  • Responsável: QA

  • Exemplo: Validar a renderização da tela com mock de pedidos, checando campos e layout

 Estimativas (Story Points, tempo e limite por sprint)
 O que é 1 ponto?
  • Representa uma unidade de complexidade relativa

  • Pode SIM ser aproximadamente igual a 1 hora (em squads que escolhem esse critério) — embora o ágil prefira complexidade a tempo.

 

 

💡 Dica prática:
Se você usa "1 ponto = 1 hora" e sua sprint tem 40h úteis por dev, o máximo seria 40 pontos. Mas na prática,

considere 60% da capacidade (24 pontos por dev) para absorver reuniões, bugs e ajustes.

 Sprint com entregas pequenas
​​Boa prática:
  • Quebre grandes funcionalidades em entregas incrementais.

  • Evite deixar para integrar só no final da sprint.

 Exemplo prático:
​Sprint 1
  • Backend: GET /orders, modelagem e testes

  • API testada com Postman ou RestAssured

  • Frontend com tela mockada, apenas layout

Sprint 2

  • Integração front com API real

  • Ajustes visuais

  • Testes funcionais e exploratórios

 

Exemplo completo de jornada DEV + QA


Tarefas (quebra por função):

Tarefa                                               Pontos   Responsável    Descrição
Criar endpoint /orders/{id}                      3             DEV            Retorna pedido por ID
Testes unitários da API                           1              DEV            Cobertura mínima 80%
Testes da API (RestAssured)                     2             QA            Validar código, corpo, mensagens
Componente de tela                               3             DEV            Criar modal ou página
Integração com backend                          2              DEV            Fazer chamada e exibir dados
Testes funcionais (manual ou Selenium)    3              QA       Validar se tudo aparece corretamente
Teste exploratório                                  2               QA            Cobrir caminhos não mapeados

Pontuação total por Sprint (referência prática)

Cargo             Capacidade (horas úteis)    % alocação em tarefas    Pontos médios
DEV Pleno               40h                               60%                     24 pontos
QA Pleno                40h                               60%                      20–24 pontos

Obs: Se o time estiver muito maduro, pode usar até 75% da capacidade para tarefas técnicas.

Entregas parciais em sprints curtas
Template Excel de Histórias + Gherkin + Status QA/DEV
 

ID           História de Usuário                Gherkin (Cenário)                                   Tarefa                                Tipo (DEV/QA/UX/PO)    Responsável    Sprint        Pontos    Status (TO DO / DOING / DONE)  Data Entrega    OBS
US001    Como cliente, quero                                                                    Criar tabela orders no banco             DEV                   João            Sprint12      3                  DONE                          10/07           OK
           visualizar meus pedidos 
           para acompanhar

              as entregas                  Cenário: Exibir pedidos finalizados
                                               Dado que o cliente está logado no sistema
                                               E acessa o menu “Meus Pedidos”
                                               Quando ele visualizar a lista de pedidos
                                               Então ele deve ver os pedidos

                                                     com status "Entregue"        
US001    idem    idem                                                                                Criar endpoint GET /orders                DEV                  João           Sprint 12    3        DONE                                     11/07       Autenticado
US001    idem    idem                                                                                Testar retorno da API (status, corpo)   QA                  Paula           Sprint 12    2        DONE                                  12/07    Testes no Postman
US001    idem    idem                                                                                Criar tela de histórico no front           DEV                 João            Sprint 13    3        DOING                               15/07    Layout pronto
US001    idem    idem                                                                                Validar tela com mock de pedidos        QA                Paula            Sprint 13    2        TO DO                           
18/07    Aguardando entrega
 

Teste de Software - Em Foco.
bottom of page