Principiante, Intermedio, Avanzado (2ª parte de 2)

Después de considerar las cuestiones generales que confluyen en cómo los usuarios aprenden y usan el interfaz de las aplicaciones, definamos cuáles deberían ser los objetivos de quienes crean interfaces, qué factores habrían de ser tenidos en cuenta antes de optar por una estrategia de interfaz, y entre las existentes qué estrategia se debería elegir para crear interfaces capaces de adaptarse a los diferentes niveles de conocimiento de los usuarios.

Cuáles deberían ser los objetivos de quienes crean interfaces

Según expone Mike Padilla en “Strike a balance: Users’ expertise on interface design”, aparte de hacer un interfaz usable (fácil de aprender, de recordar, de usar, y que permita cometer los menos errores y lo menos graves posibles) cuando entra en juego el factor de los diferentes niveles de conocimiento y habilidad por los que evoluciona un usuario, hay que pensar también en el grado de eficiencia que le permite alcanzar al usuario. Y para alcanzar esos dos objetivos es necesario tener en cuenta aspectos como:

La simplicidad o la claridad: aunque parezca contradictorio, la solución más simple para ejecutar una acción puede exigir un mayor nivel de abstracción que vaya en detrimento de lo evidente que pueda resultar el interfaz, así que se trata de elegir entre la simplicidad y la claridad. Lo que a un usuario avanzado le incrementa su eficiencia a un principiante le puede causar confusión, y lo que a un principiante le ayuda a ser eficiente a un avanzado le entorpece su eficiencia.

La convivencia sin interferencias: junto al hecho de hacer convivir en un mismo interfaz señales para diferentes niveles de experiencia hay que tener en cuenta el que no exista una interferencia entre esas señales que confundan al usuario respecto a su significado.

Factores a tener en cuenta antes de optar por una estrategia de interfaz

El propósito de la aplicación para la cual se va a crear el interfaz; por ejemplo si se trata de una herramienta de trabajo, de una aplicación para que los niños aprendan jugando, etc.

Las funciones que se pueden llevar a cabo a través de la aplicación y su prioridad en función de la frecuencia estimada de uso por los usuarios, su trascendencia para la configuración de la aplicación, etc, para decidir cuál mostrar y cuáles dejar para que sean descubiertas, dónde y cómo se les debe dar acceso desdel el interfaz y de qué forma se pueden ejecutar. Por ej. cuanto más crítica sea para la configuración de la aplicación menos fácilmente debe ser su ejecución, cuánto más frecuente vaya a ser su uso de más formas se debía poder ejecutar, etc.

La posibilidad de que los usuarios a los que se dirige la aplicación ya utilicen ese tipo de aplicación o incluso una versión anterior de ella (por lo que ya puden ser usuarios con un cierto conocimiento) o bien si se trata de un tipo de aplicación nuevo para ellos (donde todos los usuarios serán principiantes) con el fin de analizar el interfaz que presentan y rescatar convenciones, no caer en sus debilidades y aprovechar sus fortalezas.

La posibilidad de que los usuarios utilicen la aplicación en combinación con otras (sobre todo en el caso de herramientas internas de una empresa) de forma que haya una mayor consistencia entre ellas y se puedan aprovechar elementos y conceptos ya aprendidos por los usuarios.

La distribución de los usuarios potenciales
de la aplicación a lo largo de los diferentes niveles
de conocimiento
; es conveniente conocer si van a estar repartidos
por igual, o va a haber siempre un predominio de un nivel sobre otro.

La frecuencia estimada de uso de la aplicación, y por tanto de su interfaz:

  • si es una aplicación de uso esporádico, se debería tener en cuenta como usuario base a un usuarioprincipiante y por tanto como prioridades de ese interfaz: capturar la atención del usuario, diseñar interacciones que resulten lo más claras posibles y permitir que el usuario reconozca en vez de que recuerde.
  • si es una aplicación de uso frecuente, se debería tener en cuenta la confluencia de usuarios con diferentes niveles de conocimiento y que van a mejorar progresivamente su habilidad; por tanto las prioridades de ese interfaz serían contribuir a superar cuanto antes y con éxito la etapa de principiante y conseguir que los usuarios de cada nivel alcancen la máxima eficiencia.

La progresión de aprendizaje estimada (trayectoria y ritmo) de los usuarios y cómo nos interesa que sean ambos: si se van a convertir pronto en expertos en la aplicación o si nos interesa forzar que se conviertan en expertos cuanto antes, si preveemos que se queden en un nivel intermedio, etc. Por ej. si estimamos que los usuarios no van a pasar de un nivel intermedio van a necesitar que se les facilite mecanismos para que recuerden cómo interactuar y puede que no merezca la pena invertir esfuerzo/tiempo en crear métodos de interacción para usuarios avanzados.

