• No se han encontrado resultados

Distributable user interfaces

N/A
N/A
Protected

Academic year: 2020

Share "Distributable user interfaces"

Copied!
229
0
0

Texto completo

(1)UNIVERSIDAD DE CASTILLA-LA MANCHA Departamento de Sistemas Informáticos. Distributable User Interfaces. Tesis Doctoral D. Pedro González Villanueva. Directores. Dr. José Antonio Gallud Lázaro Dr. Ricardo Tesoriero Mayo, 2014.

(2)

(3) DISTRIBUTABLE USER INTERFACES. Abstract Computer systems have evolved considerably in a short period of time, and, so, we can talk nowadays about Personal Devices instead of Personal Device. This is due to the wide variety of devices that we use today, because technology has advanced to meet the needs of people, such as being in touch, being connected at any time, having a device adapted to every circumstance and performing any task from any of our devices. With such a wide range of devices at our disposal, there is the possibility that the user interface can be divided, composed, moved, copied or cloned among different devices running the same or different operating systems. These new ways of handling the user interface are known as Distributed User Interfaces (DUI). However, there is a wide variety of definitions relating to this concept and sometimes they turn to be contradictory. In addition, the authors refer to the same concept with different names, and there is neither a clear, detailed and formal definition of DUI, nor the terms which make up the DUI concept are clear-cut. Therefore, one of the main objectives of this thesis is to present a new formal definition of the DUI concept, and to propose a definition of a new concept coined as Distributable User Interface (DeUI). Another main goal of the thesis is the design and implementation of a system which is able to make tangible the new DeUIs concept. Finally, it proposes an extension of the quality model to support the features of DeUIs. To achieve these aims, at the beginning it is performed an analysis of previous works framed within the field of Distributed User Interfaces, Migratory User Interfaces and Coupled Displays. This analysis highlights the diversity of definitions, as well as the contradictions and ambiguities found in them. In parallel with the analysis of previous works, it is performed an experimental process to implement the concepts collected during the analysis. This process consists in the development of a set of prototypes which are classified by types of application (educational, tourist, or collaborative). In this experimental phase, it intends to analyze the primitive concept of DUI, gain experience, detect the most common problems when we work with this type of system and meet the challenges in the development of applications which are distributed in an ecosystem of interconnected devices. After the analysis of the previous works and the process of experimentation, it presents the redefinition of the DUI concept and introduces the new DeUI concept. To this end, it proposes a metamodel using MOF enriched with restrictions in OCL. The metamodel allows to represent any user interface. Thus, it allows to automatically classify it as well as to calculate the possible states that the user interface can reach. Once the new DeUI concept is presented and defined, a system called Proxywork to support Web-based DeUIs is proposed. This system is a proxy which transforms any Web Application into a Web Application with a distributable user interface, at the time in which it is requested through the browser. This system is the first that enables the interaction in a DeUIs environment. Finally, it proposes a valid extension of quality in the use of models for DeUI, because the quality model does not take into account DeUI characteristics in the definition of metrics. To validate this extension of quality in use, two case studies implemented through Proxywork are evaluated..

(4)

(5) Dedicatoria A mis padres Juan y Teresa, y a mi novia Irene, que me han ayudado constantemente a superar los momentos más difíciles de estos últimos años. Siempre han estado ahí de manera incondicional, confiando en mí, apoyándome y dándome lo que saben dar mejor que nadie: su cariño y confianza..

(6)

(7) Agradecimientos. Me gustaría dar las gracias a toda mi familia y a mi novia, por su apoyo, comprensión y cariño. También me gustaría dar las gracias a mis directores de tesis José Antonio Gallud y Ricardo Tesoriero, por confiar en mí y ser lo que son, grandes personas y profesionales. A todos mis compañeros del grupo ISE, por compartir conmigo estos años de tesis, especialmente a Elena de la Guía, Félix Albertos y Juan Enrique Garrido. Finalmente, agradecer el apoyo de todos mis amigos, especialmente a Luis Garcia por las aficiones compartidas, que me han ayudado a desconectar en los momentos más complicados..

(8)

(9) Índice General. Dedicatoria ................................................................................................ v Agradecimientos ....................................................................................... vii Índice General ........................................................................................... ix Índice de Figuras....................................................................................... xv Índice de Tablas ....................................................................................... xix. Capítulo 1 Introduction .............................................................................. 1 1.1. Motivation ....................................................................................... 3. 1.2. Challenges ...................................................................................... 3. 1.3. Solution .......................................................................................... 4. 1.4. Goals .............................................................................................. 4. 1.5. Structure of the document ................................................................. 5. Capítulo 2 Estado del Arte de las DUI ......................................................... 7 2.1. Introducción .................................................................................... 9. 2.2. Ecosistemas de múltiples pantallas acopladas .....................................10. 2.2.1. Primitivas de la interacción entre pantallas acopladas....................11. 2.2.2. Factores de los ecosistemas de múltiples pantallas acopladas.........11. 2.2.2.1. Angulo de visualización y ubicación del usuario .........................12. 2.2.2.2. Tamaño de la pantalla ...........................................................12. 2.2.2.3. El número de pantallas ..........................................................14 -ix-.

(10) Distributable User Interfaces. 2.2.2.4 2.2.3 2.3. Interacción social ..................................................................14. Pantallas personales y privadas y pantallas públicas y compartidas .............................................................................15. Interfaces de Usuario Migratorias y Migrables .....................................16. 2.3.1. Una taxonomía para Interfaces de Usuario Migratorias ..................16. 2.3.1.1. Tipo de activación .................................................................17. 2.3.1.2. Tipo de migración ..................................................................18. 2.3.1.3. Número/combinaciones de modalidades de migración ................18. 2.3.1.4. Tipo de interfaz activada ........................................................18. 2.3.1.5. Granularidad de la adaptación .................................................19. 2.3.1.6. Cómo es adaptada la interfaz de usuario ..................................19. 2.3.2. Migración de aplicaciones basadas en Web ...................................20. 2.3.3. Migración de aplicaciones no basadas en Web ..............................21. 2.3.4. Aproximaciones basadas en modelos ..........................................21. 2.3.4.1 CAMELEON-RT: un Modelo de Referencia de Arquitectura Software para Interfaces de Usuario Distribuidas, Migratorias, y Plásticas ...............22 2.3.4.2 TERESA: un entorno basado en transformaciones para diseñar y desarrollar interfaces multi-dispositivo ..................................................23 2.3.4.3 MARIA: un lenguaje universal, declarativo y de nivel de abstracción múltiple para aplicaciones orientadas a servicios en entornos ubicuos .......23 2.4. Interfaces de Usuario Distribuidas .....................................................24. 2.4.1. Diversidad de definiciones .........................................................24. 2.4.2. Propiedades esenciales de las DUI ..............................................27. 2.4.3. Posibles situaciones en un entorno DUI .......................................28. 2.4.4. Primitivas de distribución para DUI .............................................28. 2.4.5. Toolkit para DUI punto-a-punto ..................................................29. 2.4.6. Modelos de referencia para DUI ..................................................30. 2.4.7. Elementos de una DUI...............................................................32. 2.4.8. Tipos de distribución de una DUI ................................................32. 2.4.9. Estrategias de distribución de una DUI ........................................33. 2.5. Análisis y conclusiones sobre el concepto de DUI .................................33. Capítulo 3 Desarrollo de Ecosistema de Dispositivos, Frameworks y Prototipos de DUI ..................................................................................... 39 3.1. -x-. Ecosistema de dispositivos desarrollados ............................................41. Pedro González Villanueva.

