Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ingeniera de la interfaz
Objetivos
Conocer el proceso de diseo de sistemas interactivos Apreciar la importancia de realizar un diseo centrado en el usuario Presentar notaciones y mtodos para el anlisis de la interfaz de usuario
Contenido
Introduccin Ciclo de vida de un sistema interactivo El diseo centrado en el usuario Prototipos Anlisis de tareas
Introduccin
Los sistemas interactivos se caracterizan por la importancia del dilogo con el usuario La interfaz determina en gran medida la percepcin e impresin que el usuario posee de una aplicacin El usuario no est interesado en la estructura interna de una aplicacin, sino en cmo usarla La interfaz es una parte fundamental en el proceso de desarrollo y debe tenerse en cuenta desde el principio
Introduccin
No se puede realizar la especificacin, disear las funciones y estructuras de datos y escribir el cdigo y una vez casi terminado el desarrollo de la aplicacin plantearse el diseo de la interfaz de usuario De esta forma se obtienen interfaces muy dependientes del diseo de los datos y las funciones, sin tener en cuenta al usuario que va a utilizar esos datos y esas funciones
Introduccin
Una vez hecha la especificacin, propuesto un diseo y desarrollado el cdigo, es muy difcil cambiar las caractersticas de la interaccin y presentacin de la informacin, salvo pequeos detalles Por tanto, debemos empezar con una idea clara de cmo queremos la interfaz y cmo sern las interacciones con el usuario para despus desarrollar las especificaciones funcionales que sirvan de gua al diseo posterior
Introduccin
En el desarrollo de sistemas interactivos se aplican tcnicas de Ingeniera del Software, modificando algunos aspectos de los mtodos de diseo clsico para adaptarlos a estos sistemas Aspectos a considerar:
Captura de requisitos de interaccin Anlisis de tareas Realizacin de prototipos Evaluacin
Ciclo de vida
Ciclo de vida
Prototipos
Son documentos, diseos o sistemas que simulan o tienen implementadas partes del sistema final Son herramientas muy tiles para hacer participar al usuario en el diseo y poder evaluarlo desde las primeras fases del desarrollo
Prototipos
Caractersticas
Funcionan, no son ni una idea ni un dibujo Tienen un tiempo de vida corto Pueden servir para diferentes objetivos Han de poder ser construidos rpida y eficientemente
Prototipos
Tipos
Incremental
Se construye con componentes separados
Evolutivo
Contina utilizndose en un proceso evolutivo
Prototipos
Escenarios
Un escenario es una historia de ficcin con representacin de personajes, sucesos, productos y entornos Ayuda al diseador a explorar ideas y las ramificaciones de decisiones de diseo en situaciones concretas El uso de los escenarios nos permite definir y desarrollar conocimientos sobre el entorno del usuario y su espacio de trabajo (Bruce Toganizzini) Es interesante pensar en varios escenarios para reflejar las diferentes situaciones y puntos de vista Es importante ser consistente con la representacin para ver qu pasa en situaciones concretas
Prototipos
Escenarios
Escenario de tareas
Es una descripcin del mundo del usuario tal como es ahora
Escenario de futuro
Es una descripcin del mundo del usuario en un futuro
Escenarios
Tipos
Narrativa
Flowchart
Representacin grfica de las acciones y decisiones extradas de la narrativa
Texto procedural
Descripcin paso a paso de las acciones del usuario y las respuestas del sistema
Escenarios
Storyboard
Es una narracin grfica de una historia en cuadros consecutivos Es un concepto que se utiliza en el cine o el teatro Permite indicar los enlaces a diferentes pginas a partir de los resultados de la interaccin del usuario
Escenarios
Storyboard
Escenarios
Storyboard
Escenarios
Prototipo de papel
Se basa en la utilizacin de papel, tijeras y lpiz para describir un diseo en un papel Permite una gran velocidad y flexibilidad
Escenarios
Escenarios
Escenarios
Escenarios
Escenarios
Escenarios
Vdeo
Permite rodar escenarios de futuro en los que se pueden realizar manipulaciones mediante postproceso para simular caractersticas del diseo que an no estn disponibles Ejemplos:
Poblado bero de Els Vilars Starfire, de Sun Microsystems, sobre la interaccin en 2004
Escenarios
Starfire (1)
Vdeo 1
Vdeo 2
Escenarios
Starfire (2)
Escenarios
Starfire (y 3)
Prototipos
Problemas
Trabajar con prototipos requiere tiempo y experiencia en la planificacin Las caractersticas ms importantes del sistema pueden ser las que se sacrifican en el prototipo (seguridad, fiabilidad)
Anlisis de tareas
Una premisa de cualquier aproximacin al diseo es conocer al usuario, y por tanto cmo realiza las tareas Esta informacin se recoge en la fase de anlisis de las tareas con una notacin que permita su formalizacin y estudio Tarea: Unidad significativa de trabajo en la actividad de una persona (sobre una aplicacin) Beneficios del anlisis de tareas:
Proporciona un diseo de la aplicacin consistente con el modelo conceptual del usuario Facilita el anlisis y evaluacin de usabilidad. Se puede predecir el rendimiento humano e identificar problemas de uso
Anlisis de tareas
El anlisis de tareas consiste en el estudio de:
Informacin que necesita el usuario para realizar la tarea (qu hacer) Terminologa y smbolos del dominio del problema (elementos) Descripcin de cmo esas tareas se realizan actualmente (cmo)
Anlisis de tareas
Ejemplo
Anlisis de tareas
Ejemplo
Anlisis de tareas
Ejemplo
Informacin requerida:
Lista de programas Tiempo de inicio, duracin, canal Da de la semana
Anlisis de tareas
Ejemplo
Acciones necesarias:
Lista de programas (identificar el programa que se quiere grabar) Seleccionar la cinta (de duracin adecuada) Iniciar el proceso de grabacin (seleccionando ajustes adecuados)
Anlisis de tareas
Mtodos
Descomposicin de tareas
Ver el modo en el cual una tarea se puede descomponer en otras ms simples
Anlisis de tareas
Anlisis jerrquico
Secuencia de Tareas
Seleccin de Tareas
Anlisis de tareas
Anlisis jerrquico
Anlisis de tareas
GOMS
Familia de tcnicas propuesta por Card, Moran, y Newell (1983) para modelar y describir las prestaciones de las tareas desde el punto de vista humano GOMS es un acrnimo que significa Objetivos (Goals), Operadores (Operators), Mtodos (Methods) y Reglas de seleccin (Selection rules)
Anlisis de tareas
GOMS
Objetivos
Operadores
Acciones bsicas que se deben llevar a cabo para utilizar el sistema
Mtodos
Existen diferentes alternativas para conseguir un objetivo. P.ej. una ventana se puede cerrar mediante una combinacin de teclas (Alt-F4) o con el ratn (Archivo-cerrar)
Reglas de seleccin
Eleccin entre posibles alternativas para alcanzar un objetivo
Anlisis de tareas
GOMS
Anlisis de tareas
Dilogo
El dilogo es el proceso de comunicacin entre dos o ms participantes En el diseo de interfaces de usuario, el dilogo representa la estructura de la conversacin entre el usuario y el ordenador
Diagramas de transicin
Diagramas de transicin
copia limpia portapapeles
inicio
Portapapeles Portapapeles vaciar Vacio sin Lleno sin portapapeles seleccin seleccin
Redes de Petri
Negrita On
Usuario pulsa Negrita Usuario pulsa itlica
Itlica On
T1
T2
T3
T4
Negrita Off
Itlica Off
Gramticas
Uno de los primeros mtodos utilizados para la representacin del dilogo en IPO Una gramtica describe un lenguaje mediante un conjunto de reglas que especifican los literales correctos en el lenguaje Ventaja: se pueden usar herramientas para asegurar la correccin y completitud Adecuadas para lenguajes basados en rdenes Las gramticas multi-party poseen smbolos no terminales que se etiquetan con el participante: usuario (U) u ordenador (C)
<Sesin> ::= <U: Open> <C:Respuesta> <U:Open> ::= LOGIN <U: Name> <C: Respuesta> ::= HELLO [<U: Name>]
UAN
icon!
icon-!
Dejar de iluminar el objeto icono
icon >~
Movimiento de arrastre del objeto icono
UAN
Realimentacin File!, forall(file!): file-! Outline(file) > ~ Outline(file) > ~ Delete(file), trash!!
UAN
Anlisis de tareas
Implementacin
Una vez modeladas las tareas debe obtenerse una implementacin correcta de las mismas Para ello hay que tener en cuenta varios factores:
Tipos de interaccin
Posicionamiento, valor, texto, seleccin, arrastre
Conclusiones
El diseo de la interfaz es parte fundamental del proceso de desarrollo del software y debe ser considerado desde el principio El usuario debe tomar parte en el diseo y no ser mero espectador Existen metodologas y notaciones para el diseo que deben ser utilizadas
La evaluacin del diseo tiene una gran importancia