IHC

43
DISEÑO DE INTERFACES DE DISEÑO DE INTERFACES DE USUARIO USUARIO INTERACCIÓN HUMANO- COMPUTADORA

Transcript of IHC

Page 1: IHC

DISEÑO DE INTERFACES DE DISEÑO DE INTERFACES DE USUARIOUSUARIO

INTERACCIÓN HUMANO-COMPUTADORA

Page 2: IHC

INTERACCIÓN HUMANO-COMPUTADORA

¿Qué es la Interacción Humano-Computadora?

• IHC se define como el entendimiento, diseño, evaluación e implementación de sistemas interactivos para el uso por humanos.

• “IHC es el diseño de sistemas computacionales que apoyan a personas para que puedan llevar a cabo sus actividades de manera eficiente y segura.” [Preece et al., 1994]

• “IHC es el estudio y práctica de usabilidad. Es sobre el entendimiento, y creación de software y otras tecnologías que la gente querrá utilizar, será capaz de utilizar y encontrará efectivo al usarla.” [Carroll, 2002]

Page 3: IHC

INTERACCIÓN HUMANO-COMPUTADORA

• “No debemos de enfocarnos tanto en la interacción humano-computadora, sino más en la interacción entre humanos a través de la computadora.” [comentario de Terry Winogard]

• La disciplina de Interacción Persona-Computador (IUC) se conoce en la comunidad internacional como Human-Computer Interaction (HCI) o Computer-Human Interaction (CHI).

Page 4: IHC

INTERACCIÓN HUMANO-COMPUTADORA

• Para el mundo hispanohablante hemos adoptado la expresión de Interacción Persona-Computador y como acrónimo IUC.

• ¿Por qué es tan importante estudiar la interfaz de usuario? Porque tal como hemos dicho antes es una parte muy importante del éxito o fracaso de una aplicación interactiva a través de una encuesta hecha a desarrolladores, alrededor de un 48% del código de la aplicación esta dedicado a la interfaz

• Diferentes tipos de aplicaciones se requieren para diferentes propósitos y se necesita cuidado para dividir las tareas entre humanos y máquinas, asegurando que esas actividades creativas y no-repetitivas sean asignadas a los humanos mientras que las otras sean asignadas a las máquinas.

Page 5: IHC

INTERACCIÓN HUMANO-COMPUTADORA

Importancia de la IHC.

• Productividad • Bajar los costos de capacitación en el uso de software. • Mayor seguridad• El tema principal de esta disciplina está en la interacción y

mas específicamente en la interacción entre unos o más seres humanos y uno o más computadores

• Por ejemplo, los computadores pueden formar parte de carlingas de avión, monitores de ruta en coches, teléfonos móviles, blocks de notas, libros electrónicos, sistemas de realidad virtual, etc. Por otro lado, los usuarios pueden formar parte de grupos u organizaciones y por tanto necesitaremos de interfaces para sistemas distribuidos o trabajo cooperativo

Page 6: IHC

INTERACCIÓN HUMANO-COMPUTADORA

• En las siguientes imágenes podemos ver diferentes ejemplos de interfaces de dispositivos interactivos.

Page 7: IHC

INTERACCIÓN HUMANO-COMPUTADORA

Nuestra idea de computador hasta hace poco era la de un dispositivo con el que interaccionamos a través de una pantalla con un teclado y un ratón, sentados en una silla. Esta es una situación que ha cambiado radicalmente.

Page 8: IHC

INTERACCIÓN HUMANO-COMPUTADORA

• También, el sujeto puede querer utilizar su computador mientras camina hacia una reunión para consultar su agenda, las llamadas telefónicas pendientes y las últimas cotizaciones en bolsa. También, el usuario puede tener la visión o la movilidad disminuida y utiliza un software de lectura de la pantalla o de reconocimiento de la voz para manejar su computador. Todas estas situaciones podrían ser manejadas por esta disciplina que llamamos Interacción Persona Computador.

Componentes de la IHC. Cuatro elementos:

• El uso y contexto del sistema. • El usuario humano. • La computadora. • El proceso de desarrollo del sistema.

Page 9: IHC

INTERACCIÓN HUMANO-COMPUTADORA

El uso y contexto del sistema. • Organización social, cultura, comunidad. • Trabajo en grupo. • Areas de aplicación del sistema. • Adaptación del equipo de cómputo por los usuarios.

El usuario humano. • El procesamiento de información por parte del usuario (cognición). • Lenguaje. • Interacción (comunicación, cooperación, colaboración y negociación).

La computadora. • Técnicas de diálogo (grado de control de la sesión, iniciativa mixta). • Componentes gráficos (GUI, graphic user interface).

Page 10: IHC

INTERACCIÓN HUMANO-COMPUTADORA