(11) Índice General. 3.1.1. Paneles basados en RFID ...........................................................41. 3.1.2. Mesa multi-táctil .......................................................................44. 3.2. Implementación de frameworks ........................................................46. 3.2.1. 3.2.1.1. Análisis de conceptos .............................................................47. 3.2.1.2. Correspondencia de conceptos ................................................47. 3.2.1.3. Arquitectura del sistema ........................................................48. 3.2.1.4. Framework ...........................................................................49. 3.2.1.5. Conclusiones ........................................................................52. 3.2.2. 3.3. Plataforma WallShare ................................................................52. 3.2.2.1. Motivación ............................................................................52. 3.2.2.2. Descripción de la plataforma ...................................................53. 3.2.2.3. Conclusiones ........................................................................56. Prototipos desarrollados ...................................................................56. 3.3.1. Entornos educativos ..................................................................57. 3.3.1.1. MPrinceTool ..........................................................................57. 3.3.1.2. Collaborative Map Explorer .....................................................60. 3.3.2. Entornos turísticos ....................................................................62. 3.3.2.1. Sala VIP para restaurantes. WallShare y mesa interactiva ..........62. 3.3.2.2. Turismo en Córdoba ..............................................................68. 3.3.3. 3.4. Framework de paneles interactivos basados en RFID.....................46. Entornos colaborativos ..............................................................72. 3.3.3.1. AirClipboard y técnica CopyFlyPaste.........................................72. 3.3.3.2. Sistema para trabajo cooperativo en entorno distribuido ............79. Conclusiones ..................................................................................81. Capítulo 4 Nueva Definición del Concepto de Distribución de la Interfaz de Usuario ................................................................................................ 83 4.1. Introducción ...................................................................................85. 4.2. Metamodelo de distribución de las Interfaces de Usuario ......................86. 4.2.1. Definición de conceptos .............................................................86. 4.2.2. Invariantes del metamodelo .......................................................88. 4.3. Clasificación de la distribución de las Interfaces de Usuario ..................90. 4.3.1. Clasificación .............................................................................90. 4.3.2. Posibles estados alcanzables ......................................................90. Universidad de Castilla-La Mancha. -xi-.

(12) Distributable User Interfaces. 4.4. Editor de modelos de distribución de Interfaces de Usuario ...................91. 4.4.1. El entorno del editor .................................................................92. 4.4.2. La paleta de herramientas .........................................................93. 4.4.3. El validador y clasificador ..........................................................93. 4.5. Casos de estudio. Clasificación de la distribución de UIs .......................95. 4.5.1. Modelado, clasificación y caracterización......................................95. 4.5.2. Resumen de resultados ........................................................... 100. 4.6. Análisis de los trabajos previos tras la nueva definición ...................... 101. 4.6.1. Aclaraciones previas respecto a los conceptos propuestos ............ 101. 4.6.2. Análisis de definiciones ............................................................ 102. 4.6.3. Migración como una primitiva de la distribución .......................... 103. 4.6.4. Catálogo de primitivas de distribución ....................................... 103. 4.6.5. La cuestión de la pantalla ........................................................ 104. 4.6.6. La cuestión de la tarea/objetivo ................................................ 105. 4.6.7. La cuestión de la Web ............................................................. 105. 4.7. Conclusiones ................................................................................ 106. Capítulo 5 Propuesta del Sistema Proxywork para el Soporte de DeUIs 109 5.1. Introducción ................................................................................. 111. 5.2. Funcionamiento del sistema Proxywork ............................................ 111. 5.2.1. Transformación de Aplicación Web en Aplicación Web DeUI ......... 112. 5.2.2. Módulos que componen Proxywork ........................................... 113. 5.2.3. Proceso de funcionamiento de Proxywork .................................. 116. 5.3. Granularidad de la distribución ........................................................ 119. 5.4. Operaciones de distribución implementadas ...................................... 120. 5.4.1. Conectar ............................................................................... 120. 5.4.2. Desconectar ........................................................................... 120. 5.4.3. Renombrar ............................................................................ 120. 5.4.4. Clonar ................................................................................... 121. 5.4.5. Copiar ................................................................................... 121. 5.4.6. Migrar ................................................................................... 122. 5.5. Los enlaces de navegación en la distribución..................................... 122. 5.6. Continuidad de los datos durante la distribución ................................ 123. -xii-. Pedro González Villanueva.

(13) Índice General. 5.7. Limitaciones del sistema ................................................................ 123. 5.8. Caso de estudio 1: Distribución masiva ............................................ 124. 5.8.1. Descripción detallada del escenario ........................................... 125. 5.8.2. Modelado de la distribución ...................................................... 126. 5.9. Caso de estudio 2: Continuidad de la tarea ....................................... 127. 5.9.1. Descripción detallada .............................................................. 127. 5.9.2. Modelado de la distribución ...................................................... 129. 5.10. Conclusiones ................................................................................ 130. Capítulo 6 Calidad en Uso para DeUI ...................................................... 133 6.1. Modelos de calidad en uso actuales ................................................. 135. 6.1.1. Definiciones ........................................................................... 135. 6.1.2. Normas de calidad ISO/IEC 9126 .............................................. 136. 6.1.3. Las divisiones de SQuaRE ........................................................ 149. 6.2. Extensión de los modelos de calidad para la distribución de UIs .......... 158. 6.2.1. Propiedades de la distribución de las UIs ................................... 158. 6.2.2. Definición de las métricas para la distribución de UIs .................. 160. 6.2.3. Relación de las métricas propuestas con las sub-características de la calidad en uso ................................................................ 170. 6.3. Evaluación de los casos de estudio basados en Proxywork .................. 172. 6.3.1. Experimento 1: Proxywork en el aula ........................................ 173. 6.3.2. Experimento 2: Tareas con primitivas de distribución .................. 178. 6.4. Conclusiones ................................................................................ 182. Capítulo 7 Conclusions, Contributions and Future Works ........................ 185 7.1. Conclusions .................................................................................. 187. 7.2. Contributions ................................................................................ 188. 7.2.1. Publications ........................................................................... 189. 7.2.2. Research Projects ................................................................... 196. 7.3. Future Works ................................................................................ 197. Bibliografía ............................................................................................. 199. Universidad de Castilla-La Mancha. -xiii-.

(14)

(15) Índice de Figuras Figura 2-1 Árbol de conceptos dentro del marco de las interfaces de usuario distribuidas. .............................................................................................................. 9 Figura 2-2 Tamagotchi conectados por infrarrojos ......................................................... 12 Figura 2-3 Proyecto ConnecTable ................................................................................ 12 Figura 2-4 Proyecto Dynamo ...................................................................................... 13 Figura 2-5 Proyecto i-Land ......................................................................................... 13 Figura 2-6 Proyecto Blinkenlights ................................................................................ 14 Figura 2-7 Modelo de referencia de arquitectura del CAMELEON-RT. ................................ 22 Figura 2-8 Tiempo de distribución según el modelo de referencia 4C. .............................. 31 Figura 2-9 Estructura entorno de interfaces distribuidas ................................................. 32 Figura 3-1 Funcionamiento de un sistema RFID. ........................................................... 42 Figura 3-2 Ejemplo de panel interactivo basado en RFID. ............................................... 43 Figura 3-3 Tecnologías FTIR y DI. ............................................................................... 44 Figura 3-4 Arquitectura hardware de la mesa multi-táctil. .............................................. 45 Figura 3-5 Mesa multi-táctil desarrollada. .................................................................... 46 Figura 3-6 Diagrama de paquetes de la aplicación cliente-servidor del framework. ............ 48 Figura 3-7 Modelo conceptual de la aplicación cliente. ................................................... 48 Figura 3-8 Modelo conceptual de la infraestructura del servidor. ..................................... 49 Figura 3-9 Diagrama de clases del framwork y la extensión para la aplicación del Museum Guide. ...................................................................................... 50 Figura 3-10 Diagrama de secuencia del funcionamiento del método process. .................... 51 Figura 3-11 Esquema XML de configuración del framework............................................. 52 Figura 3-12 Zona compartida de WallShare .................................................................. 54 Figura 3-13 Cliente móvil de WallShare. (a) Pantalla de conexión y (b) zona de trabajo para el control del puntero. ...................................................................... 54 Figura 3-14 (a) Mensaje de chat y (b) nota en forma de Post-it ...................................... 55 Figura 3-15 Vista general de MPrinceTool ..................................................................... 58. -xv-.

