Estimativa da implementação de um feature flag
Como estimar a implementação de um feature flag: porcentagens por etapas, kill-switches, métricas de restrição e a limpeza que ninguém programa. Um flag é um pequeno produto, não uma implantação.
A história lança a bandeira e esquece a limpeza, as métricas e o botão de desligamento de emergência.
Um feature flag não é um mecanismo de implantação; é um pequeno produto. Ele precisa de um valor padrão, um caminho de substituição, um registro de auditoria, um botão de desativação e um plano de remoção. A maioria desses elementos está ausente do ticket original, que geralmente diz apenas “coloque isso em um flag”. Esse ticket é a porta de acesso, não o recurso.
A estimativa deve levar em conta as fases de implementação (1% → 10% → 50% → 100%), as métricas que determinam se deve-se aumentar ou reverter a implementação em cada fase e o ticket de limpeza que remove o sinalizador assim que o recurso se tornar permanente. Equipes que não planejam essa limpeza acabam lançando uma base de código repleta de sinalizadores obsoletos em menos de um ano — o que, por si só, já constitui uma dívida operacional.
O que se fala na sala
Backend: “Envolver a chamada em um sinalizador — algumas linhas.”
SRE: “Qual métrica nos indica que a implantação está indo mal?”
PM: “Em quais coortes o sinalizador é ativado primeiro?”
Manchete: “Quem retira a bandeira quando chegarmos a 100%, e quando isso acontece?”
Backend: “Existe um kill switch independente do sinalizador?”
Perguntas que vale a pena fazer antes de votar
- Formato da implementação: rampa linear, por coorte ou transição booleana?
- Valor padrão caso o serviço “flag” esteja inativo — comportamento antigo ou novo?
- Métricas que determinam o avanço de cada fase — o que significa que “está indo bem”?
- O caminho do kill-switch é independente do sistema de sinalizadores?
- Nota de remoção: criada antecipadamente ou “vamos deixar para depois”?
- Registro de auditoria: quem alterou o status, quando e por quê?
A solução é a mesma da maioria das tarefas relacionadas a implementações: dividir a implementação, a implementação em etapas e a limpeza em tarefas separadas, e criar o ticket de remoção antes que você se esqueça de que ele existe.
Um flag é um produto pequeno. Faça uma estimativa da rampa, das métricas de gating e da limpeza — não apenas do wrap.
Consulte como estimar a implementação de um limite de taxa para ver o mesmo padrão de “implementação que consome o trabalho”, bem como os outros exemplos práticos de estimativa. Inicie uma sessão gratuita de planning poker quando as fases forem definidas.