Partager via


Expérimentation (préversion)

L'expérimentation est le processus qui consiste à tester systématiquement des hypothèses ou des changements afin d'améliorer l'expérience de l'utilisateur ou la fonctionnalité du logiciel. Cette définition est également vraie pour la plupart des domaines scientifiques, y compris la technologie, où toutes les expériences ont quatre étapes courantes :

  • Développement d’une hypothèse pour documenter l’objectif de cette expérience,
  • Planification d’une méthode pour effectuer l’expérience, y compris la configuration, ce qui est mesuré et comment,
  • Observation des résultats mesurés par les métriques définies à l’étape précédente,
  • Tirer une conclusion concernant la validation ou l’invalidation de l’hypothèse.

Regardez cette vidéo pour une démonstration rapide de l’expérimentation dans la configuration des applications, en mettant l’accent sur le cas d’utilisation de l’optimisation de l’expérience utilisateur pour stimuler vos métriques métier.

Expérimentation dans Azure App Configuration (préversion)

Dans Azure App Configuration, la fonctionnalité d’expérimentation permet aux développeurs de tester facilement différentes variantes d’une fonctionnalité et de surveiller l’impact au niveau de la fonctionnalité. Une fois configurés, les utilisateurs peuvent analyser de nouvelles fonctionnalités, comparer différentes variantes d’une fonctionnalité et évaluer rapidement les métriques pertinentes pour les nouvelles modifications de produit. Cette capacité permet aux équipes de développement de disposer d'informations mesurables, facilitant ainsi des déploiements de produits plus rapides et plus sûrs. Microsoft collabore avec Split Software pour fournir la fonctionnalité d’expérimentation dans Azure App Configuration. L’espace de travail Split Expérimentation (préversion) est une ressource Azure Native ISV pour l’intégration entre Microsoft et Split Software.

Flux de données de haut niveau pour l’expérimentation dans Azure.

Diagramme du flux de données pour l’expérimentation dans Azure.

Pour commencer une expérimentation, vous devez d’abord identifier la fonctionnalité et ses variantes sur lesquelles vous souhaitez expérimenter. Voici ensuite les métriques qui constituent la base de l’évaluation des fonctionnalités. Pour commencer votre première expérience dans Azure, suivez les étapes décrites dans ce didacticiel.

  • Indicateurs de fonctionnalité de variantes : Représentent différentes versions ou configurations d'une fonctionnalité. Dans une expérience, les indicateurs de fonctionnalité de variante sont comparés en pertinence aux métriques qui vous intéressent et au trafic alloué pour l’audience de l’application.

  • Télémétrie: la télémétrie est les données des variations d’une fonctionnalité et des métriques associées pour évaluer la fonctionnalité. Pour la configuration dans Azure, les données d’évaluation/d’affectation des indicateurs de fonctionnalité sont transmises au fournisseur de données de télémétrie. Application Insights est le fournisseur de télémétrie pour la configuration de l’expérimentation. Les données des métriques définies sont également transmises à la même instance Application Insights.

  • Test A/B: test A/B, également appelé test fractionné, est une méthode standard pour évaluer l’impact des changements potentiels dans une pile technologique.

  • Taille d’échantillonnage: la taille d’échantillonnage correspond à la taille de l’échantillon d’utilisateurs sous expérience. Il s’agit du nombre d’événements envoyés pour toute variante de la fonctionnalité sur laquelle vous expérimentez.

  • Taille d’échantillonnage minimale: est le nombre minimal d’événements requis par variante de la fonctionnalité pour l’expérience afin de vous montrer des résultats statistiquement significatifs. Plus la taille de l'échantillon est importante, meilleure est la signification statistique des résultats de l'expérience.

Prenons l’exemple suivant : vous souhaitez voir si les clients de votre site web e-commerce sont plus susceptibles de cliquer sur le bouton d’achat s’il est jaune (variante A) ou bleu (variante B). Pour configurer cette comparaison, vous êtes susceptible de diviser le trafic entre les deux variantes de l’indicateur de fonctionnalité et d’utiliser le nombre de clics en tant que métrique pour mesurer leurs performances. Il est peu probable que toutes vos fonctionnalités soient aussi simples à mesurer et à évaluer immédiatement, et c’est là que l’expérimentation entre en jeu. La réalisation d'une expérience implique la mise en place d'un calendrier pour ce processus de comparaison des performances de chaque variante en fonction des paramètres qui vous intéressent. Les termes « Tests A/B » et « expérimentation » sont souvent utilisés de manière interchangeable, où l’expérimentation est essentiellement un test A/B étendu où vous testez systématiquement des hypothèses.

