low-fi-sketch1

Usabilidad, la asignatura pendiente.

¿Qué es usabilidad?¿Realmente se utiliza? Estas y otras cuestiones referentes a la interacción con el sistema por parte de los usuarios son debatidas en los últimos años. Es imprescindible conocer el alcance que tiene esta acepción en el desarrollo y diseño de interfaces.

En este post vamos a hablar del significado de este término, del desarrollo siguiendo criterios de usabilidad y de cómo hacer uso de ella de forma responsable.

1. ¿Qué es “usabilidad”?

“Usabilidad es la eficacia, eficiencia y satisfacción con la que un producto permite alcanzar objetivos específicos a usuarios específicos en un contexto de uso específico.” (ISO 9241-210)

El danés Jakob Nielsen, una de las personas más importantes en todo lo relacionado con la usabilidad, incluyó dentro de esta cualidad cinco atributos con los que es necesario contar a la hora de realizar un buen diseño:

  • Facilidad de uso: el sistema es fácil e intuitivo y no es necesario recordar la organización del mismo.

  • Facilidad de aprendizaje: el sistema es consistente y el uso del mismo facilita la adquisición del conocimiento necesario para manejarlo completamente.

  • Tolerancia a fallos: se resuelven bien los casos en los que pueden ocurrir problemas en el sistema. Por ejemplo: se ha perdido un enlace de la página, el error 404, etc. Hay que evitarlos, y en el caso de que se produzcan que se resuelvan de  la mejor manera posible.

  • Eficiencia de uso: se refiere a la precisión y tiempo en que un usuario realiza las tareas.

  • Satisfacción: el usuario al interactuar con el sistema recibe una recompensa que le ayuda a seguir utilizando la aplicación.

Actualmente se ha acuñado el término UX (User Experience) para referirse a la forma en que los diseñadores realizan un diseño para que el usuario interactúe con el sistema con mayor naturalidad.

Para hablar de un desarrollo centrado en la experiencia de usuario se utiliza el término HCI (Human-Computer Interaction) o Desarrollo Centrado en el Usuario(DCU).

2. Diseño Centrado en el usuario

“Se define DCU  como un proceso encaminado al diseño de productos (generalmente software) que responden a las necesidades reales de sus usuarios finales.” (J.Sánchez; 2011)

Un desarrollo siguiendo el DCU es iterativo e incremental, lo que hace que se vaya aportando mayor valor al sistema con cada iteración. Cada una de las iteraciones está separada en tres pasos:

      1. Evaluación.
      2. Diseño.
      3. Implementación.

Cada uno de los pasos se va repitiendo en cada iteración, hasta llegar a la obtención del sistema completo. Para hablar de implementación utilizaremos los siguientes capítulos, de momento vamos a tratar los pasos evaluación y diseño.

2.1. Evaluación.

En función de los atributos que vayamos a estudiar se establecerán una serie de métricas que favorezcan el estudio o evaluación que vayamos a llevar a cabo. Es necesario tener claro si van a establecerse criterios de ámbito cualitativo o cuantitativo.

En términos cuantitativos se suelen utilizar encuestas en las que se establecen una serie de afirmaciones que los encuestados deberán valorar siguiendo una Escala de Likert, una valoración entre 1 y 5 en la que los usuarios muestran su “total conformidad” o “total disconformidad.

Otra forma de descubrir cómo los usuarios interactúan con el sistema es mediante el criterio de observación. El “analista” o evaluador observa a los usuarios interactuando con el sistema y toma notas de cómo lo hacen.

Para completar la información recibida mediante este análisis se suele realizar una entrevista en la que se busca obtener qué problemas hay con la interacción y si los usuarios pueden aportar alguna idea de cómo lo solucionarían.

En el momento que tenemos un conjunto de ideas y queremos organizar la información podemos utilizar un grupo de enfoque, en el que se focaliza entre un conjunto de usuarios expertos el alcance de algún aspecto para el que no se ha encontrado una solución y obtenerla entre todos.

También es recomendable realizar una evaluación de la satisfacción de los usuarios en la interacción con el sistema. Para ello podemos utilizar una encuesta basada en las escalas Likert, denominada SUS (estándar SUS © Digital Equipment Corporation, 1988).

2.2. Diseño

Lo primero que se suele hacer es crear una serie de wireframes (o prototipos de bajo rendimiento) a partir de los cuales se van realizando modificaciones hasta conseguir un prototipo que responda a las necesidades del cliente o de los usuarios.

Una vez tenemos el prototipo de baja calidad terminado se suele realizar una prueba con los distintos usuarios para que nos ofrezcan realimentación y nos muestran los problemas que les surge con el sistema: palabras mal escogidas, fallos de navegación, etc.

Acto seguido, con el diseño corregido empezamos a desarrollar las partes, implementando poco a poco cada una de las tareas que los usuarios van a tener que realizar, evaluando su acogimiento por los usuarios y rediseñando en el caso de que sea necesario.

Con el diseño completo y la funcionalidad básica operativa se suele hacer una prueba de alto rendimiento con usuarios, para comprobar que se han ido puliendo los fallos que se fueron obteniendo y hacer una última modificación por si algún aspecto se nos ha escapado anteriormente.

