Los modelos arquitectónicos son una alternativa (en algunos casos complementaria)
para la representación de sistemas interactivos. En este caso, se pretende obtener
un modelo del sistema a desarrollar, centrándose en los aspectos computacionales
básicos en los que debe estar basado.
Los primeros modelos que se proponen en este sentido son para describir el sistema
interactivo en su conjunto recogiendo sus características esenciales. Si bien los pri-
meros modelos como Seeheim o ARCH se centraban en aspectos funcionales, las
últimas propuestas definen una arquitectura modular basada en componentes como
MVC o PAC. También podemos encontrar propuestas encaminadas hacia un diseño
basado en modelos concretos del sistema con herramientas para su obtención au-
tomática como puede ser MOBI–D, HUMANOID, etc. (ver capítulo ‘Herramientas’).
Los aspectos más relevantes de estas propuestas se centran en la modelización de
los componentes interactivos (estructura) y mecanismo de interacción (diálogo).
Modelos de componentes interactivos
Los modelos basados en componentes realizan la descripción del sistema como una
colección de interadores, elementos básicos que encapsulan interacciones elemen-
tales con las que se pueden construir interacciones más complejas.Estos modelos
definen las características de los objetos con los que interactúa el usuario (como
listas, deslizadores, ventanas, etc.). El modelo conceptual debe reflejar los aspectos
relevantes del cualquier componente interactivo (apariencia, eventos, comunica-
ción, etc.). Normalmente esta arquitectura es modular por lo que permite la compo-
sición de componentes para crear sistemas más complejos.
Uno de los modelos que más se ha utilizado para la especificación de sistemas in-
teractivos es el denominado interador (de York) [DUK95]. Un interador (interactor)
consiste en un estado y un conjunto de acciones que puede percibir e invocar el
entorno a través de una interfaz bien definido. Esta definición recoge los elementos
esenciales de cualquier elemento interactivo (su estado actual, visualización y
eventos para su manipulación. Una parte importante de esta interfaz es la represen-
tación gráfica del componente (presentación), que es perceptible por el usuario del
sistema. Bajo este modelo, podemos describir elementos interadores abstractos,
que posteriormente se plasmará en los lenguajes de especificación.
El concepto de interador ha sido utilizado ampliamente para construir metodologías
de diseño de sistema interactivos. La mayor diferencia entre ellas es el lenguaje de
especificación utilizado, Z, Lotos, álgebra de procesos, etc.
Podemos realizar una descripción más detallada de un interador utilizando para
ello conceptos que aparecen en los sistemas concurrentes. Así, un interador es un
modelo abstracto basado en procesos, canales de comunicación y señales de control
que definen un componente interactivo con capacidad de representación gráfica y
modificación dinámica. Su estructura favorece la interconexión de interadores para
realizar modelos de interacción complejos.
En el siguiente esquema se detallan los procesos que definen su funcionalidad, así
como las comunicaciones entre los mismos. La idea que se recoge bajo el paradig-
ma del interador es la de representar un componente activo que posee una aparien-
cia gráfica y una medida que representa el valor actual del interador (o estado).
Este valor puede modificar la apariencia del interador, así como externamente po-
demos variar la forma de obtención de la medida. Podemos sincronizar los distintos
procesos mediante señales de control.
Un interador se puede describir mediante cuatro procesos. Collection proporciona
una descripción de alto nivel de la apariencia gráfica del objeto. Feedback se encar-
ga de producir la apariencia externa del objeto. Measure obtiene un dato de un ni-
vel inferior, y Control, se encarga de generar una nueva medida para el nivel supe-
rior. Las entradas y salidas del interador se definen por medio de canales de comu-En la especificación se describen las distintas sincronizaciones que se deben garan-
tizar sobre los procesos que conforman la estructura del interador. Así, por ejemplo,
el proceso feedback se encarga de producir su apariencia gráfica producto de una
modificación de la medida (me) o bien de un cambio de apariencia (cf). Podemos
asociar a cada canal de comunicación información acerca del tipo de dato que
transporta. Por ejemplo el canal de comunicación eo definirá sus datos de tipo grá-
fico: eo?p : Picture, especificado en ACT ONE. Una de las ventajas que tiene LOTOS
(y en general todos los métodos basados en álgebra de procesos) es que explicitan
todas las sincronizaciones que aparecen en un sistema interactivo.
Se han desarrollado metodologías para diseñar sistemas interactivos utilizando los
interadores en las que se describen las posibles formas de interconectarlos para
describir interacciones complejas.
26 ♦ La interacción persona-ordenador
En la siguiente imagen podemos ver como se interconectarían tres interadores para
describir parte de un sistema en el que se van a utilizan iconos para representar
objetos como ficheros, directorios y unidades de disco. El usuario puede manipular
los iconos por medio del ratón y puede modificar el estado de los iconos usando
también entradas de un menú.
Se pueden utilizar otros formalismos para la descripción de interadores como por
ejemplo la lógica temporal. En [DUK95] se realiza una combinación de un modelo
de interador con lógica. Los axiomas se especifican en lógica modal de acciones
(MAL), de forma que, junto a los predicados basados en lógica de primer orden, se
extiende con un conjunto de operadores modales, que controlan las acciones que se
pueden provocar en el sistema. MAL incluye el concepto de agentes (humanos y
ordenador) y las responsabilidades mutuas entre ellos. Los operadores usuales son
el permiso (per) y la obligación (obl) bajo un paradigma deontológico.
modify icons
No hay comentarios:
Publicar un comentario