El documento describe el uso de MBUID (Model-Based User Interface Development) para el desarrollo de interfaces de usuario para aplicaciones groupware. Presenta el marco conceptual CIAM y la notación CIAN para el desarrollo de aplicaciones colaborativas. También describe la herramienta CIAT-GUI y cómo integra los procesos de desarrollo de software, interfaces de usuario y CSCW. El objetivo final es generar interfaces de usuario concretas de forma sistemática y automatizada basada en modelos.
Alan Turing Vida o biografía resumida como presentación
MBUID para la generación de interfaces de usuario para aplicaciones Groupware
1. MBUID para la generación de interfaces de usuario para aplicaciones
Groupware
Manuel Ortega Cantero
Escuela Superior de Informática. Universidad de Castilla – La Mancha
Paseo Universidad, 4. 13005 Ciudda Real (España)
Manuel.Ortega@uclm.es
Resumen
En la actualidad existe la necesidad de desarrollar aplicaciones groupware que integren el trabajo de distintas
personas en distintos lugares con interfaces de usuario que doten de todas las posibilidades que un sistema
colaborativo necesita de una manera usable. Aunque el desarrollo ad hoc de dichas interfaces de usuario es la
forma habitual de desarrollo de dichas interfaces la utilización sistemática del diseño y el desarrollo de interfaces
de usuario basado en modelos (MBUID) se hace imprescindible en el futuro para abordar la complejidad y reducir
los tiempos de desarrollo de estas aplicaciones colaborativas.
Palabras Claves: MBUID, Interfaz de usuario, CSCW, CSCL.
Abstract
Nowadays we need to develop groupware applications integrating different people working anywhere with user
interfaces developed using the whole characteristics that a collaborative system need in a usable way. Although the
ad hoc development of these interfaces is common, the systematic use of the Model Based User Interface Design
and Development approach is necessary to reduce complexity and time development in collaborative applications.
Key words: MBUID, User Interface, CSCW, CSCL.
2. 1. Introducción
Comenzaremos esta conferencia por presentar
algunos conceptos de la disciplina denominada
Computer Supported Cooperative Work (CSCW)
como los de awareness (Figura 1), WYSIWIS (What
You See Is What I See) utilizadas en el desarrollo de
sistemas colaborativos.
Concluiremos esta introducción con la reflexión de
que por la necesidad añadida de los sistemas
colaborativos de nuevos requisitos como los de
awareness y otros y por la complejidad en su
desarrollo es necesario utilizar herramientas que guíen
en el proceso de desarrollo cuando se quieren
implementar sistemas colaborativos Figura 2. Problemática/Reto a conseguir mediante
MBUID.
La notación CIAN se describe en la Figura 3 y será
presentada de forma conjunta con el marco
metodológico de CIAM. Por último presentaremos la
herramienta implementada denominada CIAT-GUI
(Figura 4).
Figura 1. Un ejemplo de awareness.
2. Marco de CIAM
Presentaremos después el marco conceptual,
metodológico y tecnológico de CIAM [1].
CIAM (Collaborative and Interactive Application
Methodology) es una metodología de desarrollo de
aplicaciones colaborativas desarrollado en el seno del
grupo CHICO del que soy director [2]. Dispone Figura 3. Notación CIAN.
asimismo de una notación (CIAN) [3,4] y de una
herramienta de desarrollo llamada CIAT-GUI [5].
La idea básica de funcionamiento se resume en la
Figura 2. En ella podemos ver la forma en la que se
desarrollará una aplicación groupware mediante
MBUID. La conferencia desarrollará esta forma de
abordar el desarrollo de interfaces de usuario basada
en modelos
3. Como ejemplo de esta integración podemos ver cómo
mediante el lenguaje ATL se puede interrelacionar un
sociograma de CIAM con los casos de uso de RUP
(Figura 6).
Figura 4. CIAT-GUI.
3. IUC final a partir de CTT ATL
Figura 6. Ejemplo de integración de sociogramas
Tras presentar la forma en la que se desarrolla la de CIAM con casos de uso de RUP
propuesta del grupo CHICO veremos la forma en que
se ha propuesto el paso hasta la interfaz de usuario
5. Experiencias
concreta (IUC) por parte de diversos autores, entre
otros Paternò, Luyten, Paredes y Limbourg.
En este apartado veremos la forma en que se ha Terminaremos nuestra presentación con un par de
implementado CIAT-GUI en la plataforma de casos de estudio modelados con nuestra herramienta
desarrollo Eclipse [6]. CIAT-GUI (Figura 7).
4. Integración en el RUP
En esta conferencia se desarrollará asimismo la
manera en que el grupo CHICO ha abordado la
integración de CIAM con el Proceso Unificado de
Rational (RUP). En la figura 5 se ve cómo se
interrelacionan los procesos que provienen de la
Ingeniería del Software, los que vienen de la tradición
del desarrollo de Interfaces de usuario y aquellos que
provienen del CSCW.
Figura 7. Una experiencia con contexto modelada
con CIAT-GUI.
Figura 5. Integración en Procesos software.
4. 6. Conclusiones 7. Referencias
Los principales retos que tenemos en los próximos [1] Molina, A. I., Redondo, M. A., & Ortega, M.
proyectos son: (2006). Conceptual and Methodological
• Cimentar y desarrollar la integración de Framework for Modeling Interactive
procesos Groupware Applications. In Y. A.
• La mejora del proceso de generación de IUC Dimitriadis (Ed.), Groupware: Design,
combinando: Implementation, and Use: CRIWG 2006
o CIAM (Vol. Lecture Notes in Computer Science
o Ideas de Limbourg sobre 4154, pp. 413 – 420). Valladolid: Springer-
representaciones intermedias y Verlag.
transformaciones sucesivas [2] http://chico.inf-cr.uclm.es/cms
o Mecanismos de Luyten y Árboles de [3] Ana I. Molina, Miguel A. Redondo, Manuel
Decisión para soportar operadores Ortega (2009). “A Methodological
temporales Framework for User Interface Development
o Modelado de contexto de dispositivo of Collaborative Applications: A case study”,
para contemplar los nuevos Science of Computer Programming, 74, 754-
dispositivos móviles 776
o Tecnologías de MDA en Eclipse [4] Ana I. Molina, Miguel A. Redondo, Manuel
usadas para CIAT Ortega, Ulrich H. Hoppe, (2008). “CIAM: A
Las conclusiones que extraemos de lo Methodology for the Development of
desarrolado hasta ahora son las siguientes: Groupware User Interfaces”, Journal of
Universal Computer Science, 14(9), 1434-
• La IU es una parte importantísima de las
aplicaciones software 1446.
[5] Molina, A.I., Giraldo, W.J., Gallardo, J.,
• La proliferación de herramientas
Redondo, M.A., Ortega, M., (2012), “CIAT-
software para soporte a la
GUI: A MDE-Compliant Environment for
colaboración
Developing Graphical User Interfaces of
• La necesidad de desarrollo de IUCs
Information Systems”, Advances in
• La necesidad de procesos, métodos, Engineering Software, 52, 10-29
técnicas y herramientas para desarrollo [6] http://www.eclipse.org
de IUCs
• El problema del desarrollo automático
y basado en modelos de la IUC
constituye un reto importante.