domingo, 6 de septiembre de 2009

Diseño de Interfaces


Al igual que en la actividad empresarial se comenzó con una orientación claramente productiva, y a lo largo del siglo pasado y lo que llevamos de este ha ido variando esta orientación hasta centrar al cliente como objetivo primero y último de la misma, el diseño de programas informáticos ha ido evolucionando desde su concepción inicial a la resolución de problemas, pocas veces teniendo en cuenta el problema mismo de usar dichos programas, hacia la mejora de la experiencia del usuario, mediante aplicación de pautas en el diseño de interfaces.


Pero al igual una vez más que en el entorno empresarial, esto no siempre es así, y no lo es principalmente por falta de enfoque de las personas que componen el equipo. Así pues, el informático suele focalizar sus objetivos en el diseño robusto, eficiente, eficaz... incluso maquiavélico de sus programas, es decir, suele centrarse principalmente en la técnica, y no en el usuario al que va dirigido. Por otro lado la formación de los diseñadores incide en aspectos técnicos como la teoría de color, la fotografía digital, la combinación de estilos, las pautas y estándares, o en aspectos subjetivos como los modelos de comunicación gráfica, siempre con el objetivo de agradar e incluso comunicar algo al usuario, pero pocas veces pensando en que él va a ser el partícipe de esto.


En resumen, el informático busca que su programa tenga una gran funcionalidad con una gran técnica y el diseñador que sea bonito y llamativo por demás. Y no siempre se combinan ambos objetivos para darle al usuario lo que realmente quiere o necesita. Y esto incluso en grandes proyectos con gran éxito, como por ejemplo Facebook.


