IMPLEMENTING TRADING AGENTS FOR ADAPTABLE AND
EVOLUTIVE UI-COTS COMPONENTS ARCHITECTURES
Jos
´
e Andr
´
es Asensio, Luis Iribarne, Nicol
´
as Padilla
Applied Computing Group, University of Almeria, Spain
Rosa Ayala
Computers and Environmental Group, University of Almeria, Spain
Keywords:
Trading agents, COTS User Interfaces, Model Transformation, Model-Driven Engineering, Cooperative Sys-
tems, e-Business Systems Modelling.
Abstract:
Most of the complex (e-Business) information systems need to accomplish with the use of open standards.
Environmental Management Systems (EMS), for instance, state the international regulations of the ISO 14000
family, which establish the requirements to be fulfilled by an EMS in order to be accepted as such. One
of these requirements concerns the User Interfaces Development. Because of the variety of final users that
interact in this sort of complex information system (politicians, technicians, administrators, and so on) and
due to a great deal of information (some critical and confidential), it is important to have real and practical
scientific/technical proposals in order to build fast and efficient information exploitation systems. The human-
computer interaction (HCI) of these systems need user interfaces that adapt to the users profiles’ habits, and
with intelligent software agents that mediate by the users in the search processes, exploitation and decision-
making tasks. In this work we present a part of the SOLERES-HCI, a framework of the Soleres Project
for developing COTS user interfaces by using trading agents. Our studies are being applied for developing
advanced EMS and approaching Model-driven engineering techniques to the UI-COTS development.
1 INTRODUCTION
Organizations and administrations that work with en-
vironmental information for specific actions such as
territory management or planning and organization of
natural resources (among others), need to have inno-
vative quality information systems in order to guaran-
tee the success of their everyday activities. There-
fore, for the experts who operate the system not only
it is important to have reliable and updated informa-
tion that helps to make the most appropriate deci-
sions, as it happens in critical complex systems. Due
to the variety of final users that cooperate with each
other and interact with the system for decision mak-
ing (for instance, politicians, technicians, administra-
tors, etc.), it is also important to have: (a) exploita-
tion information systems (environmental, in this case)
to facilitate the human-human and human-computer
interaction and coordination; (b) intelligent user in-
terfaces that adapt to the users profiles’ habits and;
(c) intelligent software agents that intercede on be-
half of the users and facilitate the information inter-
pretation tasks, the decision-making tasks and predic-
tion/prevention tasks (which are the most important).
In this work, we present a part of the framework
Soleres-HCI that supports all the human-computer
interaction issues of a complex environmental ma-
nagement system (EMS). This portion of the frame-
work concerns the developing of adaptable and evo-
lutive user interfaces of the system by using: (a) tra-
ding agents that intercede between user agents and
the information, (b) developing of traders that fol-
low model-driven engineering perspectives, and (c)
specialized Commercial Off-The Self (COTS) com-
ponents for real-time user interface architectures.
The rest of the paper is structured as follows. Sec-
tion 2 describes some issues for modelling user inter-
faces from UI-COTS. Section 3 continues with our
SOLERES-HCI proposal, a human-computer inter-
action perspective based on trading (ISO/IEC, 1997)
and software agents. Finally, Section 4 explains some
of our ongoing research in the SOLERES project.
259
Andrés Asensio J., Iribarne L., Padilla N. and Ayala R. (2008).
IMPLEMENTING TRADING AGENTS FOR ADAPTABLE AND EVOLUTIVE UI-COTS COMPONENTS ARCHITECTURES.
In Proceedings of the International Conference on e-Business, pages 259-262
DOI: 10.5220/0001912902590262
Copyright
c
SciTePress
2 MODELLING UI-COTS
In recent years, different approaches for the design
of user interfaces have been presented, most of them
following model-driven UI designs, for instance:
(a) IDEAS (Interface Development Environment
within OASIS) (Lozano et al., 2000): A methodo-
logy of UI development based on UML models.
(b) OVID (Object, View and Interaction Design)
(Roberts et al., 1998): A methodology for UI de-
sign directed towards objects developed by IBM.
(c) TERESA (Paterno, 1999): A tool for the UI gen-
eration by using ConcurTaskTrees (CTT).
(d) WISDOM (Whitewater Interactive System Deve-
lopment with Object Models) (Nunes, 1998): A
methodological proposal for UML-based UI.
(e) UMLi (Pinheiro, 2002): An extension of UML
notation for the UI design.
In the SOLERES team there are also current works on
UI modelling that use and extend the UML diagrams
(Almendros and Iribarne, 2005) (Almendros and Irib-
arne, 2007). None of these works deal in depth with
trading UI-COTS modelling.
On the other hand, our research aims to study
UI following the approach of Component-based Soft-
ware Development (CBSD) specialized for COTS
components (Commercial Off-the-Shelf), (Meyers and
Oberndorf, 2001). There are really few works show-
ing realistic cases of IS development following the
COTS paradigm or using multi-component UI-COTS.
In (Iribarne et al., 2004) we developed an experiment
COTS composition in Geographical Information Sys-
tems (GIS). However this approach doesn’t solve a
dynamic and evolutive UI-COTS perspective.
Furthermore, the tendency during the last few
years in CBSD is to facilitate the automatic integra-
tion of commercial components by means of the com-
position (assembly) of their parts. The advances in
trading services (or traders) have played an impor-
tant role for it. Inspired on the trading model for
COTS components in open-distributed systems (Irib-
arne et al., 2004), (Iribarne et al., 2005) we develop a
trading agent service for UI-COTS in EMS systems.
3 TRADING IN SOLERES-HCI
Soleres HCI is the framework of the SOLERES en-
vironmental management system, specialized in the
human-computer interaction. This level of informa-
tion system follows the paradigm of Computer Sup-
ported Cooperative Work (CSCW) and uses techno-
logy of agents and multiagent architectures.
– 10/15
recognizing his/her preferences and definitely, evolving with time. This IU Agent will mediate
between the user and (a) the rest of the system’s users (who will have their own IU Agent), (b)
the searching of information system (next layer) directly, or (c) an environmental software
agent (also environmental research agent, MA).
Este último, se refiere a un asesor o interventor virtual que cooperará con otros agentes
dentro de una arquitectura multiagente preestablecida, respetando un modelo de organización
y de cooperación (objetivos del proyecto). El propósito de esta cooperación, y por tanto la
labor de cada agente MA, será de facilitar las tareas de explotación de la información:
interaccionando estos con el Sistema de búsqueda de información (siguiente nivel en el sistema; más
adelante ofrecemos detalles de este nivel) y filtrando la información irrelevante. La utilización
de este tipo de sistemas, es de gran utilidad por su capacidad natural para representar e
implementar aspectos organizacionales y sociales que pueden ayudar a identificar y/o resolver
conflictos.
The latter refers to a virtual consultant or supervisor who will cooperate with other agents into
the pre-established multi-agent architecture and will respect an organization and cooperation
model (this project’s aim). The purpose of this cooperation and therefore, each MA’s job, will
be to facilitate the tasks of information exploitation: they will interact with the searching
information system (next level in the system, later we will offer details of this level) and they
will filter the irrelevant information. The use of this sort of systems is rather useful because of
its natural capacity for representing and implementing organizational and social aspects that
can help to identify and/or solve conflicts.
Agent IU
Agent MA
Agent IU
Agent MA
. . .
EPU
EPU
Agent
Agent
. . .
Searching Information System
Cooperative system for the taking decision in group
(Trading-based multiagent architecture)
User User
Trading Service
(Trader)
New
information
SOLERES-HCI
(nota para Isa: traduce también el texto dentro de la figura)
Figura 3. Arquitectura general del sistema de información SOLERES.
Cooperative system for the decision taking in group
Searching information system
Figure 1: General architecture of SOLERES project.
Planner
Processes for the
generation of
environmental
information maps
Parser
EIM / EID
Environmental
Info Maps
templates
( EIM )
Original satellite
images
Agent
E
NVIRONMENTAL
P
ROCESS
U
NIT
E
NVIRONMENTAL
I
NFORMATION
M
APS
(EIM)
Comes
from the
IU
Environmental
trading service
Environmental
Information
Documents
( EID )
T
RADING SERVICE
(T
RADER
)
Register Query
Activate agent
Figure 2: Some details of an EPU object.
For the process of data exploitation we identify and
structure the type of queries and the sort of informa-
tion suitable to be consulted, by using techniques of
hierarchical decomposition (i.e., trees, cut and prun-
ing) and neural networks.
Figure 1 shows the (short) architecture of the
SOLERES information system in our project frame-
work. At the user layer side (top), the system is de-
signed in order to be used for environmental decision-
making tasks and in cooperation among different peo-
ple (system’s users) organized following different or-
ganized models (i.e. depending on their hierarchy).
This human-computer interaction and human-
human interaction is guided by a cooperative system
for the decision-taking tasks in group supported by a
multi-agent architecture (next layer). Each user of the
cooperative system has an UI agent whose function is
ICE-B 2008 - International Conference on e-Business
260
Figure 3: MDA steps of the trader views.
to adapt the UI to his/her needs by identifying his/her
interaction habits with the UI. This UI agent mediates
between the user and (a) the rest of the system’s users
(who have their own UI agent), (b) the search infor-
mation system (next layer) directly, or (c) an environ-
mental software agent (environmental agent - MA).
A virtual consultant cooperates with other agents
within a pre-established multi-agent architecture and
respects a model of organization and cooperation (that
is or project’s aim). The purpose of this cooperation
(MA) is to facilitate the tasks of information exploita-
tion: they interact with the search information system
(we call an Environmental Process Unit- EPU) and
filter the irrelevant information. The use of this sort
of systems is quite useful because of its natural ca-
pacity to represent and implement organizational and
social aspects that can help to identify and/or solve
problems. Figure 2 shows internal details of an EPU.
For implementing the trading agent, we follow a
Model-Driven Engineering (MDE) perspective based
on the classical Model-driven Architecture (MDA) of
the OMG. In this perspective, the trader model stays
the three stages of the MDA: CIM/PIM/PSM (see Fig-
ure 3). A trader meta-model (MM) is defined for each
stage, which describe the way to generate a diagram-
matical model (UML) of the trader.
To translate a model into views (stages), we use
model-transformation techniques. In our case, we
use ATL for implementing the transformations of the
trader. The language ATL (ATLAS transformation
language) (Jouault and Kurtev, 2006) provides declar-
ative and imperative constructs. The declarative part
of ATL is based on rules. Such rules consist of a
source pattern matched over source models and of
a target pattern that creates target models for each
match. Figure 4 shows a piece of the ATL code for
the transformation CIM/PIM of one of the ve inter-
faces of a trader agent: the Lookup interface. In the
code, we can observe how associations, properties or
operations of the Lookup class are created.
rule Lookup {
from f01:in MM!Lookup
using {
O Lookup: out MM!Operation = ’null’;
O get lookup if: out MM!Operation = ’null’;
...
}
to t01:out MM!Class( name<-’Lookup’,visibility<-#public )
do { ...
O Lookup<-thisModule.create Operation
(’Lookup’, #public, ”, false, false, 1, 1);
O get lookup if<-thisModule.create Operation
(’get lookup if’, #public, ’Lookup’, false, false, 1, );
O get register if<-thisModule.create Operation
(’get register if’, #public, ’Register’, false, false, 1, 1);
A trader C Lookup C Trader<-thisModule.create Association
(’trader C Lookup C Trader’, #public, false);
Pr trader C Trader<-thisModule.create Property
(’trader’,#private,’Trader’,false, false, 1, 1, false, ”, false, false);
...
}
}
Figure 4: A piece of the ATL transformation
Figure 5 shows the PIM trader model: a partial
class diagram. In this framework we have also used
the GMF/Eclipse to develop a tool for documenting
CIM trader models. We use the OCL language of
UML/OMG for describing the semantical restrictions
IMPLEMENTING TRADING AGENTS FOR ADAPTABLE AND EVOLUTIVE UI-COTS COMPONENTS
ARCHITECTURES
261
Figure 5: Informal class diagram model of the trader.
of a trader. At the end, java code generation from
PSM trader models can be obtained by using a parser
written in MOFScript.
For the implementation of the described frame-
work we have used the Eclipse platform and JADE
(http://jade.tilab.com/) for agents.
For space reasons, we have included here a part
of the Soleres-HCI framework. A more complete
version of the SOLERES project and details about
the model transformations and implementations of
the trading agent (p.e., Java code) are available at
http://www.ual.es/acg/soleres.
4 ONGOING RESEARCH
The following are the specific objectives of our ongo-
ing line of research.
Firstly, we plan to study the design of intelligent
user interfaces. We will look into how to adapt the UI
to different user’s profiles.
Our scientific objective (complement to previous
one) is to study algorithms of dynamic-services com-
position in UI-COTS components architectures. We
try to analyze this kind of component and its mar-
ketplace (i.e., how many exist, which types, how to
define them, what kind of existing repositories, etc.).
Furthermore, starting from previous works (Irib-
arne et al., 2004), we plan to implement trading ser-
vices of UI-COTS components and their applications
in Cooperative Systems (specifically in environmental
management systems.
ACKNOWLEDGEMENTS
This work has been partially supported by the EU
(FEDER) and the Spanish MEC under grant of the
project I+D TIN2007-61497 (SOLERES. A Spatio-
Temporal Environmental Management System based
on Neural-Networks, Agents and Soft. Components).
REFERENCES
Almendros, J. and Iribarne, L. (2005). Designing GUI com-
ponents from UML use cases. In IEEE Int. Conf. on
the Engineering of Computer-Based Systems, pages
210–217. IEEE Computer Society.
Almendros, J. and Iribarne, L. (2007). Visual Languages
for Interactive Computing: Definitions and Formal-
ization, chapter User Interaction and Interface Design
with UML. Idea Group Inc. Hersey, U.S.A.
Iribarne, L., Troya, J., and Vallecillo, A. (2004). A tra-
ding service for cots components. Computer Journal,
4(3):342–357.
Iribarne, L., Troya, J., and Vallecillo, A. (2005). The De-
velopment of Component-Based Information Systems,
chapter Trading for COTS Components to Fulfil Ar-
chitectural Requirements. M.E. Sharpe, Inc.
ISO/IEC (1997). Information technology - open distributed
processing - trading function: Specification. Technical
report, ISO/IEC 13235-1, ITU-T X.950.
Jouault, F. and Kurtev, I. (2006). On the architectural align-
ment of ATL and QVT. In SAC ’06: Proc. of the 2006
ACM Symp. on Applied Computing, pages 1188–1195,
New York, NY, USA. ACM.
Lozano, M., Ramos, I., and Gonz
´
alez, P. (2000). User in-
terface specification and modeling in a object oriented
environment for automatic software development. In
IEEE 34th Int. Conf. on Tech. of OO Lang. and Sys-
tems, pages 373–381. IEEE Comp. SP.
Meyers, B. and Oberndorf, P. (2001). Managing Soft-
ware Acquisition. Open Systems and COTS Products.
Addison-Wesley.
Nunes, N. (1998). Object modeling for user-centered de-
velopment and user interface design: The wisdom ap-
proach. PhD thesis, Univ. de Madeira.
Paterno, F. (1999). Model-Based Design and Evaluation of
Interactive Applications. Springer.
Pinheiro, P. (2002). Object Modelling of Interactive Sys-
tems: The UMLi Approach. PhD thesis, University of
Manchester.
Roberts, D., Berry, D., Isensee, S., and Mullaly, J. (1998).
Designing for the User with OVID: Bridging User In-
terface Design and Software Engineering. New Riders
Publishing.
ICE-B 2008 - International Conference on e-Business
262