Una forma de ahorrar tiempo en el diseño es teniendo conocimientos sobre los patrones de diseño de interfaces que existen actualmente. La mayor representación del diseño de interfaces lo tenemos en Jenifer Tidwell, en su obra “Designing interfaces” ha acumulado un listado de patrones que son utilizados constantemente, y a veces de forma “inconsciente” para facilitar la labor de los usuarios al interactuar con un sistema.

Jenifer Tidwell está especializada en desarrollo web, lo cual no impide que muchos de los patrones que especifica puedan utilizarse en otros sistemas, como por ejemplo en dispositivos móviles.

En su primera edición había unos 50 patrones separados en 8 categorías: organizadores de contenido, organización del sistema, organizadores de página, comandos y acciones, mostrar datos complejos, introducción de datos, constructores y editores, y por último mejoras de la apariencia.

Si os parecen pocos patrones hay otras referencias, como por ejemplo Christopher Alexander que en su obra ha acumulado unos 250 patrones, o Martijn van Welie.

3. Cómo crear interfaces “usables”

Aunque se tengan en cuenta todos todo lo comentado anteriormente también se deben considerar algunos aspectos importantes a la hora de hablar de usabilidad. Nosotros vamos a dar relevancia a 4 imprescindibles.

3.1. La ley de Fitt

Es la ley más básica y conocida en el mundo del diseño de interfaces, básicamente dice que cuanto más grande es un icono y más cerca esté el puntero más fácil es llegar a él. Realmente es de sentido común pero en ocasiones a la hora de realizar el diseño se olvida.

La cuestión de la distancia es aún más importante que la del tamaño, puesto que el tamaño depende en gran medida del propio tamaño de la interfaz.

Es una cuestión importante que, independientemente de donde se encuentre el puntero, los puntos más accesibles de la pantalla son las esquinas. Quizás el sentido común nos dice lo contrario. Pero si pensamos que para realizar un movimiento tenemos que:

      1. Acelerar el puntero.
      2. Moverle hacía el icono destino.
      3. Frenar en el momento exacto.

Las esquinas de la pantalla hacen que el punto 3 sea irrelevante. Ya que para llegar a una esquina sólo tenemos que “lanzar” el ratón hacia este punto.

El tema de la distancia cada vez es menos importante. Ya que la forma de acceso a la interfaz de los dispositivos móviles, ya sea SmartPhone, tablet, o incluso algunos portátiles ya cuentan con pantalla táctil, es de “acceso directo”. El usuario pulsa con el dedo la opción que quiere, y la distancia siempre es igual….

¿Siempre es igual?

En este punto habría que analizar la forma de coger el dispositivo por los propios usuarios. Ya que en algunos casos el usuario compagina su uso con la realización de otras tareas y por tanto se da la situación que con la misma mano sujete el dispositivo e interactúe con el. En este caso sí habría que tener en cuenta donde se encuentran los botones.

3.2. Evitar interferencias

interfaz_bloqueado

Un caso importante a la hora de diseñar interfaces, es el de evitar las interfaces bloqueantes, siempre y cuando no sea necesario. Por ejemplo un mensaje de urgencia podría ser bloqueante, aunque no tiene porque ser estrictamente.

Este caso de mal diseño es bastante habitual, y molesto, y puede hacer que el usuario deje de utilizar tanto la opción molesta como la propia aplicación.

Por ejemplo una aplicación que requiere introducir usuario y contraseña, dicha pantalla de acceso no debería bloquear todo el sistema, es decir, todo el PC. En casos de dispositivos móviles con Android esto no es posible ya que la tecla HOME modifica directamente la pila de procesos.

Utilizar este tipo de interfaces en un sistema donde se puede incidir directamente en la pila de actividades puede producir situaciones de inestabilidad en dicha aplicaicón. Ya que el ciclo de vida es completamente diferente y depende del propio dispositivo.

3.3.  Mostrar mejor que buscar

Otro punto importante es hacer que el usuario piense lo menos posible, es decir, al mirar la interfaz de nuestra aplicación no debería pasarse por la cabeza la pregunta: ¿Qué tengo que hacer?

La idea es que el usuario tenga una idea clara de qué quiere hacer, desde un punto de vista informal, y que la interfaz le muestre cómo debe hacerlo sin que el usuario se preocupe de mucho más.

Un ejemplo típico es un buscador en la web o aplicación de una tienda de libros o una biblioteca. Entonces le damos al usuario diferentes formas de buscar el libro que quiere…  Palabra clave, autor, título ¿Por qué?

Y si el usuario no sabe donde concuerda el concepto que quiere buscar. ¿Qué diferencia hay entre palabra clave, autor y título? La opción correcta  sería no diferenciar y dejar que el usuario introduzca lo que quiera buscar, sea título o autor o mezcla de ambos.

Se recomienda la lectura del libro de Steve KrugNo me hagas pensar” en el que se introducen una serie de ejemplos bastante interesantes para comprender los conceptos relacionados con esta técnica.

3.4. Sistema “afectivo”

Otro aspecto al que no se muestra especial importancia es al de los sentimientos que puede despertar un sistema. Es importante considerar para los aspectos de diseño lo que cada color o imagen despiertan en un usuario. Por ejemplo el azul la paz, el verde esperanza, el rojo pasión…

No es muy tenido en cuenta pero es importante a la hora de realizar un diseño tener en cuenta el objetivo del sistema, y lo que puede despertar en el usuario que lo va a utilizar.

Un ejemplo bastante descriptivo es la imagen de Mac OS y su versión “triste”:

mactriste

Referencias.