Pero también es cierto que cada día más se profesionaliza el diseño de interfaces a partir de investigaciones en campos tan variados pero relacionados como la psicología cognitiva, la psicología de la comunicación, la lingüística, la teoría de la información (véase Una imagen vale más que mil palabras), la accesibilidad y la usabilidad, la inteligencia artificial, la minería de uso o los interfaces adaptativos, de las que actualmente se desprenden ocho reglas de oro genéricas en el diseño de interfaces (para ampliar más información leer a Ben Shneiderman**):


  • Consistencia: Uno de los aspectos más importantes a tener en cuenta en el diseño de interfaces es el conseguir su consistencia a lo largo del mismo, pero también es una de las reglas que más veces se rompe. Consistencia significa una composición de color, estilos y fuentes homogénea a lo largo de la interfaz, pero también un uso del lenguaje y la terminología, unos métodos de ayuda, una forma de recuperación de errores e incluso una forma de reaccionar ante acciones del programa de manera consistente a lo largo del mismo.

  • Usabilidad universal: En este blog ya tratamos este aspecto cuando hablábamos del Center of Universal Design o del proyecto Build for All. En cualquier caso la usabilidad universal hace referencia tanto a los diferentes aspectos socio-culturales en el caso de aplicaciones globales, como puedan ser las aplicaciones Web, como a aspectos psicológicos y de aprendizaje, tales como los rangos de edad, las discapacidades o la diferenciación en general entre el principiante y el experto en el uso de aplicaciones de escritorio.

  • Realimentación informativa: En todo momento el usuario debe conocer el estado del sistema y de sus acciones, para lo cual es preciso que el mismo interfaz ofrezca una realimentación rica pero sin sobrecargar de información al usuario, aprovechando los principios del diseño universal para mostrar en mayor o menor medida la realimentación en función de las capacidades del usuario.

  • Conducir las tareas: El interfaz es un medio de comunicación entre el usuario que desea efectuar alguna tarea con el sistema y el sistema que las efectúa. El sistema estará organizado para realizar las tareas de un modo u otro, y la interfaz debe facilitar el camino al usuario desde el comienzo de la misma hasta su finalización, guiando el proceso en todo momento, aprovechando para realimentar de manera eficiente y para aplicar principios de diseño universal que permitan la construcción de atajos o liberen de sobrecarga de confirmaciones al usuario avanzado, por supuesto siempre manteniendo la consistencia en los modos de uso.

  • Prevenir errores: Tal y como inscribió Sigmound Freud en su retrato, "No hay medicina contra la muerte y contra el error no se ha hallado ninguna regla", puesto que un error puede aparecer en cualquier momento, se debe evitar al máximo desde el diseño de la interfaz que el usuario pueda cometer errores en la introducción de datos, en las etapas de resolución de las tareas y en general en todo aquello que pueda comprometer la consistencia del sistema. En caso de producirse errores se debe permitir una recuperación del sistema, bien automáticamente, bien informando de manera correcta al usuario, indicándole el error producido, los motivos y los medios para resolverlo, y por supuesto, siendo consistente a lo largo de toda la aplicación en esta tarea.

  • Deshacer acciones: No hay nada que de mayor control que la seguridad, y la seguridad se da sobre todo cuando no se tiene miedo al error. Una manera de no tener miedo al error es permitir echar atrás de manera sencilla acciones que han dado lugar a un error. Si se produce una situación no deseada y el usuario tiene la capacidad de manera sencilla de echar atrás dicha situación, le dará mayor seguridad sobre la realización de la tarea y por tanto aumentará su aprendizaje y mejorará su experiencia de uso. Esto es posible en ciertas aplicaciones, por ejemplo, una entrada errónea en un procesador de textos es fácilmente restaurable, en cambio una entrada incorrecta en un proceso de carga de asientos contables no lo es tanto. Se deberá llegar a un compromiso, pero en cualquier caso siempre la posibilidad de restaurar estados seguros del sistema son positivos tanto para el sistema como para el usuario del mismo.

  • "Dar soporte al locus de control interno": Significa hacer a los usuarios "iniciadores de acciones", que obtengan el control del sistema, que sean ellos los que dominen y manden las acciones y el sistema responda a ellos, todo ello a partir de la interfaz de usuario. Para ello se deben eliminar las secuencias de entrada de datos tediosas, la dificultad para obtener la información necesaria por requerir excesiva información o excesivos pasos, la dificultad para realizar determinadas acciones... El ejemplo más sencillo suelen ser los interfaces de los bancos, dónde cada acción requiere un dato de entrada normalmente vinculado a una acción anterior pero sin continuidad entre ellas.

  • Reducir la necesidad de memoria a corto plazo: Numerosos estudios indican que el ser humano suele recordar entre 5 y 9 elementos de información a corto plazo, la denominada regla del "siete más/menos dos", lo que implica que las interfaces de usuario deberían liberar al usuario de la necesidad de aprender excesivos datos a corto plazo para su uso inmediato, lo que se mejora siguiendo la consistencia del sistema, diseñando el mismo con una orientación clara hacia la consecución de las tareas, dónde se guía al usuario desde su inicio hasta su finalización, y atendiendo en general a los principios de diseño universal.


En el post Las diez plagas de la era de la información tratábamos los aspectos que en general ofrecen una mala experiencia al usuario de los sistemas de información y también allí tratábamos de dar la importancia que se merece el diseño de interfaces amigables para combatir estas plagas.


En posteriores posts hablaremos del uso del animismo, de las interfaces adaptativas y de algunas medidas de usabilidad de los sistemas, de manera que el lector tenga una idea general de los medios y mecanismos que existen para luchar contra las interfaces mal diseñadas y oriente sus desarrollos hacia lo realmente importante, que es la mejora de la experiencia de usuario.





* Imagen capturada de la pantalla de inicio de SIC+, el sistema de información para clínicas médicas de Corex Soluciones Informáticas, que con este aspecto renovado entra en la beta de su versión 2.0, incluyendo mejoras como la minería de uso para el aprendizaje del perfil del usuario y el uso de una interfaz adaptativa para mejorar su experiencia.
** La mayoría de ideas plasmadas en esta serie de artículos provienen del libre "Diseño de Interfaces de Usuario" de Ben Shneiderman y Catherine Plaisant, así como de la multitud de referencias que aparecen en los capítulos del mismo. Se puede ver más información en WikI+D

No hay comentarios:

Publicar un comentario en la entrada