El método de aprendizaje y recursos de interfaz necesarios y más adecuados en función del propósito y el ámbito de la aplicación, de la trayectoria de aprendizaje definida y de la distribuciónde los usuarios a lo largo de los niveles de conocimiento. Por ej. puede que el método de aprendizaje por descubrimiento no sea el más adecuado cuando se trate de una herramienta de trabajo (porque requerirá del usuario invertir un tiempo que estará restando de su productividad) o cuando sea una aplicación web como un banco online (por la trascendencia de las acciones que se puedan llevar a cabo) de permitir a un público variado la ejecución de una tarea concreta puede que la mejor estrategia sea la de la simplicidad absoluta y no la estrategia de aprendizaje por descubrimiento.

Las posibles limitaciones de diferente naturaleza (de la programación, de tipo sensorial o motriz por parte de los usuarios, de tipo físico o técnico por el entorno en el que se va a acceder, ver y utilizar el interfaz) para poder implementar posibles recursos de interfaz. Por ej. si va a ser factible mediante la programación de la herramienta proporcione atajos de teclado.

Las condiciones físicas/técnicas en que el usuario va a acceder, ver y utilizar ese interfaz (calidad de la conexión, resolución de pantalla, sistema operativo, el navegador y su versión) las cuales limitan las características de ese interfaz.

esquema2.gif

Ver imagen

Elegir la estrategia de interfaz

No hay recetas mágicas para ello sino que se trata de conocer la definición de la propia aplicación, conocer a sus usuarios y tomar decisiones siendo conscientes de todas las circunstancias que concluyen en un interfaz.

Las estrategias serían:

A. Realizar varias versiones del interfaz en función de los niveles de conocimiento.

B. Realizar un solo interfaz para todos los niveles de conocimiento donde convivan sin interferir recursos de interfaz.

C. Realizar un interfaz personalizable por el usuario.

D.Implementar un interfaz “inteligente”.

Claramente las dos primeras (A y B) pueden aplicarse tanto al ámbito
de las aplicaciones cliente como el de las aplicaciones web; y las segundas (C y D) actualmente parece que sólo las podemos ver en el ámbito de las aplicaciones cliente. Sin embargo no he querido establecer a propósito esa división entre unas y otras porque puede que sea cuestión de dar tiempo a las aplicaciones web para que comiencen a recurrir a esas estrategias hasta ahora sólo vistas en aplicaciones cliente.

……………………………………………………………………

A. Realizar varias versiones del interfaz en función de los niveles de conocimiento; en cada versión por ej. se pueden mostrar un número creciente de funciones y un tipo de interfaz progresivamente más minimalista (con menos “pistas” que expliquen cada elemento del interfaz). Algunos autores apoyan que el hecho de hacer versiones especialmente adaptadas para el nivel principiante hace que los usuarios no pasen de ese nivel. Los usuarios aprenderían más sobre las funciones básicas si dispusieran de múltiples versiones de un mismo interfaz, porque de esta forma cada versión da un espacio de exploración reducido que permite una aprendizaje fraccionado y asequible para el usuario (le intimidaría menos el número de funciones a aprender).

Algunas recomendaciones para diseñar interfaces para usuarios principiantes:
  • Incluir instrucciones en el interfaz: un interfaz dirigido a usuarios principiantes necesita ser fácil de descubrir así como explícito, es decir, que se debe incluir suficiente información o pistas para que el usuario conozca el significado de lo que ve.
  • Ubicar de elementos prioritarios en áreas proritarias: tratar de ubicar los elementos u opciones que necesiten con más frecuencia para utilizar la aplicación de forma eficiente
    en los lugares a los que acuden con más frecuencia, por ejemplo si se trata de las opciones de menú deberían estar en los menús ubicados en la parte superior izquierda del interfaz.
  • Incluir sólo de funciones/interacciones básicas
  • Crear iconos con conceptos evidentes y acompañados de leyenda.
  • Incluir “wizards”, asistentes que recorran paso a paso todos los aspectos necesarios para completar con éxito tareas poco frecuentes.
  • Proporcionar opciones de configuración por defecto, para que la aplicación pueda funcionar correctamente aunque el usuario no haya configurado los aspectos necesarios para ello.
  • Sugerir siempre en las ventanas de diálogo o de configuración opciones por defecto para que los usuarios principiantes no se sientan obligados a decidir sobre algo que no entienden.