El proceso de desarrollo del sistema • Lineamientos de diseño, enfoques. • Casos de estudio. • Técnicas de evaluación. • Técnicas de implantación

Page 11: IHC

INTERACCIÓN HUMANO-COMPUTADORA

Objetivos de la IUC • Desarrollar o mejorar la seguridad, utilidad, efectividad, eficiencia

y usabilidad de sistemas que incluyan computadora. Cuando decimos sistemas no nos referimos tan solo al hardware y al software sino también a todo el entorno.

Para hacer sistemas interactivos hace falta:Comprender los factores tales como psicológicos, ergonómicos, organizativos y sociales, que determinan como la gente trabaja y hace uso de los computadores y trasladar esta comprensión para

Desarrollar herramientas y técnicas que ayuden a los diseñadores a conseguir que los sistemas informáticos sean los idóneos según las actividades a las cuales se quieran aplicar, para Conseguir una interacción eficiente, efectiva y segura, tanto a nivel individual como de grupo.

Page 12: IHC

INTERACCIÓN HUMANO-COMPUTADORA

• Es muy importante comprender que los usuarios no han de cambiar radicalmente su manera de ser, sino que los sistemas han de ser diseñados para satisfacer las requisitos del usuario.

Page 13: IHC

INTERACCIÓN HUMANO-COMPUTADORA

Metas de la IHC

Desarrollar y mejorar la seguridad, utilidad, eficiencia y usabilidad de sistemas basados en computadoras. Incrementar la usabilidad de los sistemas.

Usabilidad Un concepto clave en la HCI: Desarrollar sistemas fáciles de aprender y fáciles de usar.

Según Donald Norman , hay dos principios claves para una buena interacción humano-computadora: Visibilidad y Provisión.

Page 14: IHC

INTERACCIÓN HUMANO-COMPUTADORA

Visibilidad (visibility)

Los componentes de una interfaz deben: a)   ser visibles, pero no sobrecargar al usuario. b)  tener un buen mapeo con los efectos que producen. c)   feedback d)  relación entre los objetivos del usuario, las acciones que debe

hacer y los    resultados.

Provisión (affordance)

Los componentes de una interfaz deben proveer de manera natural su funcionalidad. Se refiere a las propiedades de los objetos que sugieren su uso.

Page 15: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

• Para poder diseñar interfaces, además del aspecto informático, hace falta tener en cuenta otras disciplinas. Necesitamos trabajar los aspectos psicológicos del usuario, la ergonomía del equipamiento, los aspectos sociales, temas de diseño, etc

IPOIPO

SociologíaSociología

Inteligencia Inteligencia ArtificialArtificial

ErgonomíaErgonomía

ProgramaciónProgramación

DiseñoDiseño

PsicologíaPsicología IngenieríaIngenieríadel Softwaredel Software

IPOIPO

SociologíaSociología

Inteligencia Inteligencia ArtificialArtificial

ErgonomíaErgonomía

ProgramaciónProgramación

DiseñoDiseño

PsicologíaPsicología IngenieríaIngenieríadel Softwaredel Software

Page 16: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

PsicologíaLa psicología es la ciencia que estudia el comportamiento y los estados de la conciencia de la persona humana, considerada individualmente o bien al mismo tiempo como miembro de un grupo social. Cabe distinguir entre:

Psicología cognitiva. Trata de comprender el comportamiento humano y los procesos mentales que comporta.

Psicología social. Trata de estudiar el origen y las causas del comportamiento humano en un contexto social.

La psicología contribuye a la IUC mediante conocimientos teorías acerca de como los sujetos se comportan, procesan la información y actúan en grupos y organizaciones, pero también proporciona metodologías y herramientas para evaluar y determinar el grado de satisfacción de éstos a nuestros diseños

Page 17: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Diseño

Actividad encaminada a conseguir la producción en serie de objetos útiles y bellos. Tal como se entiende actualmente, pretende actuar sobre el entorno físico del hombre con tal de mejorarlo en su conjunto.

Etnografía – Sociología

Es la ciencia que estudia las costumbres y las tradiciones de los pueblos.

Page 18: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

ProgramaciónUn computador por si solo no es capaz de hacer nada, sino que solo puede hacer lo que se la ha indicado, o mejor dicho, programado que haga. La programación es la herramienta que nos permite “decirle al computador lo que debe hacer”.

• El programador de computadores es el encargado de diseñar soluciones a problemas y de escribirlos como programas de computadora [TRE83]. Un programa:– debe funcionar– no debe tener dificultades– debe estar bien documentado– debe ser eficiente

• Dentro de la programación podemos englobar tanto los propios lenguajes de programación (Java, C, C++, Pascal, Fortran, BASIC, etc.) como todas las herramientas de diseño y programación que permiten el desarrollo de las interfaces.

Page 19: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