(16) Distributable User Interfaces. Figura 3-16 Interfaz de MPTStudent: (a) Pantalla principal para contestar a las cuestiones y (b) pantalla de chat. ............................................................. 59 Figura 3-17 Interfaz de MPTTeacher. ........................................................................... 60 Figura 3-18 Interfaces de Collaborative Map Explorer. ................................................... 61 Figura 3-19 Diagrama de secuencia: conexión y control sobre WallShare. ........................ 64 Figura 3-20 Diagrama de secuencia: proceso para realizar un pedido sobre la mesa. ......... 65 Figura 3-21 Diagrama de secuencia: compartir alquileres sobre WallShare. ...................... 65 Figura 3-22 Zona compartida del restaurante con WallShare. ......................................... 66 Figura 3-23 Interfaz del menú multi-táctil del restaurante. ............................................. 67 Figura 3-24 Pantalla para confirmar pedido. ................................................................. 67 Figura 3-25 Interfaz móvil del camarero de los camareros del restaurante. ...................... 68 Figura 3-26 Panel interactivo basado en RFID de turismo en Córdoba. ............................. 69 Figura 3-27 Interfaz móvil de turismo en Córdoba. (a) Pantalla de ayuda al visitante. (b) Visualización de una imagen de una de las zonas marcadas en el mapa. ............................................................................................................ 70 Figura 3-28 Diagrama de clases del framework con las extensiones para el prototipo de turismo en Córdoba. ............................................................................... 71 Figura 3-29 Fichero de configuración del prototipo de turismo en Córdoba. ...................... 71 Figura 3-30 (a) Funcionamiento del Clipboard del PC y (b) funcionamiento de CopyFlyPaste ......................................................................................... 75 Figura 3-31 (a) Pantalla de inicio, permite crear un nuevo grupo de trabajo o unirse a uno ya creado. (b) Configuración, permite cambiar el nombre de usuario y la IP del servidor. ................................................................................. 77 Figura 3-32 (a) AirClipboard en modo CopyPaste. (b) AirClipboard en modo CopyFlyPaste. ........................................................................................ 77 Figura 3-33 Menú contextual de AirClipboard. Permite cambiar el modo........................... 78 Figura 3-34 Notificaciones con la actividad de AirClipboard. Usuario David, ha copiado texto. .................................................................................................... 78 Figura 3-35 Interfaz de µWallShare con la parte local y la parte compartida. .................... 80 Figura 3-36 Arquitectura del sistema. Servidor intermediario e instancias µWallShare. ...... 81 Figura 4-1 Metamodelo conceptual de distribución para interfaces de usuario ................... 86 Figura 4-2 Editor de modelos de distribución desarrollado como plugin para Eclipse. ......... 92 Figura 4-3 Elementos gráficos del editor de modelos. (a) InteractionSurface, (b) InteractionContairner, (c) InteractionComponent, (d) Platform, (e) Hosting, (f)Implementation, (g) Dependency. ............................................ 93 Figura 4-4 Informe de errores de validación del modelo. ................................................ 93 Figura 4-5 Tipos de errores en el proceso de validación de los modelos. .......................... 94 Figura 4-6 Clasificación y caracterización de la UISystem mediante consola de OCL. ......... 95 Figura 4-7 Caso de estudio Paint.NET. (a) Interfaz de usuario, (b) modelo de distribución simplificado ........................................................................................... 96. -xvi-. Pedro González Villanueva.

(17) Índice de Figuras. Figura 4-8 Caso de estudio GIMP. (a) Interfaz de usuario, (b) modelo de distribución simplificado ........................................................................................... 97 Figura 4-9 Caso de estudio WallShare. (a) Interfaz de usuario, (b) modelo de distribución simplificado .......................................................................... 97 Figura 4-10 Caso de estudio Excel. (a) Interfaz de usuario, (b) modelo de distribución simplificado ........................................................................................... 98 Figura 4-11 Caso de estudio Turismo en Córdoba. (a) Interfaz de usuario, (b) modelo de distribución simplificado. ..................................................................... 99 Figura 4-12 Caso de estudio Quiz. (a) Interfaz de usuario, (b) modelo de distribución simplificado ..........................................................................................100 Figura 5-1 Formulario Web para registrar el dispositivo en Proxywork ............................112 Figura 5-2 Proceso básico del funcionamiento de Proxywork ..........................................113 Figura 5-3 Módulos de la arquitectura software de Proxywork ........................................114 Figura 5-4 Flujo principal de trabajo del servidor de Proxywork. .....................................117 Figura 5-5 Flujo de trabajo del manejador de peticiones Ajax. .......................................118 Figura 5-6 Flujo de trabajo del proceso de tratar primitiva de distribución. ......................119 Figura 5-7 Lista de dispositivos de ejemplo conectados a Proxywork. .............................120 Figura 5-8 Formulario para renombrar un dispositivo conectado a Proxywork. .................121 Figura 5-9 Menú de distribución contextual. (a) primitiva clonar, (b) primitiva copiar, (c) primitiva migrar. ..............................................................................121 Figura 5-10 Ejemplo de elemento DIV distribuible con enlaces de navegación. .................123 Figura 5-11 Ejemplo de continuidad de los datos en la página de la Real Academia Española. .............................................................................................124 Figura 5-12 Interfaz de Youtube DeUI. .......................................................................125 Figura 5-13 Distribución de un video de Youtube a través de un conjunto de ordenadores. ........................................................................................126 Figura 5-14 Modelo de distribución de la página de Youtube para el caso de estudio 1. .....127 Figura 5-15 Distribución de un formulario Web desde un PC a un teléfono móvil en el que se mantienen los datos introducidos en el origen. ................................128 Figura 5-16 Descomposición de un formulario Web desde un PC a dos teléfonos móviles y composición del formulario en el PC origen.............................................129 Figura 5-17 Modelo de distribución de un formulario de consulta para el caso de estudio 2. ........................................................................................................130 Figura 6-1 Calidad en el ciclo de vida..........................................................................137 Figura 6-2 Modelo de calidad interno/externo según la ISO/IEC 9126-1 ..........................138 Figura 6-3 Modelo de calidad en uso según la ISO/IEC 9126-1 ......................................141 Figura 6-4 Ciclo de vida de la calidad del producto software – SquaRE. ...........................150 Figura 6-5 Modelo de referencia general de SQuaRE .....................................................151 Figura 6-6 Estructura del modelo de calidad – SquaRE .................................................152 Figura 6-7 Modelo de calidad del producto software según la norma 25010. ....................152. Universidad de Castilla-La Mancha. -xvii-.

