Les chefs de produit recherchent constamment des moyens d'ajouter plus de valeur à un produit et d'offrir de nouvelles expériences de produit aux clients. Cette livraison continue ou ce déploiement continu, si vous voulez, implique la possibilité de pousser les mises à jour du produit aux clients, dans l'espoir que la nouvelle fonctionnalité fonctionne correctement. Sinon, il est renvoyé au développement pour un correctif.
Les drapeaux de fonctionnalités donnent aux chefs de produit la possibilité d'expérimenter des fonctionnalités. Il permet le déploiement progressif et leur permet de rationaliser quel public a accès à quelle fonctionnalité.
Dans cet article, je vais vous présenter un concept général de ce que sont les indicateurs de fonctionnalité et pourquoi les ingénieurs et les chefs de produit les trouvent précieux.
Comme fréquemment défini, un indicateur de fonctionnalité, souvent appelé bascule de fonctionnalité, est un mécanisme qui permet d'activer et de désactiver certaines fonctionnalités pendant l'exécution, sans déployer de code.
Par exemple, chez Meta [anciennement Facebook], les feature flags jouent un grand rôle. Avez-vous remarqué que lorsque Meta annonce de nouvelles fonctionnalités, il déploie des tests auprès d'un petit pourcentage de personnes, puis s'étend progressivement à davantage de personnes dans le monde ? Cette segmentation d'audience permet à l'entreprise de valider d'abord avec un sous-ensemble d'utilisateurs, car il serait très risqué de lancer des fonctionnalités expérimentales à leurs 3,6 milliards d'utilisateurs actifs mensuels.
Les indicateurs de fonctionnalité permettent aux équipes de déployer une nouvelle fonctionnalité en production dès que possible. Explorons quelques cas d'utilisation :
Il s'agit de tester vos fonctionnalités dans l'environnement dans lequel elles vivront. Pour certains ingénieurs QA et chefs de produit, moi y compris, les tests en production (TiP) peuvent être intimidants. C'est comme marcher sur des coquilles d'œufs. Pour des raisons évidentes, TiP peut créer des fuites qui exposent des vulnérabilités à de vrais utilisateurs ou déstabilisent leur expérience.
Avec les indicateurs de fonctionnalité, les risques possibles liés aux tests en production peuvent être atténués, car le code peut être déployé derrière, caché aux clients, puis déployé dans les versions Canary. Cela donne aux équipes d'ingénierie et de produit un contrôle granulaire sur le lancement de nouvelles fonctionnalités avec moins de risques.
En fait, il est logique de vouloir non seulement savoir que vos fonctionnalités fonctionnent en staging, mais aussi en production, d'où les tests en production. La gestion des fonctionnalités vous aide à proposer vos fonctionnalités et votre expérience produit en toute sécurité.
Le logiciel en tant que service (SaaS) propose généralement différents plans d'abonnement aux clients. Les plans gratuits ont des fonctionnalités de base, tandis que les plans payants ont différents ensembles de fonctionnalités de premier ordre qui constituent les plans.
L'utilisation d'indicateurs de fonctionnalité pour la tarification afin de stipuler quel plan obtient quelles fonctionnalités facilite le processus de gestion de ces droits.
Cela implique de lancer différentes versions de la même fonctionnalité pour voir laquelle fonctionne le mieux. Vous implémentez des techniques telles que les tests A/B et la segmentation par rapport aux fonctionnalités déployées [tests A/B en production].
L'expérimentation de fonctionnalités vous permet de comparer les fonctionnalités pour obtenir des informations sur celles qui ont la meilleure implémentation ou celles qui sont préférées. De plus, vous pouvez rédiger une hypothèse pour une fonctionnalité, mettre en place une expérience pour la lancer, mesurer ses performances, puis la lancer après validation. Les indicateurs de fonctionnalité aident à créer les modifications que l'on souhaite tester. Ensuite, lier une métrique à l'indicateur de fonctionnalité donne un but à l'expérience.
L'idée même des indicateurs de fonctionnalité est d'atténuer les risques en fournissant un moyen rapide d'activer ou de désactiver des fonctionnalités même après le déploiement de votre code. Il est fortement recommandé d'utiliser les indicateurs de fonctionnalité avec prudence. Gardez-les de courte durée en petit nombre pour éviter la complexité.
Examinez souvent les indicateurs pour vous assurer que les plus importants sont activés ou désactivés en conséquence, car leur utilisation abusive pourrait avoir de mauvaises conséquences, comme le montre cet exemple concret : une entreprise avec près de 400 millions de dollars d'actifs a fait faillite en 45 minutes à cause d'un échec. déploiement. L'équipe a réorienté un indicateur de fonctionnalité utilisé par l'ancien code pour tenter de contenir un risque opérationnel.
Maintenant que vous avez couvert les concepts et considérations des feature flags, il convient de noter qu'il existe de nombreuses plateformes de feature flags qui aident à automatiser la gestion des feature flags : split.io, LaunchDarkly, CloudBees, etc.
Vous connaissez une personne non technique qui essaie d'entrer dans l'espace de gestion de produits ? Vous voudrez peut-être partager avec eux mon article précédent sur le sujet Explorez les concepts techniques indispensables pour les chefs de produit : votre guide de l'esprit d'un développeur . Merci d'avoir partagé!
N'hésitez pas à me contacter sur LinkedIn .