Fonctionnement
Experiment Center vous permet d’exécuter des tests A/B contrôlés sur votre pipeline d’authentification Auth0. Au lieu de déployer une modification à tous les utilisateurs en même temps, vous exposez un nouveau comportement à un pourcentage contrôlé du trafic, mesurez le résultat à l’aide d’événements d’authentification enrichis, puis faites passer en production la variation gagnante lorsque vous êtes prêt. Experiment Center s’articule autour de trois entités :- expérience : définit comment le trafic est réparti et à quel moment le test s’exécute.
- Feature flag : définit ce que vous testez et les variations possibles.
- Segment : définit un ensemble de règles pour orienter les expériences vers des variations précises.
Expérience
Une expérience sert de cadre de mesure autour d’un flag de fonctionnalité. Elle définit :- Quel flag de fonctionnalité est testé
- Comment le trafic est réparti entre les variations
- Quand le test est en cours
Cycle de vie des expériences
Les expériences ont cinq états :Stratégies d’allocation
Une expérience utilise l’une des deux stratégies d’allocation suivantes : Basée sur un pourcentage : Le trafic est réparti entre les variations selon leur pondération. Toutes les pondérations doivent totaliser 100. Une pondération de 0 est valide (la variation figure dans la définition de l’expérience, mais ne reçoit aucun trafic). Basée sur les segments (ciblée) : Le trafic est acheminé vers les variations selon l’appartenance à un segment. Les segments sont évalués par ordre de priorité. Le premier segment correspondant est retenu. Si aucun segment ne correspond, l’allocationis_fallback reçoit la requête.
Pour en savoir plus sur l’entité d’expérience, consultez Détails des entités.
Contexte de l’expérience
Lorsqu’une expérience est active et qu’une variation est attribuée, Experiment Center injecte un objetExperimentContext dans vos surfaces d’exécution.
Les écrans ACUL ne le reçoivent que si vous activez explicitement l’écran au moyen de context_configuration.
Pour en savoir plus, consultez le guide d’intégration ACUL.
Les Actions et les modèles de page le reçoivent automatiquement chaque fois qu’une expérience est active. Voici la structure de l’objet :
config contient l’intégralité de la configuration fusionnée pour la variation attribuée. Chaque paramètre défini dans le feature flag a toujours une valeur. Vous n’avez pas à prévoir de logique de secours.
Attribution
Une attribution correspond à la façon dont un utilisateur est dirigé vers une variation précise pendant une transaction d’authentification. Les attributions sont déterministes et persistantes : le même utilisateur voit systématiquement la même variation pour la même expérience sur le même appareil, de sorte que son expérience demeure stable d’une connexion à l’autre.- L’allocation en pourcentage répartit le trafic entre les variations selon leur pondération. Un sujet donné est systématiquement attribué à la même variation.
- L’allocation par Segment évalue les propriétés de la requête en fonction des règles de votre segment, par ordre de priorité. Le premier segment correspondant détermine la variation, et une requête qui correspond au même segment est toujours associée à la même variation.
details.experiment ; ils ne sont pas exposés par une API distincte.
Pour en savoir plus sur l’entité d’attribution, consultez Détails des entités.
Feature flag
Un feature flag est l’unité de contrôle de ce qui est testé. Il contient :- Une configuration de référence : des paramètres typés et leurs valeurs par défaut
- Une ou plusieurs variations : des configurations alternatives qui diffèrent de la configuration de référence
Cycle de vie des Feature flags
Les Feature flags ont un cycle de vie défini en trois états :
Pour en savoir plus sur l’entité Feature flag, consultez Détails des entités.
Variation
Une variation correspond à une version de l’expérience définie dans un feature flag. Elle indique quels paramètres de configuration diffèrent de la configuration de référence, et dans quelle mesure.- La variation témoin correspond à la référence; elle ne comporte aucun remplacement (aucun paramètre n’est modifié par rapport aux valeurs par défaut du flag).
- Les variations de traitement définissent chacune un ou plusieurs remplacements de paramètres.
is_control. Le fait qu’une variation soit le témoin statistique d’une expérience donnée se définit au niveau de l’allocation, et non de la variation. Une même variation peut être le témoin dans une expérience et un traitement dans une autre.
Pour en savoir plus sur l’entité variation, consultez Détails des entités.
Segment
Un segment est un groupe nommé de requêtes d’authentification qui correspondent à un ensemble de règles. Les segments sont utilisés dans des expériences d’allocation ciblée pour acheminer des cohortes de trafic précises vers des variations précises. Les segments sont propres à un tenant et réutilisables d’une expérience à l’autre. Pour en savoir plus sur l’entité Segment, consultez Détails des entités.Limitations
Les limitations suivantes s’appliquent pendant la phase Beta :- Une expérience active par tenant. Vous pouvez avoir plusieurs expériences dans les états
draft,pausedoucompleted, mais une seule peut êtreactiveà la fois. - Paramètres structurés uniquement. Les paramètres des feature flags utilisent la structure clé/type/valeur.
- Trois déclencheurs d’Actions. Le contexte de l’expérience est disponible dans
post_login,pre_user_registrationetpost_user_registration. - Trafic de test uniquement. La Beta fonctionne sur des tenants de développement avec le trafic que vous générez. Les données des utilisateurs finaux en Production ne transitent pas par la Beta.
- Promotion manuelle. Lorsqu’une expérience est terminée, vous devez appliquer manuellement à votre tenant la configuration de la variation gagnante.