(18) Distributable User Interfaces. Figura 6-8 Modelo de calidad para la calidad en uso según la norma 25010. ....................155 Figura 6-9 Propiedades extraídas de la distribución de las UIs. ......................................158 Figura 6-10 Métricas relacionadas con la propiedad de portabilidad. ...............................160 Figura 6-11 Métricas relacionadas con la propiedad de descomposición. ..........................161 Figura 6-12 Métricas relacionadas con la propiedad de simultaneidad. ............................162 Figura 6-13 Métricas relacionadas con la propiedad de continuidad. ...............................162 Figura 6-14 Métricas relacionadas con la propiedad de ecosistema de pantallas. ..............163 Figura 6-15 Métricas relacionadas con la propiedad de técnica de interacción. .................163 Figura 6-16 Métrica relacionada con la propiedad de naturaleza de la interacción social. ...........................................................................................................164 Figura 6-17 Métrica relacionada con la propiedad de ecosistema de plataformas. .............164 Figura 6-18 Mapeo entre las nuevas métricas de DUI y las sub-características del modelo de calidad en uso .......................................................................171 Figura 6-19 Escenario común del experimento 1. Las TIC en la educación infantil. ...........173 Figura 6-20 Disposición de los ordenadores para el experimento 1. ................................175 Figura 6-21 Tiempo medio de la tarea para ambas condiciones de la variable independiente en función del número de ordenadores. ...............................177 Figura 6-22 Disposición de los ordenadores para el experimento 2. ................................179. -xviii-. Pedro González Villanueva.

(19) Índice de Tablas Tabla 3-1 Correspondencia entre conceptos de aplicaciones Web basadas en paneles RFID. .................................................................................................... 47 Tabla 3-2 Número de acciones para transferir recursos entre dispositivos con las técnicas actuales. ................................................................................... 73 Tabla 4-1 Clasificación y caracterización de los casos de estudio ....................................101 Tabla 6-1 Sub-características del modelo de calidad interno/externo ISO/IEC 9126-1 .......139 Tabla 6-2 Métricas de efectividad de la ISO/IEC 9126-4 ................................................143 Tabla 6-3 Métricas de productividad de la ISO/IEC 9126-4 ............................................144 Tabla 6-4 Métricas de seguridad de la ISO/IEC 9126-4 .................................................146 Tabla 6-5 Métricas de satisfacción de la ISO/IEC 9126-4 ...............................................148 Tabla 6-6 Especificación de las métricas de portabilidad. ...............................................165 Tabla 6-7 Especificación de las métricas de descomposición ..........................................166 Tabla 6-8 Especificación de las métricas de simultaneidad. ............................................167 Tabla 6-9 Especificación de las métricas de continuidad. ...............................................167 Tabla 6-10 Especificación de las métricas de ecosistema de pantallas. ............................168 Tabla 6-11 Especificación de las métricas de técnica de interacción, naturaleza de la interacción y ecosistema de plataformas...................................................169 Tabla 6-12 Estadística descriptiva del experimento 1. ...................................................176 Tabla 6-13 Métricas de DeUI aplicadas al experimento 1 utilizando Proxywork. ................177 Tabla 6-14 Estadística descriptiva del experimento 2. ...................................................180 Tabla 6-15 Métricas de DeUI aplicadas al experimento 2 utilizando Proxywork. ................182. -xix-.

(20)

(21) Capítulo 1. Introduction Information systems have evolved from personal computers into a wide range of personal devices in a relatively short period of time. Indeed, technology is fulfilling people needs for communication and sensorisation by adapting devices which perform different tasks in different situations. To take advantage of the popularity and new features of these personal devices, the new applications require the definition of new user interface capabilities. Some of these capabilities include the user interface division, decomposition, moving, copying and cloning among different devices running the same or different operating systems. Many research works have studied and proposed different approaches to the concept of Distributed User Interfaces and Migratory User Interfaces. However, there is controversy and ambiguity in the definition of these concepts. The main goal of this thesis is the definition of a whole new reference model to deal with the distribution of user interfaces as well as the proposal of a classification to characterize them according to their division and distribution capabilities. This chapter briefly introduces the motivation, goals and structure of this document..

(22)

(23) Capítulo 1: Introduction. 1.1. Motivation. As it has been mentioned, people and devices have evolved. Nowadays we are used to manipulate different personal devices such as smartphones, tablets, laptops, desktop computers, smart TVs, game consoles and so on. And they are usually connected to the Internet. At the beginning, technology was employed to solve problems by using personal and unconnected computers. Thus, word processors and spreadsheets, to name a few, emerged to solve problems for individuals. Later on, the focus moved to groupware applications that involved a group of individuals performing collaborative tasks using a computing network. Finally, individuals employ different devices to carry out different activities at the same time in different situations. The concept of device ecosystem emerges in this scenario, drastically affecting the user interface design. This way, the increment in the number of devices being employed by individuals has fostered the need for device connection and coupling to improve the user experience. Users are continuously switching from one device to another when performing tasks, even if s/he had to interrupt the task to continue it in a different device. For instance, a user is filling a form from his/her desktop computer, then s/he has to move to another location (i.e. s/he has to catch the train) and finally s/he wishes to continue filling the form from his/her smartphone. Applications tend to exploit the capabilities of heterogeneous ecosystems of devices which include different screen sizes, mobility and sensor capabilities. For instance, a user watching a photo on his/her smartphone may use a smart TV to see the photo on a bigger screen. Some authors have coined the concept of Distributed User Interfaces or Migratory User interfaces to define applications that exploit the capabilities of these ecosystems. Consequently, the user interface can be divided, decomposed, moved, copied and cloned across different devices. There are many proposals that define and implement these capabilities.. 1.2 Challenges Once the motivation for focusing on the user interface distribution research field has been settled, a description of the following set of problems we have detected is made. We have mentioned before the importance of the Distributed User Interface and Migratory User Interfaces concepts in the device ecosystems to exploit their characteristics. Nevertheless, there is a divergence in the definition of these concepts that lead to inconsistencies and ambiguities. Moreover, the terminology is not mature enough because you can refer to the same concept using different terms, which may lead to contradictions depending on the author that defines the term. Another important issue to highlight in the research literature is the lack of distinction between fixed user interface distribution and those user interfaces that can be distributed during the execution of the application (at runtime) from one define to another one. Therefore, users cannot distinguish between user interfaces that were distributed at design-time and cannot be redistributed, and those that are able to be re-distributed at runtime.. Universidad de Castilla-La Mancha. -3-.

(24) Distributable User Interfaces. Another question to answer is the multiple-display support running on the same device. Should we consider that the use of multiple displays implies that the user interface is distributed? The answer is yes for some authors because they consider that different displays define different visualization surfaces. On the other hand, there are other authors who claim that two different devices are required to distribute the user interface. Besides, if this user interface can be divided or decomposed, can we claim that it is a distributed user interface? As there are many factors and features to be taken into account when defining distributed user interface, there is no consensus on the definition of distributed user interface. Therefore, there is neither formal definition nor classification tool to determine if a user interface can be considered a distributed user interface or not. Another important aspect to discuss is the community tendency to talk about distributed user interfaces as a type of user interface instead of a state of a user interface. A user interface can change its state from distributed to not distributed at any time. To sum up, there is no reference model to define the distribution of user interfaces to classify them uniquely according to their features in order to identify all distribution states user interfaces can reach. 1.3 Solution Once the changes to be tackled have been defined, a solution to these problems is proposed. As can be foreseen, there is a wide range of divergent concepts, definitions and solutions related to the distribution of user interfaces. We propose to redefine these concepts and conceive a new framework to define, classify and characterize user interfaces according to their distribution features. To define user interfaces according to their distribution capabilities, we have defined a metamodel that gathers all the relevant distribution features to model the distribution capabilities of the user interface. This model allows analysts and developers to express all user interface distribution states during the execution of any application. To discern between the distributed state of a user interface and the capability of the user interface to be distributed during the application execution, we propose the definition of a new concept, Distributable User Interface. The classification of user interfaces is based on the division and distribution concepts. Thus, we have defined: divisible / non divisible and distributable / non distributable user interfaces. This classification defines a set of states that can be reached by the user interface during its execution.. 1.4 Goals The main goal of this thesis is:. -4-. Pedro González Villanueva.

