Las principales tendencias tecnológicas, promueven la adopción masiva de aplicaciones por parte de los usuarios. Los contextos de uso de la tecnología han cambiado y cada vez son más heterogéneos. En esta nueva era de computación, resulta clave que nuestras aplicaciones brinden una excelente experiencia de uso para asegurar su éxito y adopción.
Por @irocca
Nuestro enfoque consiste en centrar el proceso de desarrollo de software en los usuarios, aplicando técnicas y herramientas a lo largo del ciclo de vida que posibilitan asegurar la usabilidad de la aplicación. En este artículo explicaremos cómo hemos adaptado la técnica de análisis heurístico para evaluar e identificar posibles mejoras en la interacción de nuestras aplicaciones.
La usabilidad y las heurísticas
La usabilidad se define como la eficacia, eficiencia y satisfacción con la que un producto permite alcanzar objetivos específicos a los usuarios en un contexto de uso determinado. Los conceptos clave de esta definición son el objetivo o tarea, el usuario y el contexto. Por lo tanto para establecer en forma inequívoca cuan usable es una aplicación, se deben analizar estos tres aspectos en detalle.
La usabilidad incluye un conjunto de sub-atributos y componentes como ser: prevención de errores, facilidad de aprendizaje, eficiencia en la tarea, facilidad para recordar, estética y accesibilidad que son esenciales para el éxito de los productos. La definición de usabilidad y sus componentes clave está normalizada por la familia de normas ISO/IEC 25000 que definen en detalle las características que debe poseer un producto de software de calidad.
Las heurísticas son un conjunto de reglas o principios metodológicos basados en la experiencia que evitan ciertos problemas ocurran nuevamente. Como resultado del análisis de los factores comunes detrás de 249 problemas de usabilidad en 1995 Jakob Nielsen presentó su set refinado de 10 heurísticas de usabilidad.
- Visibilidad del estado del sistema
- Relación entre el sistema y el mundo real
- Libertad y control por parte del usuario
- Consistencia y estándares
- Prevención de errores
- Reconocer antes que recordar
- Flexibilidad y eficiencia en el uso
- Diseño estético y minimalista
- Ayuda a los usuarios a reconocer, diagnosticar y recuperarse de los errores
- Ayuda y documentación
¿Cómo es posible que el resultado de una investigación realizada hace más de 20 años siga siendo útil para guiar el diseño de la interacción en la era de la computación ubicua?
La respuesta es simple, los principios que gobiernan la interacción de los usuarios con nuestras aplicaciones, dependen en parte de la sociología y la psicología. Si bien la tecnología cambia, nuestros deseos, motivaciones, emociones y dinámicas sociales no varían tanto. Por otro lado, parafraseando en cierta forma a Don Norman (The Design of Everyday Things), nuestra pasión por la tecnología nos hace mirar siempre hacia adelante, lo cual genera que sigamos cometiendo errores similares una y otra vez. Es por esto que las heurísticas definidas por Nielsen siguen siendo útiles hoy en día.
Nuestro enfoque
Cuando evaluamos la usabilidad de una aplicación, como dijimos anteriormente, debemos tener en cuenta a los usuarios, las tareas y los contextos. Sin embargo, hay veces que hacer pruebas con los usuarios finales puede ser muy costoso, y en ese caso se puede optar por utilizar las técnicas que involucran “expertos”. Un ejemplo de este tipo de técnicas es el análisis heurístico.
Es importante aclarar que no es necesario contar con un post doctorado para ejecutar una evaluación de este tipo, pero sí debemos poder interpretar las heurísticas en el contexto de la aplicación que estamos evaluando. Para mejorar la eficiencia del método debemos definir un equipo de evaluadores (entre 3 y 5 de acuerdo al artículo de Nielsen), independientes del equipo de desarrollo. Nuestro enfoque para conducir esta actividad es el siguiente:
Realizar una reunión de kickoff
Se define el equipo de evaluadores, el tipo de adaptaciones que se realizan a las heurísticas y las interacciones se quieren evaluar. Se brinda al equipo evaluador el contexto de la aplicación, información sobre los usuarios y otros aspectos básicos.
Ejecutar la evaluación
En esta instancia los evaluadores trabajan en forma separada. De esta forma evitamos que los hallazgos de uno sesguen a los otros.
Cada miembro del equipo hace una primer pasada por la aplicación buscando comprender las interacciones básicas. A continuación se hace una pasada más exhaustiva evaluando las distintas heurísticas en la aplicación. Como resultado, cada experto genera una lista de posibles problemas de usabilidad donde se establece la heurística que no se cumple y qué parte del diseño genera dicho problema.
Sesión de puesta en común
Por último, se hace una puesta en común de los problemas encontrados entre todos los miembros del equipo evaluador. Para cada problema se debe establecer la severidad del mismo utilizando una combinación de:
- Frecuencia: ¿qué tan común es en la aplicación?
- Impacto: ¿qué tan complicado es para los usuarios superar ese problema?
- Persistencia: ¿es un problema que los usuarios superan una única vez o es molesto continuamente?
Como resultado de esta actividad se genera un informe con los problemas de usabilidad categorizados y posibles alternativas de diseño que pueden ser implementadas por el equipo de desarrollo para resolverlos. De igual forma, se debe informar de aquellos aspectos positivos de la usabilidad de la aplicación.
Conclusión y lecciones aprendidas
El análisis heurístico es una herramienta muy útil que permite detectar problemas comunes de usabilidad en las aplicaciones en forma rápida. Es una técnica barata y sencilla de aplicar, cuyos hallazgos son de utilidad para diseñar mejores interacciones. No obstante, siempre que sea posible, se debe priorizar la ejecución de pruebas con usuarios ya que éstas brindan evidencia irrefutable de qué cosas funcionan y cuáles no.
Durante el proceso de desarrollo las heurísticas son una herramienta aplicable en dos puntos. En primer lugar, como ya hablamos en este artículo, el principal objetivo es guiar una evaluación de la usabilidad de la aplicación. En segundo lugar, apoyar la actividad de diseño de la interfaz de usuario. Por lo tanto, es sano que todos los roles involucrados en el proyecto conozcan y entiendan estos principios.
Escrito por Ignacio Rocca, Consultor Senior en GeneXus Consulting.
Para comentar debe estar registrado.