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 controle e a limpeza que ninguém programa. Um feature 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 incluir 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 constitui uma dívida operacional por si só.
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?”
Líder: “Quem retira a bandeira quando chegarmos a 100%, e quando isso vai acontecer?”
Backend: “Existe um kill switch independente do sinalizador?”
Perguntas que vale a pena fazer antes de votar
- Formato de implementação: rampa Linear, por coorte ou transição booleana?
- Valor padrão caso o serviço de sinalização esteja inoperante: comportamento antigo ou novo?
- Métricas que determinam a aprovação de cada fase: o que significa “estar 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 a marcação, quando e por quê?
A solução é a mesma da maioria das tarefas relacionadas a implementações: divida a implementação, a implantação em etapas e a limpeza em tarefas separadas e crie 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 a seção “Estimativa de uma implementação com limite de taxa” para conhecer o mesmo padrão de “implementação que consome o trabalho”, bem como outros exemplos práticos de estimativa. Inicie uma sessão gratuita de planning poker quando as fases forem definidas.