(25) Capítulo 1: Introduction. The design of a new reference model that defines the concept of the distribution of user interfaces allowing analysts /developers to uniquely classify them based on their divisibility and distribution capabilities in order to identify all possible distribution states they are able to reach. To accomplish this goal, the following set of specific goals is defined: G-1. Perform an analysis of the state of the art regarding the concepts related to the distribution of user interfaces: Distributed User Interfaces, Migratory User Interfaces and Coupled Display Ecosystems. G-2. Build a set of prototypes and frameworks to experiment in real life the concepts analysed during the state of the art. G-3. Define a metamodel to define the user interface distribution to model and classify any user interface. G-4. Define a model editor to manipulate and validate user interface models conforming the metamodel defined in G-3. G-5. Develop a system capable of distributing user interfaces to test the metamodel proposed in G-3. G-6. Perform an analysis of the state of the art regarding the quality models from the user interface distribution perspective and propose an extension to the metric of the model to support the evaluation of the distribution of user interfaces. G-7. Evaluate the quality in use on a study case using the system defined in G-5.. 1.5 Structure of the document To achieve the goals exposed in Section 1.4, this document is structured in the following 7 chapters: Chapter 1: This chapter describes the introduction and the motivation for this work. It also presents a review of the problems to deal with and a proposal to solve them. Finally, it defines the main goal, specific goals and the structure of the document. Chapter 2: It analyses the work related to the distributed and migratory user interface jointly with the couple displays research fields. As a result, it presents the wide diversity of definitions, and the contradictions and ambiguities among them. Chapter 3: This chapter presents the experimental phase of this work in order to consolidate the understanding of the concepts analysed in Chapter 2. It involves the development of an ecosystem of prototypes and frameworks classified by domains (education, tourism and collaboration). As result of this work, it presents a set of common problems that arise when dealing with distributed user interfaces supported by an ecosystem of interconnected devices. Chapter 4: Presents the redefinition of the user interface distribution concept by introducing the distributable user interface concept (DeUI). To define the user interface distribution we present a metamodel defined in MOF enriched with OCL restrictions. The metamodel defines the abstract syntax for a concrete syntax supported by a model editor defined as an Eclipse plugin. This editor allows analysts and developers to manipulate, validate and classify user interface models as well as calculate all the user interface distribution states.. Universidad de Castilla-La Mancha. -5-.

(26) Distributable User Interfaces. Chapter 5: It presents the Proxywork system. The main goal of Proxywork is supporting Web based DeUIs. The system is defined as a Web proxy that allows the distribution of Web components across different devices. It is the first system that allows users to interact with DeUI environment using traditional Web applications that were not previously designed be run in this type of environment. Chapter 6: This chapter proposes an extension to the quality models to support the evaluation of DeUIs. To validate the extension, a quality in use evaluation is performed on study cases built on Proxywork. Chapter 7: This chapter gathers the conclusions of this work, contributions and future work.. -6-. Pedro González Villanueva.

(27) Capítulo 2. Estado del Arte de las DUI Este capítulo está orientado a alcanzar el objetivo específico G-1 de los enumerados en la sección 1.4 de este trabajo. “Perform an analysis of the state of the art regarding the concepts related to the distribution of user interfaces: Distributed User Interfaces, Migratory User Interfaces and Coupled Display Ecosystems”. Para alcanzar este objetivo, se ha realizado un análisis de los trabajos existentes en todas las subáreas de HCI (del inglés, Human-Computer Interaction) que permiten a las interfaces ser distribuidas a través de múltiples dispositivos, múltiples usuarios, y múltiples plataformas; en el mismo espacio o en espacios geográficos diferentes; y al mismo tiempo o en momentos diferentes del tiempo. Este capítulo está estructurado del siguiente modo, inicialmente se realiza una introducción destacando los conceptos que se analizan a lo largo del capítulo. Seguidamente, se analizan los trabajos que tratan las pantallas acopladas y las definiciones que los autores dan sobre ellas. Posteriormente, se presentan una serie de trabajos previos que proponen una definición del término Interfaz de Usuario Migratoria y las soluciones que proponen sus autores a estos sistemas. Más adelante, se analiza el concepto de Interfaz de Usuario Distribuida y la gran variedad de definiciones que ofrecen los autores más destacados en este campo, así como los fundamentos (propiedades, primitivas, elementos, estrategias, etc.) de las DUIs. Finalmente, se recoge una discusión a modo de conclusiones que analiza la variedad de definiciones de los diferentes conceptos estudiados y la confusión ontológica que generan. Además de resaltar la necesidad que existe de clarificar adecuadamente el concepto de Interfaz de Usuario Distribuida y de proponer un marco de referencia de términos que ayude a definirlo de manera formal..

(28)

(29) Capítulo 2: Estado del Arte de las DUI. 2.1 Introducción Los recientes avances en las tecnologías de las pantallas y los dispositivos móviles están teniendo un importante efecto en la forma en la que los usuarios interactúan con todo tipo de dispositivos (ordenadores, dispositivos móviles, laptops, tablets, y muchos más). Estos avances abren nuevas posibilidades para la interacción, incluyendo la distribución de la interfaz de usuario a través de diferentes dispositivos. Esto implica que la interfaz de usuario puede ser dividida o compuesta, movida, copiada o clonada sobre diferentes dispositivos ejecutándose en el mismo o en diferentes sistemas operativos. Estas nuevas formas de manipular la interfaz de usuario se consideran bajo el emergente tópico de las Interfaces de Usuario Distribuidas (DUI) [1]. En este capítulo, se analiza el estado del arte del tópico de las DUI y de algunos conceptos estrechamente relacionados como las pantallas acopladas y las interfaces de usuario migratorias. Para facilitar la comprensión, los conceptos que se tratan en este capítulo se han relacionado en forma de árbol, que es ilustrado en la Figura 2-1. Cada concepto tiene como hijos aquellos conceptos con los que tiene directamente relación desde el punto de vista de la línea de esta tesis. Los conceptos marcados en azul representan conceptos que se tratan en este capítulo y los conceptos marcados en gris, son conceptos relacionados pero que escapan de los objetivos de este trabajo. Todos los conceptos parten del concepto de MDE (del inglés, Multiple-Device Environmen), dado que las DUIs pierden sentido sin un entorno compuesto de múltiples dispositivos.. Figura 2-1 Árbol de conceptos dentro del marco de las interfaces de usuario distribuidas.. Se ha considerado que los campos directamente relacionados con MDE son los dispositivos (que constituyen la parte hardware y computacional de un MDE), las interfaces de usuario (que constituyen la parte software con la que interactúa el usuario), la usabilidad (que mide la calidad del MDE desde el punto de vista del usuario) y finalmente la red (que interconecta los dispositivos del MDE). Aunque los conceptos de usabilidad y red están relacionados con DUI no son considerados relevantes para este trabajo. Universidad de Castilla-La Mancha. -9-.

