Carmel Hassan UX & Product Designer

Test de usabilidad automático

Estamos ante un panorama donde el desarrollo de aplicaciones con tecnologías web está creciendo muy rápidamente y esto merece una atención especial. En concreto lo que respecta a la tradicional analítica web no parece salir de los modelos de aplicaciones como los e-commerce o redes sociales a la hora de ofrecer herramientas que permitan entender e interpretar ‘lo que está pasando’ desde una perspectiva de usuario. Plantearnos cómo podemos mejorar estas herramientas de analítica para entender cómo se comportan nuestros usuarios al mismo tiempo que capturamos datos globales sobre su experiencia y su percepción de usabilidad nos ayudará a tomar mejores decisiones de diseño.

En este artículo busco describir un modelo de automatización de los tests de usabilidad con usuarios como continuación del trabajo anterior ‘Measuring UX with your own tools’ con el que poder:

  1. Medir y analizar grandes cantidades de datos generados por los usuarios.
  2. Hacer del diseño un proceso experimental y cuantificable.

Partimos de que la Experiencia de Usuario abarca muchas más cosas que la interacción del usuario con el producto digital a través de su interfaz, pero que esta interacción condiciona su experiencia y es una parte fundamental de la misma. Dejando un lado la visión holísitica del término, la teoría de la actividad vendría a describir el framework en el que se basa este modelo de representación, análisis e interpretación, aunque no está limitado al mismo. Este trabajo también se inspira en la metodología HEART de Google como método para medir la UX a gran escala para aplicaciones web.

Por qué automatizar la UX

En el artículo ‘The Future of UX Design Is Automation’ el autor expone algunas de las motivaciones que comparto, sobre todo las orientadas al proceso de testing de usabilidad:

  1. Los servicios webs disponibles para hacer tests con usuarios tienen un coste muy alto.
  2. Planificar tests de usuarios con cierta cadencia en entornos de desarrollo ágil es complicado.
  3. Es necesario tener fórmulas para obtener información de valor de forma continua, ágil y no intrusiva.
  4. Interpretar grandes cantidades de datos de distintas fuentes para tomar decisiones en diseño es complejo.
  5. Uso de nuevas tecnologías de inteligencia artifical como el machine learning, deep learning, real-time analytics, etc. nos ofrece un modo distinto de entender la interacción de los usuarios.

Si bien no todos los aspectos de la experiencia son automatizables, sí existen formas de cuantificar los comportamiento observado y el valor percibido. Datos que utilizaremos de forma combinada para la interpretación de la información que con el modelo recogemos.

Cómo crear un modelo automático

Identificando lo que los usuarios hacen

Para saber cuál es el comportamiento que tienen las personas cuando interactúan con un producto digital deberíamos empezaremos definiendo el concepto de actividad. Ésta es mi propuesta:

Una actividad es cualquier acción (o conjunto de acciones) donde exista interacción y que realiza una persona con un propósito u objetivo. Una actividad viene disparada por una motivación o necesidad concreta (y por lo tanto existe intencionalidad) y se realiza dentro de un contexto específico.

Por lo tanto una actividad vendrá representada por una serie de interacciones, secuenciales o no, que persiguen llegar a un estado donde se alcance un objetivo concreto.

Por otra parte, la motivación y el contexto (aunque quedarán fueran de la descripción del modelo por el momento) son condicionantes y deben ser conocidos para entender e interpretar el resultado de la actividad. El resultado de la actividad o el propio hecho de que se produzca formaría parte de la experiencia de la persona con el producto.

En base a las actividades de los usuarios podremos comenzar a entender cuál es su rendimiento cuando interactúa con una aplicación.

Modelo de Actividad
  • Task(s): lista (no necesariamente secuencial) de tareas que componen la actividad y son realizadas por el usuario
  • Goal: propósito último o estado final que desea ser alcanzado por el usuario
  • Motivation: problema que el usuario está intentando resolver o beneficio que espera alcanzar
  • Context: entorno que influye directa o indirectamente en la realización de la tarea
  • Expectation: resultado de la actividad en base al objetivo marcado.
Modelo de Tarea
  • Task: nombre de la tarea que el usuario está intentando completar.
  • Result: resultado de la ejecución de la tarea. Puede ser ‘Completed’, ‘Abandoned’ o ‘Failed’.
  • Effort: número de interacciones requeridas para completar la tarea. Nos ayudará a calcular la eficiencia.
  • Errors: número de errores (humanos y de sistema) que se encuentran durante la ejecución de la tarea.
  • Time on task: tiempo dedicado desde que la tarea se inicia hasta que se termina alcanzando cualquiera de los resultados identificados.