ORIENTADA a OBJETOS.La programación Orientada a Objetos (POO) esta basada en los conceptos de Clases y Objetos.

Clases: Una Clase es una colección de Datos y Métodos que operan sobre los datos. Los datos y métodos tomados juntos sirven para definir contenido y capacidades de algunos Objetos.

Objetos: Un Objeto es una instancia de una Clase.Es la programación mayormente utilizada hoy en día.Ejemplos: C++, Java

Imperativa (Entrada, procesamiento y salidas de Datos): Es llamada así porque esta basada en comandos que actualizan variables que están en almacenamiento.

Page 20: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Funcional: • La principal característica de este tipo de programación reside

en que “los datos son funciones y los resultados pueden ser un valor o una función”.

• Una Función puede llamar a otra Función, o el resultado de una Función puede ser usado como el argumento de otra Función.

• Los programas son escritos enteramente dentro del lenguaje de expresiones, funciones y declaraciones. Ejemplos: LISP, ML, HOPE

• La Programación Funcional se caracteriza por el uso de Expresiones y Funciones mientras que la Imperativa por el uso de variables, comandos y procedimientos.

Page 21: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Declarativa: • La programación Declarativa está basada en la noción de Relación

debido a que la relación es el concepto más general de una Aplicación.

• Los lenguajes declarativos están basados en el modo de pensar de los humanos en lugar del computador.

Principales ventajas que aportan:

• Elegancia, claridad, sencillez, potencia y concisión.• Semánticas claras, simples y matemáticamente bien fundadas.• Cercanos al nivel de abstracción de las especificaciones

formales/informales de los problemas a resolver.

Page 22: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Concurrente

• Este estilo de programación esta aún en proceso de investigación.

• La Programación Concurrente es una disciplina relativamente nueva y, por ello, va tomando muchas aproximaciones diferentes según va avanzando su investigación.

• La Programación Concurrente debe frecuentemente estar acompañada por el avance del Hardware y sus arquitecturas correspondientes.

• Ejemplos: ADA es un lenguaje familiar y tiene una aproximación a la Concurrencia.

Page 23: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Inteligencia artificial

• La inteligencia artificial trata de diseñar programas de computador inteligentes que simulen diferentes aspectos del comportamiento humano inteligente.

• La inteligencia artificial ha sido utilizada en el diseño de tutores y sistemas expertos en interfaces inteligentes y en el diseño de interfaces de lenguaje natural utilizando la voz. El desarrollo de agentes inteligentes para ayudar en la navegación a los usuarios y reducir las tareas más normales es un tema nuevo en los desarrollos multimedia.

Page 24: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Ergonomía o factores humanos

• Su propósito es definir y diseñar herramientas y artefactos para diferentes ambientes: trabajo, descanso y doméstico. Su objetivo es maximizar la seguridad, la eficiencia y la fiabilidad para simplificar las tareas e incrementar la sensación de confort y satisfacción.

• La ergonomía o factores humanos se centra el estudio de las características físicas de la interacción, por ejemplo el entorno físico donde se produce esta y la forma y las peculiaridades físicas de la pantalla.

Page 25: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Algunos de los aspectos que se podrían considerar son los siguientes:

Organización de los controles y pantallas. Los aspectos físicos de como están organizados los controles y las pantallas son importantes. En general han de permitir una acción rápida al usuario. El usuario ha de poder acceder fácilmente a todos los controles y ver toda la información que se le presenta sin mover excesivamente el cuerpo.

• La información más importante ha de estar situada a la altura de los ojos. Los controles se han de disponer espaciados con tal de que el usuario se acomode perfectamente. En cuanto a la iluminación, hace falta prevenir los reflejos.

• El entorno físico de la interacción. La ergonomía también estudia el entorno físico donde se realiza la interacción.

Page 26: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Aspectos de salud.

Aunque el uso de los computadores no es una actividad arriesgada, es preciso tener en cuenta determinados aspectos de salud que afectan directamente la calidad de la interacción y las prestaciones del usuario, la posición física, la temperatura, la luz, el ruido, el tiempo de permanencia delante del computador, etc. Actualmente las grandes compañías ya están teniendo en cuenta los aspectos de prevención de riesgos laborales en el mundo de la informática.

El uso de los colores.

Los colores utilizados para visualizar han de ser tan diferentes como sea posible y su distinción no se debe ver afectada por los cambios de contraste.

Page 27: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

Ergonomía de los sistemas lógicos

• Desde el punto de vista de la interconexión hombre-ordenador, son importantes las siguientes consideraciones:

• El programa deberá estar adaptado a la tarea a realizar.• El programa deberá ser fácil de utilizar y si fuera necesario

con poder de adaptación a las necesidades o conocimientos del usuario.

• No se deberán utilizar dispositivos de control cuantitativos o cualitativos sin que se haya informado previamente a los trabajadores.