(30) Distributable User Interfaces. Dentro del campo de los dispositivos se han considerado relevantes las pantallas acopladas por tener una relación directa los trabajos de Terrenghi, Quigley y Dix con las DUIs, como se explica más adelante en la sección 2.2. Respecto a las interfaces de usuario, de las que se pueden destacar las UIs migratorias, UIs distribuidas, UIs plásticas y las UIs tangibles, son relevantes las UIs migratorias por su estrecha relación con DUI como se describe en la sección 2.3 y las UIs distribuidas en sí mismo que se analizan en la sección 2.4. Por lo tanto, para analizar el estado del arte de las DUI, se han estudiado los conceptos de pantallas acopladas, interfaces de usuario migratorias e interfaces de usuario distribuidas. Al igual que se afirma en el trabajo [2], en este capítulo se muestra que existe una gran confusión ontológica entre los diversos términos utilizados para hacer referencia a los diferentes casos de DUI: distribución, UIs distribuidas, migración, UIs migratorias, UIs migrables, agrupación / desagrupación, portable, adaptable, mutable, transformable, reconfigurable. Al final del capítulo y a modo de conclusión, se presenta una discusión de las diferentes definiciones que ofrecen los autores de trabajos previos sobre estos conceptos, y se destaca la carencia de una definición clara, detallada y formal de DUI, así como la necesidad de un metamodelo que recoja los conceptos que formalicen la definición de DUI. Esta discusión es la motivadora del marco de referencia propuesto en el Capítulo 4.. 2.2 Ecosistemas de múltiples pantallas acopladas A día de hoy, son numerosas las salas (salón del hogar, sala de reuniones, lugar de trabajo, etc.) que disponen de una gran variedad de dispositivos de todo tipo, con una gran variedad de funcionalidades. Estas salas se consideran entornos de múltiples pantallas y la interacción con estas pantallas puede ser de dos tipos, como presentan Jenabi y Reiterer en su trabajo [3], interacción dentro de la pantalla o interacción entre pantallas. La interacción dentro de la pantalla incluye los métodos bien conocidos de los entornos de pantalla única. Un usuario debería ser capaz de mover y manipular objetos dentro de una pantalla. Por otro lado, la interacción entre pantallas incluye un conjunto específico de tareas de interacción que solo pueden ser realizadas en entornos o ecosistemas de múltiples pantallas acopladas. Para definir el término ecosistema de múltiples pantallas acopladas debemos definir, en primer lugar, qué entendemos por ecosistema. Según Terrenghi, Quigley y Dix en su trabajo [4], definen ecosistema como: “El ecosistema es el sistema completo de pantallas, personas y el espacio en el cual ellos están situados”. Además, en el mismo trabajo dichos autores definen el concepto de pantallas acopladas del siguiente modo: “Desde un punto de vista funcional, dos pantallas acopladas deben, como mínimo, compartir componentes de la interfaz de usuario de salida y/o de entrada durante una tarea simple de interacción. Además deben tener algún sistema de enlace entre sus estados de interacción.” Para comprender mejor el concepto, estos autores ponen dos ejemplos. En el primero de ellos muestran un claro ejemplo donde las pantallas no están acopladas y en el segundo un ejemplo en el que sí. El primer ejemplo es un aeropuerto en el que una persona podría utilizar tu teléfono móvil para consultar una página web para acceder al mismo itinerario de los aviones que se muestran en las -10-. Pedro González Villanueva.

(31) Capítulo 2: Estado del Arte de las DUI. pantallas. Son diferentes alternativas para compartir información al mismo tiempo de los vuelos, pero están diseñadas para ser utilizadas de manera separada. Este es un claro ejemplo de pantallas que no están acopladas. Otro ejemplo alternativo, sería en una estación de tren. Una persona coloca su móvil, que está mostrando un evento en particular de la agenda, sobre una máquina de venta de billetes, y automáticamente en la pantalla de la máquina de billetes aparece un mensaje que indica “comprar para este día”, refiriéndose a la fecha mostrada en el móvil. Después de comprar el billete, el móvil le muestra a la persona un mensaje indicando “guardar este viaje”, para guardar la información del viaje en la agenda. Estas pantallas son bastante discretas en términos de interacción pero se comportan como si fuese un sistema de interacción integrado por lo que se consideran pantallas acopladas.. 2.2.1. Primitivas de la interacción entre pantallas acopladas. En el trabajo [3], los autores Jenabi y Reiterer, proponen cuatro primitivas para la interacción entre pantallas acopladas. Estas primitivas son las siguientes:. 2.2.2. . Selección de objetos: Seleccionar uno o varios objetos de una o varias pantallas (por ejemplo, recopilar un conjunto de objetos de interés, desde diferentes pantallas, para arrastrarlos a una pantalla individual para poder manipularlos).. . Transferencia de objetos: Mover un objeto desde una pantalla a otra pantalla.. . Gestión de la vista: Visualización de un área seleccionada en otra pantalla como un nuevo espacio de trabajo (esto puede ser utilizado para tareas de distribución en un escenario de trabajo).. . Galería de visualización: Selección de objetos para generar una nueva visualización del conjunto de datos o sus metadatos en otra pantalla (por ejemplo, para visualizaciones geográficas o estadísticas sincronizadas).. Factores de los ecosistemas de múltiples pantallas acopladas. Se pueden identificar una serie de factores a tener en cuenta a la hora de trabajar en ecosistemas de pantallas acopladas con la que interactúan múltiples personas. Terrenghi, Quigley y Dix distinguen y describen en [4] tres factores principales que afectan a la interacción con este tipo de ecosistemas: . El tamaño del ecosistema definido por las pantallas acopladas.. . La naturaleza de la interacción social.. . La técnica de interacción que permite el acoplamiento de las pantallas y la transferencia de elementos de interfaz a través de las mismas.. Además, Inkpen y otros en su trabajo [5] identifican otros factores tales como: el ángulo visual, la ubicación del usuario, el tamaño de la pantalla, el número de pantallas. A continuación se describen en detalle todos estos factores.. Universidad de Castilla-La Mancha. -11-.

(32) Distributable User Interfaces. 2.2.2.1. Angulo de visualización y ubicación del usuario. El ángulo de visión tiene un alto impacto en la interacción de usuario. Una pantalla horizontal permite diferentes posibilidades a la hora de la ubicación de los usuarios, ofreciendo diferentes perspectivas; además provee una superficie plana sobre la que colocar objetos. En cambio una pantalla vertical da a todos los participantes la misma perspectiva de la tarea y ofrece una vista holística de los datos mostrados en ella, permitiendo a los usuarios estar ubicados a una distancia mayor de la pantalla [5].. 2.2.2.2. Tamaño de la pantalla. El tamaño de las pantallas es variable. Existen pantallas pequeñas, usualmente utilizadas en dispositivos móviles, y grandes pantallas como aquellas que se instalan en vitrinas y edificios. En [4] se establecen diferentes unidades de medida para comparar ecosistemas de pantallas acopladas. La escala del ecosistema depende del tamaño del dispositivo acoplado más grande. Así, se establecen cinco unidades de medida (pulgada, pies, yardas, perch y cadena), a continuación se muestra un ejemplo de cada una de ellas: . Ecosistema medido en pulgadas (1 pulgada = 2,54 cm). Un ejemplo de este tipo de ecosistemas son dos Tamagotchi conectados por infrarrojos [6]. En este ecosistema los usuarios pueden jugar, intercambiar regalos, etc., como se muestra en la Figura 2-2. Otro ejemplo es GeneyTM [7].En los ecosistemas medidos en pulgadas los usuarios no necesitan mover sus ojos para leer la información que pueden encontrar en las diversas pantallas.. Figura 2-2 Tamagotchi conectados por infrarrojos. . Ecosistema medido en pies (1 pie = 30,48 cm). En este tipo de ecosistemas la superficie visual requiere que los usuarios muevan sus ojos. Ejemplos de ecosistemas de esta medida son el ConnecTable (ver Figura 2-3) [8] o los Tablet PCs en las técnicas Bumping y Stitching de Hinckley [9] y [10]. Las pantallas se disponen en el mismo plano focal con el fin de crear una superficie interactiva extensa.. Figura 2-3 Proyecto ConnecTable. -12-. Pedro González Villanueva.