Colectores de datos
  • UI Events: Eventos disparados por la interacción del usuario con una interfaz web.
  • Logs: Registros de actividad, por ejemplo, de servidores web.
  • Cookies: Información almacenada en el navegador web que identifica a la persona y su sesión.

Midiendo la usabilidad percibida

Tan importante como saber qué están haciendo los usuarios es conocer cómo perciben la usabilidad del producto. La respuesta que las personas pueden darnos también debe entenderse en un contexto concreto ya que no es lo mismo preguntarles tras hacer una tarea específica que en cualquier otro momento más neutral. De igual forma, nosotras como evaluadoras expertas podemos también percibir e identificar defectos que podrían tener un impacto en la experiencia final. Como hacíamos anteriormente, podemos crear una taxonomía que nos ayude a clasificar algunas de las experiencias más relevantes o habituales.

Modelo de Experiencia
  • Sign: tarea o actividad que al producirse impacta en el significado de la interacción.
  • Signifier: resultado de la señal en base al objetivo marcado.
    • ‘Happiness’
    • ‘Frustration’
    • ‘Anxious’
    • ‘Annoyed’
    • ‘Satisfaction’
    • ‘Useful’
    • ‘Enjoyable’
    • ‘Interesting’
    • ‘Confusing’
Modelo de Defecto
  • Criteria
  • Category
  • Perceived Value [1,2,3,4,5]
  • Severity: [no issue, low, medium, high]
Colectores de datos
  • Encuestas de satisfacción
  • Evaluaciones heurísticas
  • Paseos cognitivos

Cómo automatizar la recolección de estas métricas

En mi actual grupo de trabajo hemos empezado con una estrategia KISS y hemos desarrollado huha.js. HuHa es una librería Javascript opensource cuyo objetivo es dar soporte a este modelo de automatización de métricas de usabilidad de una forma sencilla, empezando por la colección de la información asociada a las tareas.

La aplicación de este modelo a nuestra plataforma online nos está permitiendo entender cómo es el comportamiento real de nuestros usuarios actuales con el servicio en todo momento. La información que recogemos la enviamos a Google Analytics y Mixpanel para poder hacer mejores interpretaciones con el contexto de la información asociada a los usuarios y sus sesiones de acceso. Por otra parte, tener esta información disponible en herramientas como Intercom nos permite adaptar mejor nuestro mensaje a las necesidades de los usuarios en tiempo real.

Como es evidente, la falta de supervisión del modelo y la ausencia de las personas usuarias en el momento de la recolección de datos supone ciertas limitaciones que debemos tener en cuenta a la hora de interpretar la información:

  • El significado de la intención es desconocido.
  • Factores externos que puedan interferir no se pueden determinar.
  • Niveles de fallo y de éxito pueden pasar desapercibidos.
  • Errores de usuario por falta de comprensión de la tarea no son identificables.

Incluso conociendo estas limitaciones las posibilidades que podemos alcanzar son muy interesantes:

  • Tiempos de ejecución de tareas (medias, más rápidas, más lentas…).
  • Número y frecuencia de errores.
  • Valor de eficiencia por persona, tareas o sesión.
  • Índices de frustración, desubicación, rabia y otras emociones relacionadas con patrones de interacción.
  • Tasas de éxito o abandono.
  • Eficiencia entre versiones diferentes.

En futuros artículos compartiré cómo podemos modelar tareas, analizar los datos que obtenemos y tomar decisiones en base a los mismos, así como un desarrollo más detallado de cómo usamos los diferentes servicios y herramientas de analíticas.

I’m UX/Product Designer at Ebury. I have a chaotic side project called Cinefilica and founded the most interesting tech community in Málaga: Yes We Tech. I enjoy writing random thoughts on UX, Design, Technology and Society.

Add comment

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Carmel Hassan UX & Product Designer

About

I'm UX/Product Designer at Ebury. I have a chaotic side project called Cinefilica and founded the most interesting tech community in Málaga: Yes We Tech. I enjoy writing random thoughts on UX, Design, Technology and Society.

Categorías

¡Suscríbete!

Introduce tu correo electrónico para suscribirte a este blog y recibir notificaciones de nuevas historias.

Entradas recientes

Comentarios recientes

Meta