O que são Feature Flags e por que meu sistema deveria usar?
Feature Flags são vistas como checkboxes na interface e armazenadas em banco de dados como boleanos (true/false). Feature Flags também chamadas Feature Toggles podem também ser chamadas de sinalizadores, devido à capacidade de habilitar ou desabilitar determinado recurso do sistema a nível de domínio. Feature Flags são geralmente configuradas por domínio, e cada domínio possui sua lista de configurações de Feature Flags. Feature Flags são usadas pra dizer se determinado recurso está ativado ou desativado naquele domínio:
Caso de uso de uma Feature Flag
Suponha um sistema usado em vários domínios de vários clientes que usam o mesmo repositório de código. Tendo isso em mente, suponha que está em desenvolvimento um recurso que chamaremos de performance-report que inicialmente será disponibilizado apenas para um cliente específico. É nesse ponto que entra a Feature Flag. No domínio desse cliente específico, definiremos o valor da Feature Flag performance-report como true/1. Nos demais clientes/domínios, a Feature Flag será vista e lida como false/0, impedindo que performance-report seja exibido para esses clientes.
Conclusão
“Bandeiras de funcionalidade” atuam então como uma proteção extra no seu processo de entrega de features. Ao criar uma nova funcionalidade em sua aplicação, crie para ela uma feature flag. Libere essa funcionalidade para um número menor de clientes (10 a 20%), onde o impacto de um possível erro seja menor, ou apenas para aquele cliente que solicitou a criação da funcionalidade. Dessa forma, você evita prejuízos em larga escala e entrega funcionalidades em um fluxo sustentável com tempo e espaço para testes.
Quer saber mais sobre como funciona? Fale com um desenvolvedor agora mesmo!O conteudo foi útil? Isso é fantástico. Quer incentivar mais posts como esse? Mostre seu apoio com qualquer valor.
Chave PIX: d0311e58-cb6e-4d47-b3d8-3d4254763ce7