(33) Capítulo 2: Estado del Arte de las DUI. . Ecosistema medido en yardas (1 yarda = 91,44 cm). En este tipo de ecosistemas los usuarios necesitan mover su cabeza para ver las pantallas acopladas. Éste es el caso de algunas salas interactivas en las cuales las pantallas tienen diferentes orientaciones, obligando al usuario a cambiar el foco de la visión. Ejemplos de este tipo de ecosistemas son el sistema UbiTable [11] y el sistema Dynamo (ver Figura 2-4) [12], los cuales combinan dispositivos personales, como puede ser un laptop, con grandes pantallas verticales. Otro ejemplo es el trabajo Touch Projector [13] en que el usuario puede interactuar con los objetos a través del móvil y el reconocimiento de objetos.. Figura 2-4 Proyecto Dynamo. . Ecosistema medido en perch (1 perch = 5,03 m). Estos ecosistemas, por su configuración, obligan a los usuarios a mover sus cabezas de una pantalla a otra durante la interacción, e incluso, en ocasiones, también su cuerpo. Ejemplos de este tipo de ecosistemas son Stanford iRoom [14] y el proyecto i-Land (ver Figura 2-5) [15], donde varias pantallas de diferentes tamaños son acopladas y distribuidas en una sala; así el usuario puede moverse e interactuar sobre ellas de forma libre a lo largo de la sala.. Figura 2-5 Proyecto i-Land. . Ecosistema medido en cadenas (1 cadena = 20,12 m). En estos ecosistemas los usuarios necesitan mover su cuerpo para interactuar con ellos, y visualizar la pantalla. Un ejemplo de este tipo de ecosistemas es el proyecto Blinkenlights (ver Figura 2-6) [16]. Desde los teléfonos móviles, los usuarios pueden enviar imágenes animadas a la fachada de un edificio haciendo que las ventanas se iluminen representando dicha imagen. Algo parecido ocurre con el proyecto iRiS [17] donde a través del iPhone pintas una fachada multimedia de un edificio.. Universidad de Castilla-La Mancha. -13-.

(34) Distributable User Interfaces. Figura 2-6 Proyecto Blinkenlights. En relación al tamaño de la pantalla, también se puede destacar la resolución de la misma, definiendo resolución como el número total de pixeles de la pantalla. En [18] se realiza un estudio de la eficiencia de las pantallas con alta resolución para realizar tareas básicas de visualización y navegación obteniendo algunos resultados. Por un lado, las pantallas de alta resolución puede ser un beneficio, ya que mejoran notablemente el tiempo de realización de las tareas básicas de visualización de datos con alto detalle, y las pantallas de alta resolución ayudan a encontrar y comparar lo que se busca (hasta dos veces más rápido), y a sentirse más seguro de las actuaciones. Por otro lado, se ha demostrado que se realiza más navegación física sobre pantallas de alta resolución y más navegación virtual en pantallas de baja resolución. Considerando navegación física como movimientos físicos del cuerpo, movimiento de la cabeza, cambio de la posición del cuerpo, etc., que el usuario debe hacer para examinar diferentes partes de la pantalla, y considerando navegación virtual como la realización de cambios del foco de la pantalla con técnicas como el zoom y el arrastrar.. 2.2.2.3. El número de pantallas. El factor referente al número de pantallas afectará al esfuerzo necesario que se deberá realizar a la hora de acoplar las pantallas. Además con múltiples pantallas se puede hacer un reparto claro de las pantallas permitiendo a cada usuario tener un control sobre la pantalla asignada, mientras que con una simple pantalla compartida se consigue que los usuarios se reúnan alrededor de la pantalla para colaborar [5].. 2.2.2.4. Interacción social. En relación a la naturaleza de la interacción social, se puede afirmar que las pantallas acopladas son utilizadas en numerosas situaciones, algunas veces en reuniones cara a cara entre dos compañeros (tipo de interacción uno-uno). Otras veces, un grupo de personas colabora alrededor de una pantalla de mesa o una gran pantalla compartida. Se puede considerar un grupo de pocos (aproximadamente entre 3-9 personas), o grupo de muchos (más de 10 personas). De esta forma en [4] se distinguen cinco categorías de interacción:. -14-. Pedro González Villanueva.

(35) Capítulo 2: Estado del Arte de las DUI. . Uno-uno. Este es el caso más simple, donde dos personas intercambian ficheros o imágenes, juegan a un juego, etc. Un ejemplo de sistema soportando este tipo de interacción es la UbiTable [11].. . Uno-pocos. En las presentaciones donde hay un ponente frente a un grupo de asistentes, el ponente utiliza un ordenador que muestra la presentación que están viendo los asistentes en la pantalla proyectada. Otro ejemplo de acoplamiento más sofisticado es el sistema Pick-and-drop [19] utilizado para interactuar con una pizarra electrónica.. . Pocos-pocos. Sistemas de múltiples pantallas se han utilizado desde hace mucho tiempo para trabajos en grupo o reuniones colaborativas. El proyecto Colab [20] es uno de los primeros ejemplos de este tipo permitiendo a los usuarios editar y anotar sobre una imagen compartida a través de pantallas individuales y una gran pantalla proyectada. Otro ejemplo de este tipo es WallShare [21].. . Uno/pocos-muchos. Este es el típico caso donde un pequeño grupo de personas controlan una pantalla situada en un evento al aire libre que está siendo visto por un gran número de personas. Por ejemplo, la pantalla gigante instalada en Madrid el día 11 de julio para ver la Final del Mundial de Futbol de España contra Holanda o el juego del pong en el Blinkenlights [16].. . Muchos-muchos. En algunos sistemas mucha gente puede interactuar con la misma pantalla pública simultáneamente. Por ejemplo, el proyecto Regrets [22] en el que se visualizan en unas pantallas los comentarios que los visitantes de la Plaza del Mercado de Cambridge envían en forma de texto desde sus móviles. Otro ejemplo se presentan en el trabajo [23] donde varios usuarios se comunican e interaccionan a través de pantallas públicas accediendo a la WWW a través de sus móviles mediantes SMS.. 2.2.3. Pantallas personales y privadas y pantallas públicas y compartidas. Los entornos heterogéneos de múltiples pantallas acopladas permiten la combinación de pequeños dispositivos privados y personales (por ejemplo, teléfonos, PDAs, etc.) y grandes dispositivos compartidos como mesas multi-táctiles [24]. La combinación de pantalla pública y privada aporta un gran potencial a los ecosistemas de pantallas acopladas para ser utilizados en numerosos escenarios. En el trabajo [24], Schmidt et al, explotan esta característica y presentan varias configuraciones diferentes con grandes superficies interactivas (proyectores, mesas, tablets, etc.) y pantallas pequeñas (PDAs, dispositivos móviles, etc.). Algunos de los prototipos que se presentan en este trabajo son los siguientes: una mesa de café interactiva que permite a los clientes pedir bebidas y comida mediante una mesa interactiva que muestra el menú y que puede ser controlado mediantes gestos en el teléfono; otro prototipo es una herramienta para presentaciones con la que los usuarios pueden enviar la presentación desde un móvil a la mesa y realizar la navegación de la presentación mediante gestos en el móvil. Finalmente, otro ejemplo es un juego de póker que utiliza el teléfono del jugador para mostrar sus cartas (información privada) y que está integrado con la mesa donde se muestra el resto de la partida (información pública). Greenberg en su trabajo [25] destaca que existe una necesidad por parte de los usuarios, que utilizan los entornos de múltiples pantallas, para manejar y modificar información privada, así como esconderla de la vista del resto de miembros del grupo. También destaca que es deseable que los usuarios puedan transferir información desde el espacio privado a la pantalla pública Universidad de Castilla-La Mancha. -15-.

