Son el ultimo eslabón de la cadena de producción de los sistemas de información, cadena que comienza en el diseño de sistemas electrónicos. Sin embargo son, igualmente, los grandes olvidados y donde la evolución ha hecho menos efecto.
Interfaz de Usuario: Lugar de contacto entre
dos entidades, el usuario (persona humana) y el sistema de
información.
Conjunto de objetos, herramientas y representaciones visuales
para gestionar la comunicación entre usuarios y computadores
La importancia de las IU radica principalmente en su relación con el ser humano, y la necesidad absoluta de tener en cuenta factores propios del mismo, dicho de otra forma, de la necesidad de considerar los factores y condicionamientos propios de las personas que han de utilizarles. En el peor de los casos, una mala IU, presenta mal y de forma no entendible la información, la secuencia de acciones a realizar por el usuario es confusa, causa problemas y malfuncionamientos y el usuario se opone a una utilización incorrecta. Todo ello lleva a un manejo erróneo y por lo mismo al mal funcionamiento del sistema de información.
Por otra parte, la IU, es la parte visible de cualquier sistema y el medio que se utiliza para juzgar el mismo y la causa de que muchos sistemas sean descartados sin entrar en consideraciones sobre su funcionalidad.
No hace muchos años, las IU eran representadas en terminales alfanuméricos, donde las posibilidades de representación de la información era elementales, tal vez por ello, la necesidad de estudio de las mismas no eran muy grandes y con una simples normas básicas de representación se podrían cumplir unos requisitos suficientes para considerar la interface de calidad.
La aparición de las Interfaces Gráficas de usuario (GUI) tipo Windows, XWindows, MAC, ... y su popularidad hacen que en la actualidad sea lo que el usuario ve y espera necesariamente, pero a su vez complican las decisiones a tomar a la hora de presentar información e interactuar con el usuario. Las principales ventajas que nos proporcionan en la actualidad los GUI:
Las Interfaces gráficas son mucho más complejas que las interfaces alfanuméricas y permiten el manejo de una cantidad mayor de elementos en la construcción de las interfaces de presentación de información y interacción con el usuario. Ello lleva a la consecuencia de que el diseño es mucho más complejo,debiéndose tener muy en cuenta aspectos como el tratamiento del color y los convenios gráficos e iconográficos que se salen del ámbito meramente técnico, haciendo necesario la concurrencia de especialistas en diseño gráfico y en la consideración de factores humanos y personales.
Las GUI son complejas, pero en su composición entra un número muy limitado de elementos básicos que el programados ha de manejar:
El diseño de las GUI ha de tener en cuanta: necesidades, experiencia y capacidades de los usuarios. Los posibles usuarios han de ser tenidos en cuanta en el diseño, ya que este no puede ser realizado exclusivamente a partir de las abstracciones realizadas en pasos anteriores del ciclo de vida. Una de la forma de realizar este contacto con posibles usuarios es la realización de un prototipo, que contemple lo esencial de la interface a desarro0llar. este prototipo es puesto a disposición de usuarios, que lo podrán manejar y suministrar sus opiniones y dudas al diseñador.
Siempre se ha de tener en cuanta las limitaciones físicas y mentales de los usuarios, de estas la más importante sea, quizá, las limitaciones que la mente humana tienen de reconocer conceptos nuevos y de aceptar ítems de información simultáneamente. También hay que tener en cuanta que existen conceptos comunes y convencionales que son aceptados inconscientemente por el celebro, la utilización de estos conceptos en las interfaces facilita su manejo por los usuarios.
Dicho de otra forma, el diseño de las interfaces de usuario ha de centrarse en el conocimiento de usuario y de sus capacidades, ya que los sistemas de información han de centrarse en solucionar problemas al usuario. El sistema ha de pensar en las tareas del mismo y en que esas tareas son el objetivo de la propia interacción hombre-maquina. Por ello se insiste en la participación del usuario en las tareas de diseño de las interfaces.
Familiaridad
Se han de
utilizar términos y conceptos sacados de de la experiencia y ámbito de
potenciales usuarios.
El usuario no se ha de ver forzado a adaptarse a la interface porque sea conveniente que la misma sea de una determinada forma. La interface ha se usar términos familiares al usuario y los objetos manipulados por el sistema han de ser una analogía directa del entorno del usuario. La analogía más común y casi siempre utilizada es la de la "oficina", pero siempre se ha de particularizar.
Consistencia
similares
acciones y conceptos han de tener similar disposición y representación en la
interface.
Esta consistencia significa que todos los elementos, comandos y menús a lo largo del sistema han de tener similar formato, los parámetros han de ser pasados de igual forma. Ello implica que se facilita el aprendizaje del sistema ya que lo aprendido en una parte del sistema es de utilización en el aprendizaje del resto.
Es importante mantener la consistencia a lo largo de los distintos subsistemas y los comandos, acciones y representaciones ser la misma en todos ellos, la existencia de diferencias puede tener consecuencias importantes.
Se pueden considerar dos niveles de consistencia:
Bajo nivel
como es el hecho de igual
representación de comandos con teclas o combinaciones de teclas. Esta
consistencia a bajo nivel es totalmente necesaria.
Alto nivel
la consistencia de alto
nivel es siempre deseable y siempre ayuda a mejorar la calidad de la
interface.
Comportamiento fiable (mínima
Sorpresa)
El usuario no ha de ser sorprendido con el comportamiento de
la interface.
El usuario siempre tiene dificultades cuando el usuario responde de una forma sorpresiva o no esperada. Los usuarios siempre tienen un modelo de funcionamiento y si realiza un cambio en el sistema se espera un comportamiento determinado. Si el sistema reacciona de forma sorpresiva para ese comportamiento e usuario puede sorprenderse y realizar acciones no esperadas que causen malfuncionamientos o perdida de información.
Es, por lo tanto, absolutamente necesario que los interfaces aseguren que todas las acciones son las esperadas en el contesto propio en que se encuentran.
Restablecimiento
Se han
de incluir mecanismos que permitan al usuario retornar a estados anteriores que
permitan corregir sus propios errores.
Los usuario cometen inevitablemente errores. es misión de la interface minimizar dichos errores, pero no podrán ser eliminados, por lo que se han de incluir medios para que el usuario pueda rehacerse de dichos errores. Existen dos tipos de estos medios:
Confirmación de acciones
destructivas
si el resultado de la interacción del usuario es una
acción potencialmente destructiva, se ha de pedir al usuario confirmación de
que realmente la quiere realizar, para lo cual se ha de indicar claramente la
acción pedida , los resultados de la misma y pedir su confirmación.
Implementar facilidades de
"deshacer"
el comando deshacer retornara el sistema a un estado
anterior al del error. se pueden establecer múltiples niveles del comando ya
que en muchas ocasiones el usuario no se da cuenta instantáneamente del error
cometido. la implementación de este comando es siempre costosa, pero es
habitual en prácticamente todos los sistemas actuales.
Ayuda en línea
el
usuario debe disponer de sistemas de guía y ayuda sensible al contexto.
Se ha de integrar con la interfaces las ayudas y guías necesarias a diferentes niveles, desde avisos y comunicación de las acciones hasta manuales completos. Las ayudas han de ser estructuradas y conteniendo la información necesaria en cada momento, evitando sobrecargar de información no necesaria en ese momento.
El diseñador de GUI ha de trabajar con dos importantes líneas de objetivo:
las dos metas han de ser integradas de forma coherente en un marco de trabajo (framework) que sea una metáfora del mundo real entendible por el usuario, esta se denomina metáfora de la interface y será la base del consiguiente diseño.
Una interface de manipulación directa presenta al usuario la información con un modelo de su espacio de información de forma que el usuario interactua con la información a través de acciones directas como son: borrar información, moverla, remplazarla, ... etc, no siendo necesario el lanzamientos de mandatos específicos para realizar estas modificaciones. Los cambios en la información son presentados inmediatamente de forma que el usuario recibe inmediata noticia de los resultados de sus acciones. Un ejemplo típico de este tipo de interface son los tratamientos de textos actuales.
Las ventajas de este tipo de interface son:
Los problemas en el diseño de esta interfaces:
El medio más utilizado para crear interfaces de manipulación directa es el Formulario (form) o dialogo,en el que se presenta al usuario una ventana con campos (fields) convenientemente etiquetados que el usuario puede manipular. Las etiquetas (label) de los campos informan al usuario de los contenidos o acciones del campo. El usuario interacciona con los campos manipulando la información en ellos contenida, moviéndose de un campo a otro mediante teclas especificas (normalmente la tecla tab) o usando un puntero (Mouse) para señalar directamente el campo sobre el que poner la atención (foco).
Cada campo del formulario puede tener asociado una serie de chequeos o funciones de transformación que ayuden al usuario a la correcta introducción de los datos. En otros casos, si un relativo escaso número de entradas posibles forman la entrada, un menú puede ser utilizado para que el usuario seleccione la entrad correcta sin cometer errores.
Metáfora: Imagen mental comprensible de objetos reales
Como ya se ha mencionado, la necesidad de conseguir interfaces consistente pasan por la utilización de una metáfora consistente en el diseño de la interface. Esta metáfora trata de simular el comportamiento de una parte del mundo real suficientemente conocida por el usuario.
Le mejor forma de conseguirlo es la utilización de la metáfora del escritorio para la interacción del usuario con el sistema. Esta metáfora representa en la pantalla un escritorio como los usados normalmente en el mundo de las oficinas, los conceptos del escritorio son representados por iconos que tienen su representación en acciones del sistema. Esta metáfora es la utilizada normalmente en los sistemas GUI más populares.
Sin embargo, los sistemas más complejos o muy especializados tienen dificultades en seguir esta metáfora. En estos casos se mantienen la metáfora pero se le añaden algunas extensiones que siguen conceptos propios del sistema y del mundo real de los potenciales usuarios, creando, de esa forma, representaciones de los comandos propios del sistema. Así muchos diálogos que son paneles de control de estos sistemas complejos son formularios con una serie de iconos, representando cada uno de ellos un comando en particular. Activando el icono (con el puntero) es una acción similar a teclear el comando representado. En casos más complejos controles especiales son representados en el formulario para simular acciones especiales.
Los paneles o formularios típicos integran una serie de controles típicos que se pueden encuadrar en una de las siguientes clases:
Tienen entidad propia, pero la principal razón de ser incluidas como un apartado en este estudio radica en que las GUI se suelen implementar con una doble filosofía de interacción directa y menús.
En este tipo de interfaces el usuario a de seleccionar una de las múltiples posibilidades de un sistema de menús para activar un cierto mandato en el sistema, no siendo necesario que el usuario teclee el nombre y parámetros del mandato. La selección en el menú se realiza directamente con el puntero (Mouse) o a través del teclado con teclas definidas como identificadores de las diversas opciones del menú (ShortCuts) o desplazándose por los menús con las teclas de dirección.
Las ventajas de estas interfaces:
Los menús pueden ser de dos tipos:
Los menús pull-down tienen la ventaja de que el usuario conoce su existencia. Al contrario, los menús pop-up nos son visibles y pueden sorprender al usuario, o el mismo desconoce su existencia y por lo tanto la aplicación de sus mandatos. Por el contrario los menús pull-down ocupan un cierto espacio en pantalla, lo cual puede ser un tanto molesto en ciertas ocasiones.
Un problema que puede surgir con la utilización de los menús, es el gran espacio de pantalla que pueden requerir si el numero de opciones de los mismos es grande. existen varias formas que pueden dar solución a ello:
En algunos casos de sistemas de menús muy complejos,m es necesario disponer un mapa de los menús que pueda ser mostrado al usuario en cualquier momento, esto le permitirá buscar seleccionar y activar opciones definidas ya conocidas por el mismo. Estos mapas de menús permitirán también los llamados hipersaltos entre opciones, que representan la activación directa de una opción de un menú jerárquico, sin necesidad de activar las diversas opciones que llevan hacia el mismo.
Requieren que los usuarios tecleen los mandatos y parámetros del sistema en una sintaxis correcta y aceptable. Las ventajas y desventajas de estas interfaces son:
Este tipo de interfaces esta orientado a usuarios muy expertos, que por otra parte requieren o se sienten mas cómodos trabajando con ellos. siempre necesitan un aprendizaje y preparación, por los que usuarios menos expertos pueden requerir otro tipo de interface.
Las interfaces de mandatos no están reñidas con los otros tipos (GUI o Menús) y pueden convivir perfectamente dando al usuario la opción de trabajar frente al tipo de interface con la que se encuentre más cómodo o la que más agradable sea para una determinada tarea.
una de las dos misiones principales de cualquier interface de usuario es la de presentar información a los usuarios de forma que se de utilidad para los mismos.
Esta presentación puede ser un mero reflejo de las entradas que realice el usuario (en un tratamiento de textos, por ejemplo), pero también puede ser necesario presentar un gran numero de datos provenientes del sistema y las interrelaciones entre estos datos de una forma útil. Encontrar el mejor medio para realizar esta presentación implica un conocimiento de los usuarios, el ámbito de trabajo de los mismos y las razones para presentarles la información.
Generalmente es preferible mantener la información separada del sistema utilizado para su presentación, lo cual contradice los principio del paradigma orientado al objeto, pero se presupone que el diseñador de la información conoce la mejor forma de presentación de los mismos y por lo tanto es posible cambiar el sistema de presentación sin necesidad de cambiar el resto del sistema.
En el proceso de diseño de la forma de presentación de la información se han de tener en cuenta una serie de factores:
La información que no sufre cambios puede ser presentada de forma gráfica o textual, dependiendo de la ocupación de la misma. Si se realiza de forma textual diferentes colores o tipografías pueden ser utilizadas para mostrar los cambios en la información, mostrando de esta forma diferenciación entre la información estática y la que cambia a lo largo de la aplicación.
Generalmente la información textual es utilizada para presentar información de pequeño tamaño o que cambia de forma muy lenta. Información que cambia rápidamente o de gran volumen es presentada más eficazmente en form gráfica y sumarizando la misma. En muchos casos el interés radica en determinar valores anómalos de la información, lo cual también es realizado de forma gráfica con cierta comodidad aun en los casos que la presentación gráfica sea de más espacio que la presentación textual (por ejemplo una temperatura que ha de mantenerse en unos limites).
Información muy dinámica y con carácter numérico suele ser presentada en histogramas con formas análogas a los instrumentos que el usuario utilizaría en el mundo real y que son actualizados de forma continua por el sistema.
Los iconos y gráficos pueden ser igualmente utilizados para sumarizar información textual, si se hace necesario dar una representación visual de rápida interpretación, así un icono mostrando un signo de exclamación en colores fuertes, indica una llamada de atención a una determinada frase o información textual..
El uso del color proporciona al diseñador de interfaces una dimensión extra y muy útil para cumplir las misiones de presentación de estructuras complejas de información. En algunos casos el uso de color es absolutamente necesario para la comprensión de estructuras complejas de color, pero en otros casos más sencillo el color se utilizará como llamas y señales visuales que permitan dirigir la atención del usuario.
Pero el uso del color puede ser problemático y conseguir que la interface sea incomoda y problemática para el usuario. Los errores más comunes en la utilización del color son:
La utilización del color es siempre problemática y difícil, sin embargo se puede seguir las siguientes normas para lograr una utilización razonable:
El color puede ser una importante ayuda al diseñador de interfaces para la transmisión de mensajes en interfaces de cierta complejidad, pero siempre que se este en el conocimiento de las reglas para su correcto uso. En caso de no conocer las mismas, y como regla general, se ha de ser muy conservador en la utilización del color en las interfaces.
Uno de los principales principios del diseño de interfaces de usuario es que el usuario ha de disponer en todo momento de la ayuda específica sobre el sistema. las ayudas en línea y los sistemas de guía del usuario son una parte muy importante del diseño y desarrollo de las interfaces de usuario de los sistemas de información. Este trabajo de desarrollo de ayudas cubre tres áreas:
El desarrollo de los sistemas de ayuda ha de ser un proceso importante y tomado tan en serio como el desarrollo del sistema en si, de tal manera que incluso puede hacerse necesario en concurso y ayuda de profesionales de la escritura y diseño gráfico.
La primer experiencia que suelen tener los usuarios de un sistema son los mensajes de error. Un usuario inexperto comete siempre errores que han de producir mensajes que le comenten la ocurrencia de tal error, las consecuencias del mismo y las posibles acciones a tomar. Por ello los mensajes de error han de ser fácilmente entendibles y accesibles a usuarios inexpertos, sin que por ello compliquen el funcionamiento de usuarios con más conocimientos.
los mensajes han de ser siempre amables, concisos, consistentes y constructivos. Se ha de evitar mensajes abusivos, insultantes y prepotentes. No se han de utilizar sonidos o campanas que puedan confundir y preocupar al usuario. De ser posible se indicaran las consecuencias del error y las posibles acciones a tomar y siempre se unirá el mensaje a un sistema de ayuda en línea que amplíe información sobre el error y su solución.
Se ha de ser siempre positivo, evitando acusar al usuario del error y tratando de considerar la experiencia y ámbito del usuario en la redacción de estos mensajes , con el fin de evitar mensajes que puedan ser considerados de forma errónea. Así un mensaje correcto achacara el error al sistema y propondrá la solución en términos adecuados a la experiencia y ámbito del usuario.
Resumiendo los factores a tener en cuenta en el diseño de mensajes:
Un caso en el que el usuario necesita ayuda es cuando aparece un mensaje de error ante el cual el usuario no sabe responder. Otros casos implican la resolución de preguntas como: ¿Que significa ...?, ¿como hacer ...?. El sistema ha de facilitar medios de ayuda que cubran todos los niveles posible en los que el usuario necesite de la misma.
Un sistema de ayuda ha de disponer de múltiples puntos de entrada, el usuario puede llegar a la misma a partir del punto superior de la jerarquía de mensajes, pero también puede entrar como consecuencia de un error, o pidiendo explicación sobre un determinado mandato, icono, ..etc. Y el sistema habrá de proporcionar las puertas que permitan todas estas entradas.
Los sistemas de ayuda en línea suelen tener una estructura jerárquica de tópicos, en la que unos tópicos tienen referencias hacia otros tópicos de nivel inferior. Existen también referencias cruzadas o referencias a otros tópicos en cualquier lugar de la jerarquía en una estructura de hipertexto. Los tópicos dispuestos en la parte alta de la jerarquía contienen información de carácter general, mientras que los tópicos de la parte inferior contienen información de tipo más particular.
El problema puede surgir si el usuario, una vez dentro del sistema de ayuda, no encuentra fácilmente el tópico con la información que le interesa, se encuentra perdido y abandona la confianza en dicho sistema de ayuda.
Presentar la información en múltiples ventanas separadas puede ayudar a una mejor lectura por el usuario, pero se ha de tener en cuenta que el tamaño de las pantallas es limitado y la aparición de múltiples ventanas puede oscurecer el sistema.
El texto, y la presentación del mismo en las pantallas de ayuda, ha de ser especialmente cuidado y preparado específicamente teniendo en cuenta las características propias de la lectura en pantalla. No se ha de utilizar una mera copia del manual escrito, se ha de tener en cuenta que la lectura en pantalla es más difícil y los textos han de ser más concretos y con características topográficas propias que ayuden a su lectura en línea.
dado que el usuario puede "navegar" entre los tópicos de un sistema de ayudas, se le ha de proporcionar sistemas de navegación o orientación que le permitan conocer en todo momento donde se encuentra y como localizar una información en particular. dada la posible estructura en forma de hipertexto de la ayuda, es posible la utilización de ayudas de navegación propias de los hipertextos para ayudar al usuario:
de forma que el usuario sea capaz de llegar a un determinado tópico de la forma que le resulte más cómoda y útil en un determinado momento.
La siguiente documentación ha de acompañar a cualquier sistema con el fin de garantizar su consistencia, buen funcionamiento y correcto uso por los usuarios:
Es fácil caer en la tentación de suponer que una atractiva interface gráfica es siempre mejor que cualquier interface alfanumérica. Es necesario un proceso de evaluación de la calidad de las posibles interfaces, evaluación que ha de tener en cuanta la usabilidad y el cumplimiento de los requerimientos del usuarios. Sin embargo se ha de tener en cuenta que en muchos casos las propias especificaciones del usuario restringen a que el sistema ha de funcionar en un sistema gráfico para un determinado tipo de pantalla, con lo que el proceso de evaluación de calidad se ve comprometido.
El sistemático proceso de evaluación del diseño de las interfaces gráficas puede ser costoso y complicado, ya que en muchos casos involucrara a especialistas en ramas muy diversas y el uso de laboratorios preparados a tal efecto. Por ello este tipo de evaluación no siempre es posible y hay que restringirse a evaluaciones de usabilidad de acuerdo a normas sencillas tendentes a localizar deficiencias de la interface. Estas técnicas se exponen a continuación:
Otro sistema posible de evaluación pasa por construir un cuestionario con preguntas sobre el sistema y la interface que han de rellenar los usuarios. Las dificultades para ello radican en la problemática de realizar diseñar preguntas concretas y bien orientadas para evaluar los aspectos que son necesarios, así como pasar el cuestionario a usuarios de todo tipo y con cierta experiencia en el manejo del sistema, ya que un usuario inexperto puede estar resentido en demasía.
Un método sencillo y de cierta eficacia es el que se basa en la observación directa del trabajo de los usuarios y posterior reunión con los mismos a efectos de comentar sus errores, dificultades, ..etc. La grabación en vídeo del trabajo de los usuarios es un medio muy poco costoso de recopilar información muy fiable y altamente objetiva sobre la utilización que hacen del sistema. este análisis en vidrio puede tener aspectos de estudio de productividad (cadenas de operación innecesarias, movimientos muy largos, ...) y ergometría conjuntamente con el estudio propio del manejo de la interface.
El recopilar información estadística de manejo en código incluido en la interface permite detectar operaciones corrientes o comunes, operaciones que se realizan juntamente, operaciones que causan errores frecuentemente, ... y preparar los medios que permitan corregir, acortar o hacer más efectivas esas operaciones.
Otro medio muy sencillo de evaluar la interface es la inclusión de un sistema que permita al usuario remitir mensajes al diseñador, en línea y sin abandonar la interface. De esta manera el diseñador dispondrá de una información importante para realizar modificaciones de interés.
El principal problema de todo lo dicho anteriormente radica en la elección del grupo de usuarios con los que se ha de realizar a evaluación. Naturalmente no se puede generalizar el uso de una interface sin haber sido evaluada correctamente, por lo tanto se ha de elegir un grupo de usuarios determinado y bien seleccionado con el que realizar la evaluación, lo cual puede ser ciertamente problemático.
la WEB ha hecho llegar la información de forma barata y accesible a prácticamente todos los usuarios ya que esta prácticamente al alcance de cualquiera. Ello a llevado a los proveedores de información afijase en la misma como medio de transmisión de sus productos hacia los posibles clientes.
Para estos proveedores la WEB significa una herramienta barata y eficaz de transmisión de conocimiento, actividades y servicios. Para los usuarios la WEB significa un gran repositorio e información a bajo costo. El principal problema para los mismos es la gran cantidad de información de muy distinta calidad disponible, el problema para localizar la información adecuada y con una calidad aceptable es llamado "sobrecarga de la información" y es necesario tenerle muy en cuenta a la hora de preparar y diseñar sistemas que utilicen la WEB como interface con el usuario.
Para los proveedores esta sobrecarga de la información implica que han de promocionar el sitio y hacerle conocer al usuario, pero también implica que en el diseño de la interface ha de captar la atención del potencial usuario e interesarle lo suficiente para que sus visitas sean repetitivas.
Al igual que en otras interfaces el usuario a de ser el centro del diseño, la facilidad de navegación para el mismo es un punto clave del diseño. Pero se han de considerar otros aspectos como son el mensaje a transmitir, lo contenidos y la utilidad que los mismos reportan a los usuarios. La innovación tecnológica es importante pero siempre se ha de tener en cuanta el amplio abanico de medios de los diversos tipos de usuarios posibles y considerar los peores casos posibles.
Los requerimientos básicos de una interface basada en WEB se podrían resumir:
La WEB tienen unas características propias que la diferencian de las interfaces clásicas, así se hace necesario considerar en el diseño que:
Un decálogo sencillo y simple que permitirá a cualquier diseñador lograr un sitio de calidad:
Prácticamente, desde la aparición de lenguajes de tercera generación (Cobol, Fotran, ...) han estado acompañados de lenguajes o utilidades para el diseño de Interfaces de usuario. algunos lenguajes, incluso, se basarón en las interfaces de usuario con centro de su funcionalidad (RPG, por ejemplo).
Las herramientas para la generación de lenguajes de usuario se pueden dividir en estas clases: