4 min lectura • Guide 652 of 877
Estrategias de Rollout de Feature Flags
Los feature flags transforman deployment de eventos todo-o-nada en rollouts controlados que puedes ajustar en tiempo real. GitScrum ayuda a trackear estado de feature flags a través de tareas, coordinar releases con flags, y gestionar el lifecycle de flags desde creación hasta limpieza.
Fundamentos de Feature Flag
Tipos de Flag
CATEGORÍAS DE FEATURE FLAG:
┌─────────────────────────────────────────────────────────────┐
│ │
│ RELEASE FLAGS (temporales): │
│ Propósito: Controlar rollout de feature │
│ Duración: Días a semanas │
│ Ejemplo: NEW_CHECKOUT_FLOW │
│ Remover: Después de 100% rollout │
│ │
│ EXPERIMENT FLAGS (temporales): │
│ Propósito: A/B testing │
│ Duración: Duración del experimento │
│ Ejemplo: PRICING_PAGE_VARIANT_B │
│ Remover: Cuando concluye experimento │
│ │
│ OPS FLAGS (long-lived): │
│ Propósito: Control operacional │
│ Duración: Permanente │
│ Ejemplo: ENABLE_RATE_LIMITING │
│ Remover: Nunca (toggle on/off según necesidad) │
│ │
│ PERMISSION FLAGS (long-lived): │
│ Propósito: Control de acceso a features │
│ Duración: Permanente │
│ Ejemplo: ENTERPRISE_ANALYTICS │
│ Remover: Nunca (controla entitlements) │
└─────────────────────────────────────────────────────────────┘
Lifecycle de Flag
LIFECYCLE DE FLAG:
┌─────────────────────────────────────────────────────────────┐
│ │
│ CREAR → DESARROLLAR → ROLLOUT → ESTABILIZAR → LIMPIAR │
│ │
│ CREAR: │
│ • Definir nombre y tipo de flag │
│ • Documentar propósito y owner │
│ • Establecer estado inicial (off) │
│ │
│ DESARROLLAR: │
│ • Implementar feature detrás de flag │
│ • Testear con flag on/off │
│ • Enviar a producción (flag off) │
│ │
│ ROLLOUT: │
│ • Habilitar para interno → beta → % gradual │
│ • Monitorear métricas en cada etapa │
│ • Pausar/rollback si hay issues │
│ │
│ ESTABILIZAR: │
│ • Alcanzar 100% rollout │
│ • Monitorear 1-2 semanas │
│ • Confirmar feature estable │
│ │
│ LIMPIAR: │
│ • Remover checks de flag del código │
│ • Eliminar configuración de flag │
│ • Actualizar documentación │
└─────────────────────────────────────────────────────────────┘
Estrategias de Rollout
Rollout Progresivo
PLAN DE ROLLOUT GRADUAL:
┌─────────────────────────────────────────────────────────────┐
│ Feature: NEW_PAYMENT_FLOW │
├─────────────────────────────────────────────────────────────┤
│ │
│ ETAPA 1: Interno (Día 1) │
│ Target: Solo empleados de la empresa │
│ Duración: 2 días │
│ Éxito: Sin bugs críticos │
│ │
│ ETAPA 2: Beta (Día 3) │
│ Target: Usuarios beta opted-in (~500) │
│ Duración: 3 días │
│ Éxito: <1% error rate, feedback positivo │
│ │
│ ETAPA 3: 5% (Día 6) │
│ Target: 5% aleatorio de usuarios │
│ Duración: 2 días │
│ Éxito: Métricas estables vs control │
│ │
│ ETAPA 4: 25% (Día 8) │
│ Target: 25% aleatorio │
│ Duración: 3 días │
│ Éxito: Tasa de conversión mantenida │
│ │
│ ETAPA 5: 50% (Día 11) │
│ Target: 50% aleatorio │
│ Duración: 3 días │
│ Éxito: Métricas de performance OK │
│ │
│ ETAPA 6: 100% (Día 14) │
│ Target: Todos los usuarios │
│ Duración: 7 días monitoreo │
│ Éxito: Listo para limpieza │
└─────────────────────────────────────────────────────────────┘