Configuration de votre expérience

Avant de commencer, tenez compte des questions suivantes dans votre étape de découverte d’hypothèses : à quelles questions essayez-vous de répondre en exécutant une expérience ? Sur quoi devez-vous exécuter une expérience ? Pourquoi ? Où commencez-vous ? Quelles sont les stratégies à suivre en fonction des besoins de votre entreprise ? Cette expérience vous aidera-t-elle à apporter des améliorations immédiates aux performances de votre application ou à votre entreprise ?

Identifiez ce que vous souhaitez réaliser en exécutant une expérience avant de publier une version complète, vous devez documenter votre plan à ce stade. Quelles sont les variantes de la caractéristique ou de la fonctionnalité que vous souhaitez expérimenter ? Quels sont les métriques qui vous intéressent ? Quels événements d'interaction avec l'utilisateur ou le système pourraient être utilisés pour capturer des données afin d'alimenter ces mesures ?

La qualité de votre expérience dépend des données que vous recueillez. Avant de commencer l'expérience, vous devez déterminer la variante que vous comptez utiliser comme contrôle (variante de base) et celle pour laquelle vous comptez observer des changements (variante de comparaison).

Tirer une conclusion de l’expérience

L'élaboration d'une conclusion (ou de plusieurs conclusions si nécessaire) est la dernière étape de votre cycle d'expérimentation. Vous pouvez vérifier les résultats de l'expérience, qui montrent le résultat et l'impact de la variante de comparaison par rapport à la variante de contrôle. Les résultats montrent également leur signification statistique. La mesure Statsig dépend des données de télémétrie et de la taille de l’échantillon.

Les résultats vous aident à conclure les apprentissages et les résultats en éléments exploitables que vous pouvez immédiatement mettre en œuvre dans la production. Toutefois, l’expérimentation est un processus continu. Commencez de nouvelles expériences pour améliorer continuellement votre produit.

Scénarios d’utilisation de l’expérimentation

  • Applications intelligentes (par exemple, les fonctionnalités basées sur l’IA) Accélérer l’adoption de l’IA générale (Gen AI) et optimiser les modèles d’IA et les cas d’usage par le biais d’expérimentations rapides. Utilisez l’expérimentation pour itérer rapidement sur des modèles IA, tester différents scénarios et déterminer des approches efficaces. Il permet d’améliorer l’agilité dans l’adaptation des solutions IA à l’évolution des besoins des utilisateurs et des tendances du marché, et facilite la compréhension des approches les plus efficaces pour la mise à l’échelle des initiatives IA.

  • CI, CD et expérimentation continue (déploiements progressifs des fonctionnalités et mises à jour de version) Garantir des transitions transparentes et maintenir ou améliorer les métriques clés avec chaque mise à jour de version lors de la gestion des versions. Utiliser l'expérimentation pour déployer progressivement de nouvelles fonctionnalités auprès de sous-ensembles d'utilisateurs à l'aide de drapeaux de fonctionnalités, surveiller les mesures de performance et recueillir des commentaires en vue d'améliorations itératives. Cela permet de réduire le risque d'introduire des bogues ou des problèmes de performance pour l'ensemble de la base d'utilisateurs. Il permet de prendre des décisions fondées sur des données lors du déploiement des versions et de la gestion des caractéristiques, ce qui améliore la qualité du produit et la satisfaction de l'utilisateur.

  • Optimisation de l’expérience utilisateur (test A/B) Optimiser les métriques métier en comparant différentes variations d’interface utilisateur et en déterminant la conception la plus efficace. Effectuez des tests A/B à l’aide d’expérimentations pour tester des éléments d’interface utilisateur, mesurer les interactions utilisateur et analyser les métriques de performances. Le meilleur retour est l'amélioration de l'expérience de l'utilisateur grâce à la mise en œuvre de modifications de l'interface utilisateur fondées sur des preuves empiriques.

  • Expériences de personnalisation et de ciblage Fournir du contenu et des expériences personnalisés adaptés aux préférences et comportements des utilisateurs. Utilisez l’expérimentation pour tester du contenu personnalisé, mesurer l’engagement et itérer sur les stratégies de personnalisation. Les résultats sont une augmentation de l’engagement des utilisateurs, des taux de conversion et de la fidélité des clients par le biais d’expériences pertinentes et personnalisées. Ces résultats, à leur tour, favorisent la croissance des revenus et la rétention des clients en ciblant les audiences avec des messages et des offres personnalisés.

  • Expériences d’optimisation des performances Améliorer les performances des applications et offrir une expérience utilisateur efficace grâce à des expériences d’optimisation des performances. Effectuer des expériences pour tester les améliorations des performances, mesurer les métriques clés et implémenter des optimisations réussies. Ici, l’expérimentation améliore la scalabilité, la fiabilité et la réactivité des applications grâce à des améliorations proactives des performances. Il optimise l’utilisation des ressources et les coûts d’infrastructure en implémentant des optimisations efficaces.