Algunas recomendaciones para diseñar interfaces para usuarios avanzados:
  • Crear un interfaz apenas explícito, reduciendo al máximo el volumen de instrucciones o pistas contextuales que expliquen qué es cada elementos del interfaz y cóm proceder con él
  • Incluir un mayor número de funciones
  • Permitir el recorrido lógico a través del tabulador de campos de formulario y de tablas: componerlos de tal forma que sea posible hacer un recorrido ordenado y lógico por los diferentes campos que los componen utilizando el tabulador del teclado.
  • Sustituir los asistentes paso a paso (wizards) por vistas
    que muestren de una vez todos los aspectos configurables de una función o de la propia aplicación
  • Ofrecer atajos de teclado para las funciones más frecuentes
  • Proporcionar etiquetas subrayadas: cuando se trate por ejemplo de etiquetas de botones o de menú pueden proporcionarse un atajo de teclado para ejecutar la acción que refleje el botón o la opción de menú que tuviera que ver con alguna de las letras que componen la etiqueta (por ejemplo si la etiqueta del botón es Guardar, la letra de G podría aparecer subrayada)

B. Realizar un solo interfaz para todos los niveles de conocimiento donde convivan sin interferir recursos de interfaz que permitan ser igualmente eficientes tanto a principiantes como avanzados y que permita a los usuarios incrementar su nivel de conocimiento entre estos dos estadios. Puede que esta estrategia sea la más difícil porque se trata de encontrar el equilibrio entre los usuarios principiantes y los avanzados, usuarios a menudo en conflicto.

Existen al respecto profesionales dedicados en gran parte a investigar este aspecto del diseño de interfaces; por ej. Joanna McGrenere comparte los numerosos estudios y tests que ha realizado en la Universidad de Toronto alrededor de este tema.

Algunas recomendaciones para diseñar Interfaces para la transición entre niveles de conocimiento:
  • Proporcionar varias formas de introducir datos a través de la selección de objetos y de teclado: por ejemplo cuando se trate de poner una fecha o una dirección de email en una caja de texto se puede posibilitar que el usuario elija esos datos a partir de un calendario o de una agenda de direcciones o bien tecleándolos directamente en la caja de texto. Los usuarios avanzados teclearán y los no avanzados interactuarán con el calendario o con la agenda.
  • Incluir funciones básicas y funciones que ayuden al usuario a progresar en el conocimiento de la aplicación
  • Los conceptos que se representen en los iconos deberían resultar igualmente entendibles por usuarios principiantes como avanzados, para ello lo mejor es que recurran a un concepto lo más universal posible.
  • Mostrar trucos (”tips”) cuando se abra o se entre en la aplicación donde se cuenten nuevas funciones que pueden ejecutarse o nuevas formas de realizar funciones conocidas ya conocidas por el usuario (por ejemplo como hace la aplicación web Basecamp desarrollada por 37signals).
  • Permitir a los usuarios principiantes comenzar a interactuar con una versión reducida en funciones del interfaz dirigido a un público de perfil avanzado, debido a que el aprendizaje que se adquiere por exploración se puede mejorar obligando a que quien está aprendiendo reflexione sobre su interacción así como limitando la cantidad de interacciones que puede tener el usuario con el sistema o haciendo que en esas interacciones sean más costosas.

C. Realizar un interfaz personalizable por el usuario, permitiéndole incorporar y excluir del interfaz las funciones que quiera así como modificar la forma en que se muestran los elementos (por ejemplo, los iconos con o sin un texto al lado) como las formas de interacción (por ejemplo, configurar los atajos de teclado a su gusto). Normalmente esta solución tiene el inconveniente de que el mecanismo para realizar esos cambios suele ser tan complejo que los usuarios tienden a no personalizar el interfaz, por lo que el verdadero reto de esta estrategia es dar con un mecanismo de personalización sencillo.

D. Implementar un interfaz “inteligente”, donde el interfaz aprende las necesidades y preferencias de cada usuarioa partir del uso que haga de la aplicación y varía las funciones que le ofrece según lo que haya aprendido de él (por ejemplo las opciones de menú que más frecuentemente utiliza y se las muestre antes que el resto). Sin embargo la implantación de esta estrategia está supeditada a la disponibilidad de técnicas de inteligencia artificial lo suficientemente potentes como para determinar lo que el usuario necesita y quiere, y se enfrenta al dilema de cómo ejecutar esas variaciones en el interfaz sin que el usuario sienta que ha perdido el control sobre la aplicación. El ámbito más frecuente donde podemos encontrar este tipo de estrategia es en aplicaciones complejas, como por ejemplo las de Microsoft Office 2002. Entre los beneficios de ese interfaz inteligente se encuentran reconocer las secuencias de teclado más utilizadas por el usuario y ofrecerle un sólo comando que consiga el mismo resultado, reordenar los menús en función del uso que haga el usuario de ellos, deducir qué tarea está tratando de realizar e indicarle cómo realizarla (el “amado por muchos” Clipit de Microsoft), etc.

Queda aún mucho por investigar y evolucionar en este campo para que esta estrategia pueda realmente alcanzar el propósito para el cual se había concebido, que es el de restarle complejidad a las aplicaciones complicadas.

———————————————————————–
Artículo anterior:
Principiante, Intermedio, Avanzado (1ª parte de 2)
———————————————————————–

Deja tu comentario