Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Desarrollo de IUs basado en modelos
José A. Gallud Grupo LoUISE-UCLM
2
Contenido Motivación Concepto de interfaz, HCI y calidad
El proceso de diseño de la interfaz de usuario El modelo y los modelos de interfaz Desarrollo basado en modelos (entornos) [Colaboración: una introducción al CSCW]
3
Motivación Actualmente existe un gran interés por el estudio de los diversos aspectos que caracterizan la interacción persona-ordenador (HCI). Concretamente el ámbito de generación de interfaces de usuario como medio principal de interacción. Especialmente en el caso de los sistemas interactivos que implican un gran nivel de interacción con el usuario y requieren, por tanto, conceder gran importancia a la interfaz de usuario. La mayoría de las aproximaciones no proporcionan los mecanismos adecuados para identificar y especificar las necesidades y requisitos de los usuarios, así como la validación de esos requisitos durante todo el proceso de desarrollo del software, desde el principio hasta el final. El 80% de los costes de mantenimiento (lo cual, a su vez, representa el 80% del coste total de desarrollo) son debidos a problemas de interacción entre el usuario y el sistema, no a problemas técnicos. [Landauer, 1995]
4
Concepto de interfaz, HCI y calidad
Aquellos aspectos del sistema con los que el usuario entra en contacto. Un lenguaje de entrada para el usuario, un lenguaje de salida para el ordenador y un protocolo para la interacción La totalidad de los aspectos superficiales del sistema, tales como: sus dispositivos de entrada y salida, la información presentada al usuario o la requerida por éste, el comportamiento del sistema, su documentación y cursos de entrenamiento y las acciones del usuario con respecto a estos aspectos.
5
Algo más amplio que una GUI
… La interfaz ofrece una visión de lo que el usuario percibe y de las operaciones que puede realizar sobre el sistema informático. Percibir: Recibir por uno de los sentidos las características o impresiones del objeto. Comprender o conocer una cosa. Algo más amplio que una GUI (Graphical User Interface) Operación: Ejecución de una cosa Requisitos funcionales Cómo llevarlas a cabo (interacción)
6
… La interfaz es una parte muy importante del éxito o fracaso de una aplicación La interfaz es del 47% al 60% de las líneas de código McIntyre, 90 Un 48% del código de la aplicación está dedicado al desarrollo de la interfaz. Myers, 92 Las interfaces tienen que ser usables y accesibles
7
Interfaces::captación intuitiva
Concepto técnico que se refiere a las propiedades de los objetos – qué tipos de operaciones y manipulaciones se pueden hacer a un objeto en particular Hace las cosas visibles Proporciona indicaciones de cómo se puede usar algo Proporciona indicaciones de para que es una cosa Objetivo: el uso de un objeto es evidente simplemente mirándolo Visual, instrucciones incluidas El objeto no necesita instrucciones para su uso, él mismo son las instrucciones
8
interfaz Objetos de la vida cotidiana
9
interfaz Objetos de la vida cotidiana
Evidencia Cognición
10
Interfaces::calidad ¿Qué es la calidad?
ISO 9000 [ISO87], asocia la calidad con la certeza de que el producto a desarrollar o producir satisfará los requisitos establecidos. ISO 8402 [ISO94], define calidad como la totalidad de las características de una entidad que afectarán a su habilidad para satisfacer necesidades establecidas e implícitas. ISO 9126 [ISO91], describe las características que permiten describir la calidad de un producto software como: funcionalidad, eficiencia, usabilidad, fiabilidad, mantenibilidad y portabilidad.
11
…usabilidad Calidad de uso o usabilidad
Asociada a la evaluación de las necesidades que tienen los usuarios para alcanzar una meta determinada, con efectividad, productividad, seguridad y satisfacción en un contexto de uso específico. La medida en la que un producto se puede usar por determinados usuarios para conseguir objetivos específicos con efectividad, eficiencia y satisfacción en un contexto de uso especificado
12
HCI
13
Diseño centrado en el usuario
En la literatura podemos encontrar varias propuestas para solucionar este problema que básicamente se fundamentan en la integración de factores humanos en el proceso de desarrollo de software, es decir, tener en cuenta las necesidades del usuario final desde las primeras fases del desarrollo e incorporar estos aspectos en un modelo de usuario como parte del proceso de desarrollo. Así pues, la solución a este problema consiste en adoptar una aproximación de desarrollo orientada al usuario que se caracteriza por [ISO-13407]:
14
…desarrollo centrado en el usuario
La participación activa del usuario así como una clara comprensión del contexto de uso y de las tareas y requisitos del usuario final. Una distribución apropiada de funciones entre los usuarios y la tecnología, especificando qué funciones deben ser llevadas a cabo por los usuarios y cuáles son de índole tecnológica. La iteración de las soluciones de diseño en las que la retroalimentación del usuario es esencial como fuente de información. Una perspectiva de diseño multidisciplinar que requiere de gran variedad de especialidades o disciplinas (desarrolladores de software, expertos en usabilidad, especialistas en ergonomía, etc.)
15
El proceso de diseño de IU
El diseño de IU es un proceso iterativo en el que hay una estrecha relación entre usuarios y diseñadores Las 3 actividades principales de este proceso son: Análisis del usuario. Comprender lo que harán los usuarios con el sistema; Prototipado del sistema. Desarrollar una serie de prototipos para experimentar; Evaluación de la interfaz. Experimentar los prototipos con los usuarios.
16
… © Ian Sommerville 2004
17
Modelos Necesitamos modelos pero… ¿Qué es un modelo?
Una abstracción de algún proceso del mundo real (reconocimiento del lenguaje natural, cognición, etc.) A menudo expresado mediante una representación concreta
18
Desarrollo basado en modelos
Clasificación de herramientas software de IU: Herramientas basadas en lenguajes: Requieren que se programe en un lenguaje de propósito especial. Herramientas de especificación gráfica interactiva: Permiten un diseño interactivo de la IU. Herramientas de generación basadas en modelos: Hacen uso de un modelo o especificación de alto nivel para generar la IU de forma automática. Las dos primeras permiten la especificación tanto del comportamiento dinámico como de la estructura de la IU de forma sencilla, pero no ambas partes a la vez. Y, al igual que la mayoría de las herramientas actuales, soportan solamente la fase final de desarrollo del ciclo de vida de la IU, y las abstracciones que proporcionan no tienen una conexión directa con los resultados finales.
19
…MB-UID IDEA PRINCIPAL: Toda la información de la interfaz de usuario necesaria para su desarrollo está explícitamente representada en Modelos Declarativos. Todos los aspectos del diseño de IU se representan utilizando modelos declarativos La conveniencia de los entornos basados en modelos radica principalmente en la expresividad que pueden aportar dichos modelos declarativos. Modelo: Especificación declarativa de la estructura y comportamiento de un componente software. Declarativos porque no contienen código sino descripciones a alto nivel de abstracción.
20
… Características principales de los entornos basados en Modelos:
Utilización de Modelos Declarativos para representar todos los aspectos relativos a la interacción usuario-sistema. Generación Automática de la IU a partir de estos modelos. Criterios para que una herramienta de IU se considere un Entorno de Desarrollo Basado en Modelos: (1) Debe incluir un modelo de alto nivel, abstracto y explícitamente representado (declarativo) acerca del sistema a desarrollar. (2) Debe establecer de forma clara, una relación tecnológicamente bien soportada entre (1) y la IU final.
21
Generaciones de MB-UIDE
Se distinguen dos generaciones de MB-UIDEs que surgieron como mejoras a los primeros User Interface Management Systems (UIMSs). La Primera Generación enfatiza la generación automática de la interfaz en lugar del seguimiento de un proceso de diseño de interfaces de usuario. La Segunda Generación de MB-UIDEs enfatiza la implicación de los usuarios en el proceso de desarrollo de interfaces. Las herramientas de esta generación soportan el diseño incremental de IUs.
22
…arquitectura
23
Modelos declarativos Modelo de Tareas Modelo de Aplicación
Describe las tareas que el usuario puede ejecutar con el sistema, incluyendo sub-tareas, sus objetivos y los procedimientos utilizados para alcanzar los objetivos. Modelo de Aplicación Especifica la información acerca de una aplicación que es independiente de cómo los objetos son mostrados y cómo serán invocadas las operaciones. Normalmente se corresponde con los diagramas de clases. Modelo de Usuario Describe los posibles usuarios del sistema en términos de sus habilidades, conocimientos y estilos de procesar la información. Modelo de Presentación: Describe los aspectos visuales de la interfaz. Se divide en Modelo de Presentación Abstracta y Modelo de Presentación Concreta. Modelo de Presentación Abstracto: proporciona una vista abstracta de una interfaz que es independiente del modelo concreto subyacente. Modelo de Presentación Concreto: es la instancia concreta de una interfaz que puede ser presentada al usuario. Puede haber muchas instancias concretas de un modelo de presentación abstracto Modelo de Diálogo Define las características procesales del diálogo persona-ordenador en un modelo de interfaz.
24
…modelos MODELO DE TAREAS:
Una Tarea es un objetivo junto con el conjunto ordenado de acciones y subtareas que se tendrían que realizar en el contexto adecuado. Esta definición explica la naturaleza inherentemente interrelacionada de tareas y objetivos. Las acciones son necesarias para satisfacer los objetivos. La descripción de una tarea debe incluir: Un objetivo. Un conjunto no vacío de acciones u otras tareas necesarias para lograr el objetivo. Un plan de cómo seleccionar acciones o tareas, y Un modelo del artefacto que está involucrado en el desarrollo de una tarea.
25
…modelos MODELO DE DOMINIO:
En su forma más básica, los modelos de dominio deberían representar las entidades importantes junto con sus atributos, métodos y relaciones. Similares a los modelos utilizados por los métodos de Ingeniería del Software, especialmente los métodos orientados a objetos. Esta clase de modelo de dominio se corresponde con el modelo de objetos de los tradicionales métodos de desarrollo de software orientado a objetos.
26
…modelos MODELO DE USUARIO:
Describe las características del usuario final de la aplicación. El propósito es soportar la creación de interfaces de usuario individualizadas. La personalización de una interfaz de usuario se puede llevar a cabo o bien durante el diseño o bien en tiempo de ejecución. La personalización durante la etapa de diseño viene soportada normalmente por un modelo de usuario que representa los diferentes roles que el usuario puede desempeñar (desarrollo de interfaces de usuario adaptadas), Mientras que la personalización en tiempo de ejecución requiere un modelo de usuario para cada tipo de usuario (soporte de interfaces de usuario adaptativas).
27
MODELO DE USUARIO: Las características del usuario se pueden clasificar como independientes de la aplicación o dependientes de la aplicación. Las características independientes de la aplicación incluyen aspectos personales como las preferencias, las capacidades, habilidades psicomotrices, etc. Mientras que las características dependientes de la aplicación incluyen objetivos, conocimiento del sistema y de la aplicación, etc. Además, un modelo de usuario incluye una serie de reglas para tomar una decisión de diseño de la interfaz de usuario (por ejemplo, la selección de los objetos de interacción) a partir de una determinada característica del usuario.
28
MODELO DE DIÁLOGO: Se utiliza para describir la “conversación” hombre-máquina. Describe cuando el usuario final puede invocar comandos, seleccionar o especificar entradas de información y cuando el ordenador puede requerir información del usuario y presentar la información de salida. En otras palabras, el modelo de diálogo describe la secuencia de entradas, salidas y su interrelación. El propósito principal es describir la estructura sintáctica de la interacción hombre-máquina.
29
MODELO DE PRESENTACIÓN:
Describe las componentes que pueden aparecer en la pantalla del usuario final, sus características de diseño y las dependencias visuales existentes entre ellas. Las pantallas de la mayoría de las aplicaciones constan de una parte estática y otra dinámica. La parte estática incluye la presentación de los elementos (widgets) estándar tales como botones, menús, cajas de diálogo, etc. Normalmente la parte estática permanece fija durante la ejecución de la aplicación excepto los cambios de estado como habilitado/deshabilitado, visible/invisible. Por otro lado, la parte dinámica muestra los datos dependientes de la aplicación que típicamente cambian en tiempo de ejecución, por ejemplo, la información de salida que genera la aplicación, los datos de entrada específicos de la aplicación que proporciona el usuario, etc.
30
Modelos de diseño de interfaz
Hay cuatro modelos diferentes en el diseño de HCI (visión complementaria): El modelo de diseño expresa el diseño del software El modelo de usuario describe el perfil de los usuarios finales (noveles o expertos, con formación cultural o sin ella,…) El modelo del usuario es la percepción del sistema que tiene el usuario final. La imagen del sistema es la manifestación externa del sistema (apariencia, documentación, etc.)
31
MB-UIDE Un MB-UIDE se compone de:
Modelos declarativos que describen interfaces de usuario (IUs); Herramientas para construir y ejecutar un modelo de interfaz de usuario (MIU)
32
Beneficios de los MB-UIDE
Proporciona descripciones más abstractas de IU comparadas con otras herramientas de desarrollo de IU Facilita la creación de métodos de diseño e implementación de IU de forma sistemática Proporciona infraestructura para automatizar tareas relacionadas con el diseño de IU
33
Ejemplos Casos de Uso Tareas Dominio Usuario Diálogo Presentación UIDE
6 Clases C++ AME Modelo OO JANUS GENIUS Modelo E-R ADEPT MASTERMIND CORBA IDL MECANO MOBI-D Modelo Objetual MIMIC TRIDENT FUSE Especificación Algebraica TADEUS OVID IDEAS
34
Comparación de entornos
35
Notaciones Los modelos se basan en diferentes notaciones:
LOTOS (TDM of ADEPT) OMT (AM of AME, AM of TADEUS) algebraic specification (AM of FUSE) extended CORBA IDL (AM of JANUS, AM of MASTERMIND) style rule (all models of ITS) MIMIC (all models of MOBI-D) ER (AM of TRIDENT)
36
Algunas conclusiones (modelos)
Modelo de Dominio y Modelo de Aplicación se usan con el mismo significado y de la misma forma. La mayoría de los MB-UIDEs incluyen modelos de tareas, dominio y presentación. Las herramientas de primera generación no incluían demasiados modelos. Todos los MB-UIDEs usan o bien el modelo de diálogo o el de presentación o ambos. Los modelos de usuario, implementación y contexto son referenciados en la literatura, pero nunca realmente aplicados para la implementación de la interfaz.
37
Alguna conclusiones (notaciones)
Algunos MB-UIDEs utilizan la misma notación para describir todos los modelos (MIMIC), mientras que otros utilizan notaciones diferentes para modelos diferentes Algunos MB-UIDEs crean su propia notación y otros usan notaciones existentes o extensiones de ellas (CORBA IDL, CTT, UML, UAN, HIT, ACG, y redes de Petri) La mayoría de las herramientas de segunda generación tienden a usar mas de una notación
38
¿Y en el mundo real? Existen productos comerciales que utilizan la tecnología MB-UIDE Sin embargo, hay aspectos de la tecnología MB-UIDE que deben ser estudiados para aumentar el grado de aceptación de esos entornos: Utilizar notaciones estándar de los modelos de IU Resolver el mapeo entre modelos Resolver el problema de la post edición de los modelos de IU
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.