Page 28: IHC

LA INTERDISCIPLINARIEDAD DE LA IUC

• Los sistemas deben proporcionar a los trabajadores indicaciones sobre su desarrollo.

• Los sistemas deben mostrar la información en un formato y a un ritmo adaptado al usuario.

• La ergonomía debe aplicarse al tratamiento de la información por parte del hombre.

En el caso particular de las aplicaciones Web, existe por ejemplo una Iniciativa proveniente del Consorcio World Wide Web (W3C) para regular los criterios de accesibilidad de las páginas Web. Todas las pautas y puntos de comprobación se pueden encontrar en una guía breve editada en la dirección: www.w3.org/WAI

Page 29: IHC

PRINCIPIOS DE DISEÑO

• Existen principios relevantes para el diseño e implementación de IU, ya sea para la IU graficas como para la Web.

• 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.

Page 30: IHC

FAMILIARIDAD• Se han de utilizar términos y conceptos sacados de la

experiencia.

• El usuario no se ha de ver forzado a adaptarse a la interfaz porque sea conveniente que la misma sea de una determinada forma.

• La interfaz 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.

Page 31: IHC

CONSISTENCIA

• Similares acciones y conceptos han de tener similar disposición y representación en la interfaz.

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.

Page 32: IHC

CONSISTENCIA• Es importante mantener la consistencia a lo largo de los

distintos subsistemas y los comandos, acciones y representaciones. 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 interfaz.

Page 33: IHC

COMPORTAMIENTO FIABLE (MÍNIMA SORPRESA)

• El usuario no ha de ser sorprendido con el comportamiento de la interfaz.

• 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 el usuario puede sorprenderse y realizar acciones no esperadas que causen malfuncionamientos o perdida de información.

• Es, por lo tanto, absolutamente necesario que las interfaces aseguren que todas las acciones sea las esperadas en el contexto propio en que se encuentran.

Page 34: IHC

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 interfaz 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.

Page 35: IHC

RESTABLECIMIENTOImplementar 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.

Page 36: IHC

ANTICIPACIÓN• Las aplicaciones deberían

intentar anticiparse a las necesidades del usuario y no esperar a que el usuario tenga que buscar la información, recopilarla o invocar la información que va a utilizar.

• En la figura se muestra como el procesador de texto se anticipa a las necesidades del usuario, proporcionando las características del texto seleccionado como fuente, tamaño, alineación, etc

Page 37: IHC

AUTONOMÍA• El computador, la IU, y el entorno de trabajo deben estar a

disposición del usuario. Se debe dar al usuario el ambiente flexible para que pueda aprender rápidamente a usar la aplicación.

Page 38: IHC

AUTONOMÍA• El ambiente de trabajo debe ser explorable pero no azaroso.

• Es importante mantener mecanismos de información del sistema que mantengan a los usuraos alertas e informados.

Page 39: IHC

VALORES POR DEFECTO

• No se debe utilizar la palabra “Defecto en un a aplicación o servicio” puede ser reemplazada por ” estándar” o “definida por el usuario” “Restaurar” valores iniciales” o algún otro termino especifico que describa lo que esta sucediendo, los valores por defectos tienen que ser opciones inteligentes y sensatas además fáciles de modificar.

Page 40: IHC

EFICIENCIA DEL USUARIO• Se debe considerar la productividad del usuario antes que la productividad

de la maquina, si el usuario debe esperar la respuesta del sistema por un periodo prolongado de tiempo, estas perdidas de tiempo se pueden convertir en perdidas económicas para la organización.

• Los mensajes de ayuda deben ser sencillos y proveer respuestas a los problemas. Los menús y etiquetas del sistema debería tener las palabras claves del proceso.

En la figura se muestra una definición incorrecta de las palabras claves OK y Apply aparentemente realizan el miso proceso, esto puede solucionarse suprimiendo una de ellas.

Page 41: IHC

LEGIBILIDAD• Para que la IU favorezca la usabilidad del sistema de software, la información

que se exhiba en ella debe ser fácil y cómoda de ubicar y leer, para lograr esto se deben tener en cuenta cosas como:

• El texto que aparezca en la IU debería tener un alto contraste, se deben utilizar combinaciones de colores como el negro sobre fondo blanco o amarillo suave.

• El tamaño de las fuentes debe ser lo suficientemente grande como para poder ser leído en monitores estándar. Es importante hacer clara la presentación visual (colocación/ agrupación de objetos, evitar la presentación de excesiva información).

Page 42: IHC

LEGIBILIDAD• La figura de la izquierda, combina una disposición asimétrica

de la información de un conjunto de colores que no facilita la lectura. La figura de la derecha facilita la presentación de la información utilizando una gama de colores homogénea y una alineación de texto que favorece la legibilidad del mismo.

Page 43: IHC

Gracias!!!