Saltar al contenido principal
Gestionar experimentos mutuamente excluyentes es una necesidad habitual cuando se ejecutan varios experimentos en paralelo. Pero ¿qué ocurre cuando algunos de estos experimentos se activan del lado del cliente (a través de Kameleoon Web Experimentation) y otros del lado del servidor (a través de Kameleoon Feature Experimentation)? Se trata de un caso de uso más avanzado, pero que Kameleoon admite con la configuración adecuada. En este artículo le guiaremos sobre cómo configurar una configuración mutuamente excluyente que abarque ambas tecnologías.

El escenario

Supongamos que desea ejecutar tres experimentos mutuamente excluyentes:
  • Dos experimentos se activan del lado del cliente mediante Kameleoon Web Experimentation (basado en JavaScript).
  • Un experimento se activa del lado del servidor mediante Kameleoon Feature Experimentation (por ejemplo, a través de un SDK de backend).
El reto aquí es garantizar que los visitantes queden expuestos únicamente a uno de estos experimentos, aunque se activen mediante tecnologías diferentes y en distintas fases del recorrido del usuario.

Cómo abordar este caso de uso

Para garantizar la exclusividad mutua entre experimentos del lado del cliente y del servidor, siga estos pasos:

1. Comience por el feature experiment

Dado que el feature experiment se activa del lado del servidor y requiere un targeting temprano (antes de la carga de la página), lo mejor es asignarle tráfico en primer lugar.
  • Cree su Feature Experiment.
  • Asigne el 33 % del tráfico total a este experimento (o cualquier otro porcentaje que se ajuste a su plan de pruebas).
El 67 % restante del tráfico quedará entonces disponible para los dos experimentos web.

2. Cree un grupo mutuamente excluyente para los experimentos web

A continuación, cree un Mutually Exclusive Group para los dos experimentos web. 👉 Siga esta documentación: Evitar el solapamiento de campañas con grupos mutuamente excluyentes. Evitar el solapamiento garantiza que los visitantes solo puedan ver uno de los dos experimentos web, nunca ambos.

3. Añada condiciones de targeting para excluir a los participantes del feature experiment

Para asegurarse de que los usuarios asignados al feature experiment no entren en ninguno de los experimentos web, aplique la siguiente condición de targeting a ambos experimentos web:
  • Condición de targeting: Campaigns → Feature Flag → Excluir a los visitantes que hayan sido expuestos a cualquier variación de su «feature_experiment_name».
Este paso garantiza que se preserve la exclusividad mutua entre ambas tecnologías.

4. Consideraciones técnicas

De forma predeterminada, Kameleoon Web Experimentation realizará una llamada de sincronización remota en cada carga de página para comprobar si el usuario ha sido expuesto a un Feature Experiment. Esta llamada es la forma en que Kameleoon sabe si debe incluir o excluir a un usuario de un experimento web. Si los tres experimentos se ejecutan en la misma página, esta configuración puede ser complicada, porque el motor web tiene que esperar al estado de exposición del lado del servidor antes de decidir si incluye al usuario en un experimento web, lo que puede provocar flickering o retraso en el contenido.
Si el Feature Experiment y los experimentos web se activan en momentos diferentes del recorrido del cliente (por ejemplo, en páginas distintas), también deberá añadir una condición de targeting de exclusión en el Feature Experiment para excluir a los visitantes que ya hayan sido expuestos a uno de los experimentos web.
Solución recomendada
Para eliminar el flickering y garantizar la toma de decisiones en tiempo real, exponga el estado del Feature Experiment del usuario directamente en el front end, sin esperar a una llamada remota.
  • Utilice el método del SDK: getEngineTrackingCode().
  • Inserte el resultado en el HTML de la página, idealmente en la sección <head>.
De este modo, Kameleoon sabrá de inmediato si el usuario ya ha sido expuesto al Feature Experiment, lo que permite un targeting más rápido y fluido.

Resumen

Las pruebas mutuamente excluyentes entre experimentos del lado del cliente y del servidor son complejas, pero totalmente compatibles con Kameleoon cuando se implementan correctamente. A continuación, un breve resumen:
  • Comience por el feature experiment y asigne primero su parte del tráfico.
  • Utilice grupos mutuamente excluyentes para gestionar el solapamiento entre los experimentos web.
  • Excluya a los participantes del feature experiment del targeting de los experimentos web mediante condiciones de campaña.
  • Utilice el método de tracking code para eliminar retrasos y flickering si los experimentos se solapan en la misma página.
Con este enfoque, garantizará una experiencia de pruebas limpia y fiable manteniendo al mismo tiempo la integridad de sus datos.