Fundamentos de produto · Iniciante

Escrever uma especificação que o time realmente lê

Em uma linha: Uma boa especificação descreve comportamento e critérios de aceite, não telas prontas — e o tamanho dela se mede em páginas, não em dezenas.

O que entra e o que não entra

Uma especificação que descreve cada pixel vira um documento que ninguém atualiza depois de duas semanas. Uma que descreve só uma visão gera vinte perguntas por dia. O ponto do meio: para cada capacidade, quem usa, o que acontece no caminho normal, o que acontece quando algo falha, e a condição para dizer que está pronto.

Os critérios de aceite economizam a maior parte das discussões. “O usuário recebe um aviso em até um minuto” é critério; “o processo será rápido” é desejo.

Descreva fluxos, não telas

Descreva o fluxo como sequência: estado inicial, ação, resultado. Depois escreva os caminhos de falha — sem conexão, o usuário fechou no meio, o arquivo está corrompido, permissão negada. Em projetos reais, os caminhos de falha são metade do trabalho e um quarto da especificação.

Telas são redesenhadas; fluxos permanecem. Por isso o design é linkado a partir da especificação, e não embutido nela.

A parte que todo mundo pula

Escreva explicitamente o que está fora do escopo desta versão. Uma lista de “agora não” é ferramenta de gestão, não desculpa: permite dizer “isso mesmo, e vem depois” em vez de rediscutir em toda reunião.

Acrescente as premissas em que você se apoia. Premissa escrita é risco gerenciado; premissa que ficou na cabeça é surpresa.

Indo mais fundo

Mantenha a especificação perto do código: no repositório, versionada, com histórico de mudanças. Documento em pasta compartilhada envelhece em silêncio. Critérios de aceite escritos em formato padronizado viram diretamente uma lista de testes, e é isso que transforma uma especificação em ferramenta de trabalho.