Opérations d’expérience

  • Créer une expérience: l’expérience peut être créée sur un indicateur de fonctionnalité de variante qui émet des données de télémétrie. Une fois qu’une expérience est créée, une version d’expérience est également créée avec l’expérience. Toute modification supplémentaire de l’indicateur de fonctionnalité entraîne la création d’une nouvelle version d’expérience pour cette expérience.

  • Expérience Archive: l’archivage d’une expérience la place dans un état archivé. Pendant qu’une expérience est archivée, aucun calcul n’est effectué sur l’expérience. Vous pouvez toujours restaurer l’expérience ultérieurement pour reprendre les calculs et revenir à l’état actif.

  • Récupérer l’expérience: la récupération d’une expérience place une expérience archivée dans un état actif et les calculs sont repris pour l’expérience.

  • Supprimer l’expérience: la suppression d’une expérience supprime l’expérience dans Split et toutes ses données associées. Il s’agit d’une opération irréversible, il n’y a donc aucune restauration après la suppression.

  • Vérifier les résultats de l’expérience: la vérification des résultats d’une expérience active vous permet de voir comment chaque variante de l’expérience s’exécute.

Conditions d’accès pour les opérations d’expérience

Les sections suivantes détaillent les rôles requis pour effectuer des opérations liées à l’expérience avec Microsoft Entra ID.

Configurer l’expérimentation

Pour configurer l’expérimentation avec les ressources requises, notamment l’espace de travail d’expérimentation fractionné, le rôle Propriétaire de l’abonnement Azure ou la combinaison des rôles Contributeur d’abonnement et Administrateur d’accès utilisateur est nécessaire.

Créer ou mettre à jour une expérience

Pour créer, mettre à jour, archiver ou supprimer une expérience, vous avez besoin du rôle Propriétaire des données App Configuration dans le magasin App Configuration. Il nécessite également le rôle d’ExperimentationDataOwner dans l’application Entreprise qui gère l’accès aux données à l’espace de travail Split Expérimentation connecté.

Lire les résultats de l’expérience

Pour vérifier les expériences, leurs versions et leurs résultats, vous avez besoin du rôle Lecteur de données App Configuration dans le magasin App Configuration. Il nécessite également le rôle d’un ExperimentationDataReader ou d’un ExperimentationDataOwner dans l’application Entreprise qui gère l’accès aux données à l’espace de travail d’expérimentation Split connecté.

Considérations et limites de facturation

App Configuration ne facture pas spécifiquement les expériences. L’expérimentation est fournie via une intégration à l'espace de travail d’expérimentation Split (préversion). Consultez le plan tarifaire pour l’expérimentation Split pour Azure App Configuration.

La taille minimale requise pour l’expérimentation Split est de 30 par variante. Une expérience doit avoir la taille minimale de l’échantillon pour obtenir les résultats de l’expérience ou les résultats indiquent « Aucune donnée » dans le résultat.

Étapes suivantes