Preguntas para ayudarte a definir un CUJ

Yury Niño
google-cloud-hispanoamerica
4 min readApr 14, 2024

Traducción del artículo: Perguntas para te ajudar a definir uma CUJ

Antes de definir métricas, objetivos y acuerdos, siempre pensamos en nuestros usuarios. La razón es que su nivel de satisfacción es usado como métrica para entender si el sistema es o no confiable. Recuerda la confiabilidad es la funcionalidad más importante de un sistema.

Un Critical User Journey [CUJ] o una Ruta Crítica del Usuario es el “camino” que sigue el usuario durante la interacción con tu sistema. Definir ese recorrido nos proporcionará un marco para establecer métricas de confiabilidad sobre un servicio. En un sistema de comercio eléctronico, algunos ejemplos de [CUJ]s incluyen:

  • Buscar un producto.
  • Recibir sugerencias personalizadas de productos.
  • Añadir un producto al carrito de compras.
  • Completar una compra.
  • Visualizar los detalles del producto.

Definir cual de estas rutas críticas de usuario tiene mayor prioridad a la hora de establecer un proceso de adopción de SRE no es trivial, por eso a continuación se describen algunas estrategias que pueden ayudarte en ese proceso.

¿Qué forma parte de mi CUJ? ¿Y ¿Quién es mi cliente?

Para dar respuesta a estas inquietudes puedes empezar con un Diagrama de Secuencia que te permita identificar al usuario y los componentes con los que interactua. A continuación un detalle de los componentes del diagrama:

  1. Identifica los actores: son las personas, organizaciones o sistemas terceros que interactúan con tu sistema.
  2. Identifica los casos de uso: son las distintas formas en que los actores pueden interactuar con tu aplicación.
  3. Crea un diagrama de secuencia para cada caso de uso: son los pasos y actividades del actor.

Una vez creado el diagrama de secuencia para cada [CUJ] continua con un análisis. Saber dónde se encuentra el usuario dentro de su recorrido garantizará que las métricas desarrolladas estén alineadas con la perspectiva del usuario, y servirá como parámetro más adelante en la toma de decisiones sobre las que se medirá el sistema.

En el escenario de comercio electrónico, el usuario suele ser un cliente que navega, compra y recibe productos, pero en una aplicación interna el usuario podría ser un empleado que utiliza el sistema para completar tareas laborales. O en un escenario de integración, el usuario podría ser un servicio API externo que intercambia datos.

También puedes utilizar diagramas de secuencia para identificar agentes externos que interactúan con el sistema, ellos no hacen parte de la organización, pero proporcionan servicios como la autenticación o el procesamiento de pagos.

Una vez hayas identificado los [CUJ]s y los agentes terceros, contarás con herramientas para comprender el sistema y cómo se utiliza. Esta información puede utilizarse para mejorar el sistema y hacerlo más fiable. No todos los terceros son iguales, por lo que conocerlos mitigará riesgos, protegerá la confianza del cliente y garantizará una experiencia de cliente fluida, transparente y positiva.

¿Qué es importante para las empresas?

Los [CUJ]s desempeñan un papel fundamental en la definición de objetivos de Nivel de Servicio [SLO]s y en la comunicación con negocio. SRE es una disciplina que promueve cultura de colaboración, en la que todas las partes participan. Esto incluye al equipo de desarrollo, operaciones y negocio. Por lo tanto, es aconsejable elegir [CUJ]s que estén alineados con el equipo empresarial y que sean importantes para éste. ¿Qué CUJ sería más importante para el ejemplo de comercio electrónico? ¿El flujo de actualización del perfil del usuario o el flujo de pago de productos?

Conviene recordar que las métricas y objetivos que definamos demostrarán la confiabilidad de los sistemas que conforman un negocio, por lo que es importante tener [CUJ]s alineadas con sus indicadores y prioridades del negocio.

¿Con cual CUJ empiezo?

A la hora de priorizar los [CUJ]s hay que tener en cuenta varios factores que permitan garantizar su relevancia e impacto. He aquí tres criterios para priorizar [CUJ]s:

  1. Relevancia para la empresa: el [CUJ] elegido debe tener impacto tangible con los OKRs y KPIs de la empresa. Al alinearse con las prioridades del equipo, los esfuerzos de la SRE pueden demostrar su valor y éxito. En el ejemplo de comercio electrónico, un [CUJ] de alta prioridad podría ser el proceso de pago, ya que influye directamente en las tasas de conversión e ingresos.
  2. Involucramiento y alineación del equipo de SRE: la implementación exitosa de SRE requiere la participación activa y el compromiso de todos los miembros del equipo. Involucrar al equipo en el proceso de selección garantiza diversidad que provee comprensión completa del sistema. A la larga, se garantiza que los acuerdos alcanzados por las áreas de negocio se ajustan al recorrido y se convierten en acuerdos plausibles basados en datos.
  3. Criticidad e impacto en la aplicación: el [CUJ] elegido debe representar un aspecto vital de la aplicación que tenga un impacto significativo en la satisfacción del usuario y en la fiabilidad general del sistema. Al centrarse en las partes más críticas de la aplicación, los esfuerzos de la SRE pueden añadir el máximo valor en términos de mejora de la experiencia del usuario.

Conclusión

Definir una Ruta Crítica de Usuario [CUJ] es un paso crucial en la implementación de SRE. Identificar los recorridos más críticos y relevantes permitirá a los equipos de SRE enfocarse en garantizar la confiabilidad y el rendimiento del sistema donde más importa.

Además, el involucramiento del equipo SRE y la alineación con las prioridades del negocio son esenciales para la adopción de [SLO]s. Teniendo en cuenta estos factores, los equipos SRE pueden garantizar que sus esfuerzos están alineados con los objetivos generales de la organización y que están aportando el máximo valor a sus clientes.

Referencias Adicionales:

Blog — Princípios SRE

Blog — Adopting SRE: Standardizing your SLO design process

Cloud Architecture Center — Define SLOs

--

--

Yury Niño
google-cloud-hispanoamerica

Cloud Infrastructure Engineer @Google. Chaos Engineer Advocate. Loves building software applications, DevOps, Security and SRE