the network). A variety of functions of agent wrappers are
supported, such as communications with mediation agents
and use of the native interfaces of connected applications
(e.g., SQL queries for databases or http-access for Web
servers), as shown in Fig. 2.
Migration functions provide for the travel of a media-
tion agent among wrappers. A wrapper may also be consid-
ered as a platform that allows operationsimultaneous or
exclusiveof multiple mediation agents. Coordination
functions are implemented by means of mediation agents
acting through their IPs, which will be explained in more
detail later. Communication functions provide message
exchange between mediation agents and wrappers, which
will be described later as well.
The implementation of the system will be explained
in Section 4. Below we describe simple functional links
between mediation agents, wrappers, and connected appli-
cations.
(1) Application A issues an event to connected wrap-
per A using its native interface.
(2) Wrapper A receives the event (if necessary) and
sends a message to the mediation agent by means of the
communication function.
(3) The mediation agent receives the message by
means of the communication function and takes an appro-
priate action in accordance with the IP (in our case, migra-
tion to wrapper B).
(4) Using the migration function, the mediation agent
goes to wrapper B and takes the next action in accordance
with the IP (in our case, sending a message to wrapper B).
(5) The mediation agent sends a message to wrapper
B by means of the communication function.
(6) Wrapper B receives the message by means of the
communication function and (if necessary) accesses appli-
cation B via its native interface.
3.2. Coordination functions
The mediation agent supports coordination functions
to ensure cooperative problem solving among the compo-
nents of the distributed system. The coordination functions
provide interdependence of Speech-Act-based messages
exchanged between wrappers and mediation agents, and are
explicitly defined by the IP.
3.2.1. Interaction protocols
In essence, IPs are based on the organizational theory
of Fox and colleagues [11, 12]. This approach considers, at
the structural level, the problems of coordination between
different subjects, and presupposes a priori knowledge
about interactive processes between such subjects, which
may be considered as a top-down approach. The IP repre-
sents such interactive processes as a dialog between sub-
jects using the rules of Speech-Act-based message
exchange. The IP may also be thought of as a plan that
allows each subject to achieve its own goals while interact-
ing with other subjects. In many cases, this is represented
as a finite state machine, including possible states for a
subject, actions, and transitions to next states. Subject
autonomy appears as a choice between possible states for
transition. Some studies consider dynamic modification of
state transitions during IP run-time [13].
An example of an IP modeled as a state transition
diagram is shown in Fig. 3. In the diagram, the IP performs
requests from one subject to another; in the process, re-
peated message exchanges take place, obtaining the results
(inform Done or failure). The rectangles correspond to
states of the subject that are possible during IP execution,
namely, from top to bottom, precondition, action, and state
transition rule. If a precondition is matched, then the action
included in the states is called. The action (also referred to
as an action function, etc.) determines the subjects opera-
Fig. 2. Mediation agent and agent wrappers.
44