Aller au contenu principal
two-feature-flag-toggles

Feature Flags : Innovez tout en contrôlant votre dette technique

6 mars 2024

Pour construire un bon produit et optimiser son usage, l’innovation est clé. Il est pour cela indispensable d’expérimenter vos fonctionnalités. Avec les feature flags, vous contrôlez pleinement le lancement de vos features et de vos tests mais cela implique une plus grande vigilance pour préserver de l’intégrité de votre code. Découvrez comment Kameleoon facilite la gestion de votre dette technique.

Les "feature flags”, pour les champions de l’innovation

Avec les "feature flags", vous dérisquez vos lancements et vos mises à jour en protégeant chaque fonctionnalité par un “flag” qui vous permet d’activer ou de désactiver la feature à volonté. Vous pouvez ainsi procéder à un déploiement progressif ou ciblé et tester vos nouvelles fonctionnalités auprès d'utilisateurs spécifiques. Avec ce type de lancement, vous étudiez l’impact de la fonctionnalité en temps réel et itérez immédiatement en fonction des données issues des comportements des visiteurs, sans modifier votre code. Vous êtes plus agile dans le développement de votre Produit.

Feature flags obsolètes : le revers de la médaille

Bien que vous soyez stimulé par l’innovation, restez vigilant à l’intégrité de votre code. Une fois leur fonction remplie, il faut veiller à supprimer le(s) feature flag(s) mis en place. Les feature flags oubliés encombrent le code. Ils peuvent impacter les performances de l’application avec un code moins qualitatif, plus complexe et plus lent à s’exécuter. À l'inverse, une base de code “propre” garantit de meilleures performances avec plus d’agilité dans la construction, le test et le déploiement de nouvelles fonctionnalités. Cela se traduit par des cycles de publication plus courts et un produit dynamique et réactif.


Des nombreux exemples témoignent de l'importance d’observer une certaine rigueur dans le code. Un feature flag oublié a récemment largement dégradé les performances d’une célèbre plateforme e-commerce. Initialement introduit pour une vente flash et abandonné après l'événement, il est progressivement rentré en conflit avec l’évolution du code, perturbant l'expérience des utilisateurs. 

Maîtrisez votre dette technique avec Kameleoon

Pour une gestion efficace, Kameleoon ajoute un suivi avancé de vos feature flags dans votre tableau de bord. Le système attire votre attention sur deux types de flags : 

  • Ceux qui n’ont pas été référencés dans le code depuis un certain temps, pour éviter qu’ils ne causent des problèmes alors qu’ils sont inaccessibles ou supprimés. 
  • Ceux qui n'ont pas été modifiés ou qui n'ont pas été utilisés récemment, ce qui favorise leur nettoyage. 

 

Cette nouvelle fonctionnalité du tableau de bord vous permet d’entretenir régulièrement votre code pour préserver son intégrité. Vous êtes invités à catégoriser vos feature flags selon les deux types suivants : 

  • Les temporaires : pour les besoins à court terme et les expériences en cours. 
  • Les permanents : pour une intégration à long terme dans la base de code. 

 

Ces deux catégories sont modifiables à tout moment, en fonction des besoins de votre projet. Depuis le tableau de bord, vous aurez une vue d’ensemble complète de vos features flags, qu’ils soient actifs, utilisés dans des expériences, obsolètes, temporaires, ou permanents. Les colonnes “Dernière évaluation” et “État” indiquent la dernière utilisation de l'indicateur et catégorisent son état de santé. Des filtres et un raccourci "Feature flags obsolètes" permettent d'identifier rapidement les lignes de code nécessitant une intervention. 

Avec cette approche, vous devriez pouvoir garantir l’intégrité de votre code et en favorisant la collaboration de vos équipes, sans négliger l’importance de traiter votre dette technique. Si vous souhaitez aller plus loin, consultez notre documentation technique, contactez votre CSM ou demandez une démo pour découvrir cette fonctionnalité et la plateforme Kameleoon. 

Suivez-nous sur LinkedIn ou rejoignez notre canal de discussion Slack.

Thèmes traités dans cet article