(36) Distributable User Interfaces. compartida. Esta separación de espacio público y privado es fácilmente soportado por el uso de PDAs o móviles conectados con un pantalla pública compartida. Greenberg presenta una discusión con un prototipo desarrollado para el uso en entornos de trabajo. En este prototipo los usuarios pueden crear notas personales en sus móviles y durante la reunión seleccionar qué notas son enviadas a la pantalla compartida y visible por el resto de participantes. Además, son numerosos los trabajos que dividen la información entre pantalla pública y privada, entre ellos podemos destacar los siguientes. Rekimoto desarrolló un sistema conectando una pantalla compartida y PDAs privadas [26]. Con este sistema, una PDA puede ser utilizada como una paleta para almacenar datos. De este modo, los usuarios pueden coger información privada de la paleta con un lápiz especial y dejar dicha información en una pantalla pública y compartida. En [27], Kitamura et al, proponen una pantalla en forma de mesa que permite a varios usuarios interactuar, tanto con información privada como pública, sobre una pantalla compartida en reuniones cara a cara. Shoemaker propone un mecanismo basado en el filtrado de la información mostrada en la pantalla compartida, de modo que la información privada puede ser mostrada a cada usuario y seguir siendo privada. Cada usuario es capaz de ver la información pública, así como su propia información privada en la pantalla compartida, pero no la información privada del resto de usuarios [28].. 2.3 Interfaces de Usuario Migratorias y Migrables Uno de los primeros trabajos que hablan de aplicaciones migratorias es el trabajo de Krishna y Cardelli [29]. En dicho trabajo se presentan aplicaciones capaces de moverse libremente por la red en vez de estar sujetas a un equipo determinado. Sin embargo, la idea original se limita a la migración de aplicaciones integrales entre equipos ejecutando el mismo sistema operativo. Los autores definen el concepto de aplicación migratoria del siguiente modo: “La aplicación migratoria puede migrar de un dispositivo a otro, manteniendo intacto el estado de su interfaz de usuario. Después de la migración, el dispositivo inicial podría ser desconectado sin afectar a la aplicación.” Posteriormente, surgen otros trabajos referentes a las interfaces de usuario migratorias que eliminan la restricción del trabajo de Krishna y Cardelli. Algunos de estos trabajos son los siguientes. En [30] se permite la migración a nivel de componente de la interfaz. De forma similar, Bandelloni y Paterno usa un servidor para replicar el estado en tiempo de ejecución y adaptar la interfaz al dispositivo [31]. Se pueden identificar varios tipos de migración dependiendo del número de dispositivos origen y destino o si se migra toda la interfaz o solo una parte de ella [32]. Concretamente, la migración puede ser parcial o total, la migración parcial consiste en mover solo una porción de la interfaz a otro dispositivo. Como migración total se puede considerar el trabajo de Krishna y Cardelli [29].. 2.3.1. Una taxonomía para Interfaces de Usuario Migratorias. En el trabajo [33], los autores Berti, Paternò y Santoro, presentan un framework lógico y algunos conceptos y dimensiones fundamentales que pueden ayudar a los diseñadores y desarrolladores de interfaces a comprender las interfaces migratorias.. -16-. Pedro González Villanueva.

(37) Capítulo 2: Estado del Arte de las DUI. En dicho trabajo se define una serie de conceptos básicos referentes a las interfaces migratorias. Los autores definen el concepto de interfaz de usuario migratoria del siguiente modo: “Las interfaces migratorias son interfaces que pueden transferirse a través de diferentes dispositivos, y de este modo, permitir a los usuarios continuar sus tareas. Esta definición refleja conceptos importantes como: continuidad en la realización de la tarea, adaptación del dispositivo y usabilidad de la interfaz.” Por continuidad en la realización de la tarea entienden que cuando la migración ocurre, los usuarios no necesitan reiniciar la aplicación en el nuevo dispositivo y pueden continuar la tarea desde el mismo punto donde ellos la dejaron, sin tener que volver a insertar los mismos datos que insertaron antes de la migración. Los dispositivos envueltos en la migración pueden ser diferentes plataformas. Para ello, definen una plataforma como un conjunto de dispositivos que comparten recursos de interacción similares. Los recursos de interacción son canales atómicos de entrada y/o salida (tales como una pantalla, micrófono, ratón). Un dispositivo es un sistema capaz de ejecutar una aplicación y soportar la interacción del usuario a través de un conjunto de recursos de interacción. En el proceso de migración hay uno o más dispositivos origen y uno o más dispositivos destino. En la migración total la interfaz se migra totalmente desde un dispositivo a otro. En la migración parcial, solo una parte de la interfaz es migrada al dispositivo destino. En este trabajo, los autores consideran que una interfaz de usuario distribuida, a diferencia de una interfaz de usuario migratoria, es una interfaz que se ejecuta en un dispositivo y es localizada en diferentes recursos de interacción conectados al mismo dispositivo (por ejemplo dos pantallas). Además, consideran que las interfaces de usuario distribuidas dinámicamente, localizan las partes de la interfaz de usuario en diferentes recursos de interacción de forma dinámica (por ejemplo, mover una ventana desde una pantalla a otra), pero siempre ejecutadas en el mismo dispositivo. El autor de esta tesis está en desacuerdo con estas afirmaciones y se considera que hay un error de terminología. El hecho de mover una ventana desde una pantalla a otra pantalla conectada al mismo dispositivo no implica que se hable de distribución de la interfaz. De ser así, todas las interfaces de usuario de escritorio serían distribuidas. Por esta razón, unos de los objetivos de esta tesis es clarificar los conceptos de interfaz de usuario distribuida e interfaz de usuario distribuible (que para los autores comentados, son las interfaces de usuario distribuidas dinámicamente). Estos términos se definen claramente en el marco de referencia propuesto en el Capítulo 4. En el trabajo [33] se identifican varias dimensiones lógicas que indican los aspectos relevantes para el proceso de migración. A continuación se recogen las dimensiones más destacadas recogidas en dicho trabajo.. 2.3.1.1. Tipo de activación. Esta dimensión analiza cómo se lanza la migración y puede ser de dos maneras diferentes. El caso más simples es bajo demanda, en el cual los usuarios seleccionan dónde y cómo migrar (el usuario selecciona el dispositivo o dispositivos destino a donde se realiza la migración). El otro caso es migración automática, en el que el sistema es el que activa la migración. Puede ser activada, por ejemplo, tras comprobar ciertas condiciones, tales como el nivel de consumo de la batería de un dispositivo móvil, o la proximidad de otros dispositivos para decidir si la migración es necesaria y seleccionar el dispositivo destino. Universidad de Castilla-La Mancha. -17-.

Referencias

Documento similar

This prototype includes an ontology, which provides a simple mechanism to represent the environment and communicate its state, and two different plug and play user interfaces

In case of a manual mode control, with the light of the bulb on, the user should try different combinations on the position of the four stubs and check with which

Single view Multiple views Segmentation Textual processing Graphics processing. Textual interpretation Graphics interpretation

In [15], a framework to semi-automate the semantic annotation of Web services (i.e. parameter description based on ontology concepts, semantic service classification, etc.)

These technologies include data detector technology to enable any text to become a start point of semantic interaction; annotations for web-based services so

In summary, applications can perform the following operations in the blackboard: retrieve information about the entities and its properties, control the state of components

In this paper we have presented a language for describing an ambient intelligence environment and its components, as well as their representation in a graphical user interface..

The main goal of the work presented is to provide easy-to-use mechanisms for personalizing dynamic web pages. To achieve this, a methodological approach for generating and authoring