Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

CIT. Journal of Computing and Information Technology, Vol. 24, No.

2, June 2016, 149–163 149


doi: 10.20532/cit.2016.1002695

Mobile Agent-Based Software


Systems Modeling Approaches:
A Comparative Study
Aissam Belghiat1,3, Elhillali Kerkouche2, Allaoua Chaoui3
and Mokhtar Beldjehem4
1
Department of Computer Science, University of 20 August 1955-Skikda, Algeria
2
Department of Computer Science, University of Jijel, Algeria
3
MISC Laboratory, Department of Computer Science, University of Constantine 2, Algeria
4
University of Ottawa, Canada

Mobile agent-based applications are special type of the network load and overcome its latency by
software systems which take the advantages of mobile acting locally. They are also robust, fault-toler-
agents in order to provide a new beneficial paradigm
to solve multiple complex problems in several fields
ant and they encapsulate communication proto-
and areas such as network management, e-commerce, cols which facilitates their upgrading.
e-learning, etc. Likewise, we notice lack of real ap- Despite these notable advantages, the paradigm
plications based on this paradigm and lack of serious
evaluations of their modeling approaches. Hence, this brings significant problems especially security
paper provides a comparative study of modeling ap- threats which have arisen because a mobile code
proaches of mobile agent-based software systems. The generated by one party will move to and exe-
objective is to give the reader an overview and a thor- cute on an environment controlled by another
ough understanding of the work that has been done party. This is posing multiple issues that must
and where the gaps in the research are.
be taken into account, including authentication,
ACM CCS (2012) Classification: Computing method- authorization (or access control), intrusion de-
ologies → Artificial intelligence → Distributed artifi- tection, etc. A mobile agent application can be
cial intelligence → Mobile agents threatened by malicious agents, malicious plat-
forms and third parties. Malicious agents can
Keywords: mobile agent, mobile agent-based applica- attack agents and hosts in order to trouble them
tion, UML, formal method
for behaving inappropriately. Analogously, ma-
licious platforms can attack agents to do the
same. Other attacks can be performed by some
1. Introduction other entities in the network. In fact these secu-
The mobile agent paradigm is an extension of rity problems have hindered largely the devel-
client/server and remote evaluation paradigms opment and maintenance of mobile agent para-
that it provides a new development way for digm, especially in critical applications such as
distributed systems. Mobility is the novel con- e-commerce [2].
cept that characterizes the paradigm. It is the Modeling and designing of mobile agent-based
migration capability of an agent from a host to software systems have received important at-
another one where it resumes its execution to tention in the last years [3]. Building a model-
achieve a task. Mobile agents present several ing language from scratch is a difficult task, this
features that provide multiple advantages of this is what was inciting the researchers to borrow
paradigm compared to others [1]. They have a the essential elements of success from the ob-
heterogeneous nature, operate asynchronously, ject-oriented paradigm, and introduce to them
adapt dynamically and react autonomously to the appropriate features (functionalities) in or-
changes. Furthermore, mobile agents reduce der to support the mobile agent paradigm.
150 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 151

This article collects, categorizes and reviews number of required concepts to model mobility platforms or servers) where the execution of ●● Agent platform: it is a software compo-
the current modeling approaches of mobile in order to overcome the limitations of the pro- the agent can take place and where different nent where the agents can perform their
agent-based software systems which have been posed approaches, and adequately model agent services and resources are provided. We pres- tasks and where different services and re-
developed in order to deal with the analysis mobility. The authors in this paper mix between ent here the essential elements (factors) of this sources are provided for them.
and design phases of those systems. We have the modeling languages and methodologies. architecture [3]. Figure 1 shows the architecture ●● Node: it is the infrastructure of execution
focused on the approaches based on UML (Uni- Belloni and Marcos [3] have surveyed multiple of the mobile agent-based software systems. environment on which mobile agents and
fied Modeling Language) [4] and considered as UML extensions for mobile agents modeling in ●● Agent: it is a software entity that executes mobile agent platforms are actually per-
full languages since they cover multiple views order to define a unique UML extension which tasks on behalf of someone (a person) or formed.
of software systems. Furthermore, we provide gathers and integrates the features of a large something (an organization or another
a framework for the comparison of these lan- scale of such systems. Hachicha et al. [7] have ●● Region: it is a logical network of places
agent) with some autonomy – i.e., its ac- which have the same authority.
guages that consists of multiple features identi- reviewed multiple approaches which model tions could be not only determined by ex-
fied from a bibliographical review. A thorough mobile agent based applications with UML. ternal events or interactions, but also by its ●● Place: represents logical locations, pro-
discussion is then carried out, that allows more Cervenka and Trencansky [8] have provided a own motivation (or purpose). vided by mobile-agent platforms, where
comprehension of the pros and cons of multi- survey on agent-oriented modeling techniques; agents execute, and manipulate some local
ple approaches in the literature. Consequently, however they have focused on methodologies ●● Stationary agent: it is an agent that ex- resources.
readers could at the end of this article make and multi-agents systems. Melomey et al. [9] ecutes in the place where it started, i.e. it
their choices about using this or that approach have provided a comparative study of some does not move. ●● Resources: represent non-autonomous en-
or definitely proceed to define their own, based modeling languages for agent systems. The se- tities, such as files, databases, and others,
●● Mobile agent: it is an agent that can move which can be used and shared by several
on a deep understanding. lected languages are actually not adequate to from one node to another to accomplish its
model mobile agents systems, but multi-agent agents.
The rest of the paper is organized as follows: task. It may or may not return to its “home-
in Section 2, we present some related work. In systems. Bauer and Muller [10] have presented node”.
Section 3, we present some basic notions about an overview of the existing approaches and
agent technology to make the paper self-con- methodologies for agent based applications.
tained. In Section 4, we present our classifica- The modeling of mobile agents is not the cen-
tion scheme of mobile agent-based software tral interest of this work.
systems modeling approaches. In Section 5, Other approaches can be cited as well, but one
we define a frame-work for comparing differ- issue here is worth noting, and this is the mix-
ent languages. Finally, in Section 6, concluding ing of the concepts of modeling languages and
remarks are drawn from the work and perspec- methodologies in those contributions. Hence, in
tives for further research are presented. our paper, we have focused on modeling lan-
guages because we believe that they represent
the key of success of the paradigm since mobile
2. Related Work agents are investigated in different domain ar-
eas. We think also that methodologies cannot
Only few works are available in the literature be general but rather adapted to specific situa-
which survey the techniques and tools for mod- tions. So, surveying methodologies is beyond
eling mobile agent based software systems. the scope of this paper. In addition, we con-
Our paper is similar to some works, such as sider only the applications with mobile agents
the one in [5] that provides a survey of exis- and static locations. Applications with dynamic
tent agent-oriented methodologies. It discusses locations (mobile computing) are beyond the
what approaches have been followed to assist in scope of this paper.
all the phases of the life cycle of an agent-based
application. It is noted that the researchers
have worked on extending the existing meth- 3. Mobile Agent-Based Software
odologies to include the relevant aspects of the Systems
agents. These extensions have been carried out
mainly in two areas: object oriented (OO) meth- 3.1. Basic Concepts and Architecture
odologies and knowledge engineering (KE)
methodologies. Melomey et al. [6] present in A mobile agent-based software system involves
their paper an evaluation of the approaches and multiple agents (stationary or mobile) that inter-
methodologies already proposed to develop the act and communicate between themselves in an
mobile agent paradigm. Hence, they proposed a adequate running environment (mobile-agent
Figure 1. Mobile agent-based software systems architecture.
150 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 151

This article collects, categorizes and reviews number of required concepts to model mobility platforms or servers) where the execution of ●● Agent platform: it is a software compo-
the current modeling approaches of mobile in order to overcome the limitations of the pro- the agent can take place and where different nent where the agents can perform their
agent-based software systems which have been posed approaches, and adequately model agent services and resources are provided. We pres- tasks and where different services and re-
developed in order to deal with the analysis mobility. The authors in this paper mix between ent here the essential elements (factors) of this sources are provided for them.
and design phases of those systems. We have the modeling languages and methodologies. architecture [3]. Figure 1 shows the architecture ●● Node: it is the infrastructure of execution
focused on the approaches based on UML (Uni- Belloni and Marcos [3] have surveyed multiple of the mobile agent-based software systems. environment on which mobile agents and
fied Modeling Language) [4] and considered as UML extensions for mobile agents modeling in ●● Agent: it is a software entity that executes mobile agent platforms are actually per-
full languages since they cover multiple views order to define a unique UML extension which tasks on behalf of someone (a person) or formed.
of software systems. Furthermore, we provide gathers and integrates the features of a large something (an organization or another
a framework for the comparison of these lan- scale of such systems. Hachicha et al. [7] have ●● Region: it is a logical network of places
agent) with some autonomy – i.e., its ac- which have the same authority.
guages that consists of multiple features identi- reviewed multiple approaches which model tions could be not only determined by ex-
fied from a bibliographical review. A thorough mobile agent based applications with UML. ternal events or interactions, but also by its ●● Place: represents logical locations, pro-
discussion is then carried out, that allows more Cervenka and Trencansky [8] have provided a own motivation (or purpose). vided by mobile-agent platforms, where
comprehension of the pros and cons of multi- survey on agent-oriented modeling techniques; agents execute, and manipulate some local
ple approaches in the literature. Consequently, however they have focused on methodologies ●● Stationary agent: it is an agent that ex- resources.
readers could at the end of this article make and multi-agents systems. Melomey et al. [9] ecutes in the place where it started, i.e. it
their choices about using this or that approach have provided a comparative study of some does not move. ●● Resources: represent non-autonomous en-
or definitely proceed to define their own, based modeling languages for agent systems. The se- tities, such as files, databases, and others,
●● Mobile agent: it is an agent that can move which can be used and shared by several
on a deep understanding. lected languages are actually not adequate to from one node to another to accomplish its
model mobile agents systems, but multi-agent agents.
The rest of the paper is organized as follows: task. It may or may not return to its “home-
in Section 2, we present some related work. In systems. Bauer and Muller [10] have presented node”.
Section 3, we present some basic notions about an overview of the existing approaches and
agent technology to make the paper self-con- methodologies for agent based applications.
tained. In Section 4, we present our classifica- The modeling of mobile agents is not the cen-
tion scheme of mobile agent-based software tral interest of this work.
systems modeling approaches. In Section 5, Other approaches can be cited as well, but one
we define a frame-work for comparing differ- issue here is worth noting, and this is the mix-
ent languages. Finally, in Section 6, concluding ing of the concepts of modeling languages and
remarks are drawn from the work and perspec- methodologies in those contributions. Hence, in
tives for further research are presented. our paper, we have focused on modeling lan-
guages because we believe that they represent
the key of success of the paradigm since mobile
2. Related Work agents are investigated in different domain ar-
eas. We think also that methodologies cannot
Only few works are available in the literature be general but rather adapted to specific situa-
which survey the techniques and tools for mod- tions. So, surveying methodologies is beyond
eling mobile agent based software systems. the scope of this paper. In addition, we con-
Our paper is similar to some works, such as sider only the applications with mobile agents
the one in [5] that provides a survey of exis- and static locations. Applications with dynamic
tent agent-oriented methodologies. It discusses locations (mobile computing) are beyond the
what approaches have been followed to assist in scope of this paper.
all the phases of the life cycle of an agent-based
application. It is noted that the researchers
have worked on extending the existing meth- 3. Mobile Agent-Based Software
odologies to include the relevant aspects of the Systems
agents. These extensions have been carried out
mainly in two areas: object oriented (OO) meth- 3.1. Basic Concepts and Architecture
odologies and knowledge engineering (KE)
methodologies. Melomey et al. [6] present in A mobile agent-based software system involves
their paper an evaluation of the approaches and multiple agents (stationary or mobile) that inter-
methodologies already proposed to develop the act and communicate between themselves in an
mobile agent paradigm. Hence, they proposed a adequate running environment (mobile-agent
Figure 1. Mobile agent-based software systems architecture.
152 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 153

3.2. Mobile Agent Platforms and [21] such as: why does a mobile agent move
Applications from one host to another, when and where does
it move and how does it reach the targeted host.
Proliferation of the mobile agent paradigm re-
sults in a large number of platforms. This pro- Regarding security of mobile agents, multiple
vided multiple problems such as incompatibil- researches have delivered a number of mecha-
ities between different platforms of execution nisms, which follow different ways in address-
of mobile agents. It has become necessary to ing the aforementioned security issues. Some
propose a standardization of the concepts and of these mechanisms have been embedded into
functionalities of the mobile agent platforms in mobile agent platforms to make them secure
order to ensure a high level of interoperability. for network programming. Some other mecha-
Therefore, two standards have been developed nisms can be specified by designers to enhance
by international organizations of standardiza- the security of the application. Actually, several
tion to deal with these problems; the MASIF modeling approaches provide security views Figure 2. The life cycle of the current mobile agent-based software systems development process.
(Mobile Agent System Interoperability Facili- which allow the description of different mech-
ties Specification) standard [11] and the FIPA anisms used in order to prevent vulnerability 4. On Classifying Mobile based-systems using formal methods.
(Foundation for Intelligent Physical Agents) of the mobile agent applications. Such mech-
anisms include, for instance: authentication of Agent-Based Software Systems ●● Hybrid Approaches: these approaches re-
standard [12]. Modeling Approaches sult from a hybrid integration of the fea-
agents and mobile-agent systems, authorization
There are several available platforms for mo- tures of the previous two categories with
and access control to resources. However, it is
bile agent development. These include, but are Researches on providing appropriate modeling other contributions.
not really clear how one can define standard
not limited to, Aglets [13], Ajanta [14], Grass- techniques for mobile agent software systems
ideas for security modeling, because the mobile
hopper [15], Voyager [16], JADE [17], TAgent are very restricted, and they need to be im-
agents are applied in large number of domains proved. In this section, several modeling ap- 4.1. UML-Based Approaches
[18], Tacoma [19]. Most mobile agent plat- which have different concerns (each domain
forms consider Java as the agent programming proaches are overviewed, and some others are
has its own particularities). just cited in order to cover large points of views In this field, researchers have tried to relate mo-
language due to its portability. The emergence bile agent paradigm to the object oriented para-
In object oriented systems, UML [4] has played on how to deal with such systems. Thus, we
of suitable mobile agent platforms has encour- are able to classify existing mobile agent-based digm by extending the de-facto standard of ob-
aged the industry to get interested in using mo- an essential and decisive role in the success of ject oriented modeling to model mobile agents.
this technology. In fact, using it, you can model software systems modeling proposals in three
bile agent technology in order to develop its large categories (see Figure 3): In fact, UML [4] provides some mechanisms to
own products systems. These have been carried all parts of development of an object oriented extend itself. It offers stereotypes to create new
out in wide range domain areas such as [20] application, from its inception to its deploy- ●● UML-based Approaches: these approaches UML elements, tagged values to create new
[1]: network management, telecommunication, ment. Researchers have followed suitable ap- tackle the problem of modeling mobile kinds of properties and constraints to add new
electronic commerce, data mining, multime- proaches in the antecedent paradigm for mobile agent applications using UML [4]; the semantics to elements. Thus, based on the ex-
agent modeling in order to define a modeling standard language of object oriented par- pressivity and extensibility of UML, research-
dia, climate environment, weather, e-learning,
language that has the ability to play in the mo- adigm. ers have adopted it and introduced to it the ap-
semantic web services, parallel processing, hu-
bile agent paradigm the same role that UML is ●● Formal Approaches: these approaches propriate artefacts in order to support the new
man tracking, geographic information systems
already playing in the object oriented paradigm. provide formal models for mobile agent paradigm. So, we present here some proposals
and e-health monitoring systems.
In general, the life cycle of development of mo-
bile agent-based software systems is composed
3.3. Modeling Challenges and of three phases: the analysis phase, design
Shortcomings phase, and implementation phase. Actually,
in these systems the later phase has been en-
Mobility is the novel concept, which character- riched recently in a satisfactory way by a great
izes mobile agent-based software systems. Its number of different platforms that support and
modeling represents a great challenge because implement the paradigm of mobile agents. In
it produces complicated dynamic reconfigura- contrast, the proposed approaches for the anal-
tion of the system in question during its exe- ysis and design of mobile agent-based software
cution. Thus, providing an approach that has systems are not widespread, they are limited in
the capability of designing, this is not trivial. In scope and incomplete in themselves. Figure 2
fact, the approach must give answers to ques- represents the current development process life-
tions that arise from the use of mobile agents cycle of mobile agent-based software systems. Figure 3. The three categories of existing modeling proposals for mobile agent-based systems.
152 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 153

3.2. Mobile Agent Platforms and [21] such as: why does a mobile agent move
Applications from one host to another, when and where does
it move and how does it reach the targeted host.
Proliferation of the mobile agent paradigm re-
sults in a large number of platforms. This pro- Regarding security of mobile agents, multiple
vided multiple problems such as incompatibil- researches have delivered a number of mecha-
ities between different platforms of execution nisms, which follow different ways in address-
of mobile agents. It has become necessary to ing the aforementioned security issues. Some
propose a standardization of the concepts and of these mechanisms have been embedded into
functionalities of the mobile agent platforms in mobile agent platforms to make them secure
order to ensure a high level of interoperability. for network programming. Some other mecha-
Therefore, two standards have been developed nisms can be specified by designers to enhance
by international organizations of standardiza- the security of the application. Actually, several
tion to deal with these problems; the MASIF modeling approaches provide security views Figure 2. The life cycle of the current mobile agent-based software systems development process.
(Mobile Agent System Interoperability Facili- which allow the description of different mech-
ties Specification) standard [11] and the FIPA anisms used in order to prevent vulnerability 4. On Classifying Mobile based-systems using formal methods.
(Foundation for Intelligent Physical Agents) of the mobile agent applications. Such mech-
anisms include, for instance: authentication of Agent-Based Software Systems ●● Hybrid Approaches: these approaches re-
standard [12]. Modeling Approaches sult from a hybrid integration of the fea-
agents and mobile-agent systems, authorization
There are several available platforms for mo- tures of the previous two categories with
and access control to resources. However, it is
bile agent development. These include, but are Researches on providing appropriate modeling other contributions.
not really clear how one can define standard
not limited to, Aglets [13], Ajanta [14], Grass- techniques for mobile agent software systems
ideas for security modeling, because the mobile
hopper [15], Voyager [16], JADE [17], TAgent are very restricted, and they need to be im-
agents are applied in large number of domains proved. In this section, several modeling ap- 4.1. UML-Based Approaches
[18], Tacoma [19]. Most mobile agent plat- which have different concerns (each domain
forms consider Java as the agent programming proaches are overviewed, and some others are
has its own particularities). just cited in order to cover large points of views In this field, researchers have tried to relate mo-
language due to its portability. The emergence bile agent paradigm to the object oriented para-
In object oriented systems, UML [4] has played on how to deal with such systems. Thus, we
of suitable mobile agent platforms has encour- are able to classify existing mobile agent-based digm by extending the de-facto standard of ob-
aged the industry to get interested in using mo- an essential and decisive role in the success of ject oriented modeling to model mobile agents.
this technology. In fact, using it, you can model software systems modeling proposals in three
bile agent technology in order to develop its large categories (see Figure 3): In fact, UML [4] provides some mechanisms to
own products systems. These have been carried all parts of development of an object oriented extend itself. It offers stereotypes to create new
out in wide range domain areas such as [20] application, from its inception to its deploy- ●● UML-based Approaches: these approaches UML elements, tagged values to create new
[1]: network management, telecommunication, ment. Researchers have followed suitable ap- tackle the problem of modeling mobile kinds of properties and constraints to add new
electronic commerce, data mining, multime- proaches in the antecedent paradigm for mobile agent applications using UML [4]; the semantics to elements. Thus, based on the ex-
agent modeling in order to define a modeling standard language of object oriented par- pressivity and extensibility of UML, research-
dia, climate environment, weather, e-learning,
language that has the ability to play in the mo- adigm. ers have adopted it and introduced to it the ap-
semantic web services, parallel processing, hu-
bile agent paradigm the same role that UML is ●● Formal Approaches: these approaches propriate artefacts in order to support the new
man tracking, geographic information systems
already playing in the object oriented paradigm. provide formal models for mobile agent paradigm. So, we present here some proposals
and e-health monitoring systems.
In general, the life cycle of development of mo-
bile agent-based software systems is composed
3.3. Modeling Challenges and of three phases: the analysis phase, design
Shortcomings phase, and implementation phase. Actually,
in these systems the later phase has been en-
Mobility is the novel concept, which character- riched recently in a satisfactory way by a great
izes mobile agent-based software systems. Its number of different platforms that support and
modeling represents a great challenge because implement the paradigm of mobile agents. In
it produces complicated dynamic reconfigura- contrast, the proposed approaches for the anal-
tion of the system in question during its exe- ysis and design of mobile agent-based software
cution. Thus, providing an approach that has systems are not widespread, they are limited in
the capability of designing, this is not trivial. In scope and incomplete in themselves. Figure 2
fact, the approach must give answers to ques- represents the current development process life-
tions that arise from the use of mobile agents cycle of mobile agent-based software systems. Figure 3. The three categories of existing modeling proposals for mobile agent-based systems.
154 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 155

that are qualified to be complete languages, i.e. propose Mobile-Agent Modeling with In addition to these languages, some propos- mathematical analysis. Actually, multiple for-
which consider multiple views of the system. UML (MAM-UML) to define a unique als are very interesting. However, they rep- malisms have been used for specifying mobile
UML extension gathering and integrating resent partial approaches since they do not agents, which are inspired strongly by two ef-
●● AUML (Agent UML): Bauer et al. [22] pro- the features of many UML extension-based address all the views of a mobile agent-based ficient formalisms; process algebras and petri
pose Agent UML (AUML) which can be approaches. The authors have defined a set software. Klein et al. [29] propose an exten- nets. We recall some of them in this sub-section.
considered as the best-known UML-based of views and models (organizational, life sion to UML for mobile agents; however, their
extension for agents. AUML offers the pos- In the context of process algebras, Milner [34]
cycle, interaction and mobility views) ma- approach is limited to a specific mobile agent proposed the π-calculus language for model-
sibility of describing the internal behavior terialized by an UML profile called MAM- platform (Grasshopper platform) and to a spe-
of an agent as well as its external behavior. ing mobile agents. It offers the possibility of
UML. This profile describes in details cific class of mobile agent applications. In ad-
The core parts of AUML are agent class di- link movement in virtual linked processes to
multiple interesting features of a mobile dition, they do not provide mobility description
agrams and interaction protocol diagrams describe the mobility and a wide range of the
agent-based application such as itinerary for all views and aspects of systems. We may
which extend respectively UML class di- proposed approaches are based on this formal-
of a mobile agent, the different types of also cite the works of [30] through which the
agrams and sequence diagrams. It was ism. Jezic and Lovrek [35] have presented an
movement and the tasks plan. authors present an approach to model the spe-
initially developed to deal only with mut- approach to formal specification and verifica-
cific characterization of mobile agents by an
li-agent systems, but its deployment and ●● M-UML (Mobile UML): Saleh and El- tion of agent migration and communication in
extension of UML 1.5 activity diagrams. Bahri
activity diagrams was extended thereafter Morr [27] propose a complete extension a mobile agent network using the π-calculus
et al. [31] propose in their paper an extension
[21], [23] to support modeling of the agent of UML1.4 standard called (M-UML), formalism. Fournet et al. [36] have proposed a
of the most important UML 2.0 diagrams to
mobility. The novel notations introduced where all diagrams have been extended to calculus for mobile agents with a precise defi-
model the mobile agent-based software systems
by the AUML deployment diagram exten- deal with the modeling of mobile agent- nition for migration, failure, and failure detec-
with the objective to tackle the new concepts
sion facilitate the modeling of an agent mi- based software systems. Throughout an tion. They use the distributed join-calculus that
introduced by these systems such as migration,
gration to different nodes and the locations illustrative example, the authors intro- is as expressive as the asynchronous π-calcu-
cloning and the locations. Kusek and Jezic [32]
concerned by the move. Furthermore, the duce and describe the extensions made in lus to encode their distributed calculus. This
present a proposal for modeling agent mobility
issue of time can be expressed by AUML each diagram UML in order to model the last supports explicit locations and primitives
with UML sequence diagrams; they are focused
activity diagrams, i.e. when a mobile agent aspects of mobility. The authors omit the for mobility, which allows expressing mobile
on capturing agent creation, mobility paths and
has to migrate. Multiple concepts and nota- security mechanisms and their modeling. agents moving between nodes. Oquendo [37]
current agent location in order to model agent
tions have been developed in this language The authors focus only on the modeling proposes the π-ADL that has been designed in
mobility.
[24], but the essential features of mobile of mobility feature. The approach is ex- the ArchWare European Project (http://www.
agent based applications are not taken into plained sufficiently, however its experi- Despite these approaches have tried to support arch-ware Oquendo.org/) to address specifica-
account. The mobility, for example, is stat- mentation is not enough to judge its qual- the modeling mechanism for mobile agent- tion of dynamic and mobile architectures. It is
ically described and the security is entirely ity. based software systems, these techniques are a theoretically well-founded formal language,
omitted. brought often from the field of multi-agents sys- based on the higher-order typed π-calculus that
●● MA-UML (Mobile Agent UML): Hachicha tems which concentrate more on the expression can be used for specifying static, dynamic and
●● AML (Agent Modeling Language): Cer- et al. [7] have proposed seven diagrams of the inter-agents relations. The expression of mobile architectures and is illustrated through
venka et al. [8], [25] introduce Agent Mod- based on the extension of UML state- the mobility (and its results such as security) case studies. Other papers propose formalisms
eling Language (AML); an extension of chart and activity diagrams, and AUML from the point of view of the distributed sys- for description of mobile agents. Schmitt &
UML that incorporates different concepts sequence diagram. The authors claim that tems is not described enough to provide a real, Stefani [38] present a π-calculus extension to
and features of multi agent systems. AML their contribution tackles and surmounts efficient and robust UML-based approaches for specify the mobility of the agents. In the paper
is currently considered as the most com- multiple insufficiencies not covered by modeling mobile agent-based software systems of Sewell et al. [39], an architecture of commu-
plete published agent-oriented modeling the other extensions. They have developed as in object-oriented software systems with nication between mobile agents is formalized
language. It covers modeling of the static also a software CASE Tool named MAMT UML. using a π-calculus extension. Bettini et al. [33]
structure, dynamics and behavior of enti- (Mobile Agent Modeling Tool) [28] to sup- formalize the properties of mobile agent sys-
ties in a multi-agent system. AML attempts port the use of MA-UML profile and the tems, the properties of the agents are expressed
also to provide a modeling support for the automatic generation of Java code from 4.2. Formal Approaches dynamically according to the evolution of their
mobility by recognizing and identifying its diagrams which will significantly sim- localizations. Cardelli and Gordon [40] have
the properties of the agent environment, In software engineering, formal methods are a
plify the modeling and implementation of proposed mobile ambient which is a calculus
host, and comportment (move and clone). particular kind of mathematically based tech-
mobile agent-based applications. We have for describing the movement of processes and
The authors consider the mobility only niques for the specification, development and
found suddenly that MA-UML is the last also devices. Other formal approaches for cap-
at the implementation level when multi- verification of software systems [33]. Using
developed language in the recent literature formal approaches, to specify and to verify the turing the mobility are developed in [41] and
-agent system is deployed. This makes it (which addresses different views of mobile [42].
functioning of mobile agent software systems
unsuitable for modeling real mobile agent agent-based applications). This shows that during the earliest phases of the development For the purpose of specifying and verifying
based applications. the research community has abandoned life cycle seems to be very attractive. It must mobile agent systems, Petri nets and their ex-
●● MAM-UML (Mobile-Agent Modeling partially this field in spite of their benefi- contribute to the reliability and robustness of tensions have been also widely used because
with UML): Belloni and Marcos [3], [26] cial effects. the design, due to the power of the appropriate these formalisms allow a clear and rigorous
154 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 155

that are qualified to be complete languages, i.e. propose Mobile-Agent Modeling with In addition to these languages, some propos- mathematical analysis. Actually, multiple for-
which consider multiple views of the system. UML (MAM-UML) to define a unique als are very interesting. However, they rep- malisms have been used for specifying mobile
UML extension gathering and integrating resent partial approaches since they do not agents, which are inspired strongly by two ef-
●● AUML (Agent UML): Bauer et al. [22] pro- the features of many UML extension-based address all the views of a mobile agent-based ficient formalisms; process algebras and petri
pose Agent UML (AUML) which can be approaches. The authors have defined a set software. Klein et al. [29] propose an exten- nets. We recall some of them in this sub-section.
considered as the best-known UML-based of views and models (organizational, life sion to UML for mobile agents; however, their
extension for agents. AUML offers the pos- In the context of process algebras, Milner [34]
cycle, interaction and mobility views) ma- approach is limited to a specific mobile agent proposed the π-calculus language for model-
sibility of describing the internal behavior terialized by an UML profile called MAM- platform (Grasshopper platform) and to a spe-
of an agent as well as its external behavior. ing mobile agents. It offers the possibility of
UML. This profile describes in details cific class of mobile agent applications. In ad-
The core parts of AUML are agent class di- link movement in virtual linked processes to
multiple interesting features of a mobile dition, they do not provide mobility description
agrams and interaction protocol diagrams describe the mobility and a wide range of the
agent-based application such as itinerary for all views and aspects of systems. We may
which extend respectively UML class di- proposed approaches are based on this formal-
of a mobile agent, the different types of also cite the works of [30] through which the
agrams and sequence diagrams. It was ism. Jezic and Lovrek [35] have presented an
movement and the tasks plan. authors present an approach to model the spe-
initially developed to deal only with mut- approach to formal specification and verifica-
cific characterization of mobile agents by an
li-agent systems, but its deployment and ●● M-UML (Mobile UML): Saleh and El- tion of agent migration and communication in
extension of UML 1.5 activity diagrams. Bahri
activity diagrams was extended thereafter Morr [27] propose a complete extension a mobile agent network using the π-calculus
et al. [31] propose in their paper an extension
[21], [23] to support modeling of the agent of UML1.4 standard called (M-UML), formalism. Fournet et al. [36] have proposed a
of the most important UML 2.0 diagrams to
mobility. The novel notations introduced where all diagrams have been extended to calculus for mobile agents with a precise defi-
model the mobile agent-based software systems
by the AUML deployment diagram exten- deal with the modeling of mobile agent- nition for migration, failure, and failure detec-
with the objective to tackle the new concepts
sion facilitate the modeling of an agent mi- based software systems. Throughout an tion. They use the distributed join-calculus that
introduced by these systems such as migration,
gration to different nodes and the locations illustrative example, the authors intro- is as expressive as the asynchronous π-calcu-
cloning and the locations. Kusek and Jezic [32]
concerned by the move. Furthermore, the duce and describe the extensions made in lus to encode their distributed calculus. This
present a proposal for modeling agent mobility
issue of time can be expressed by AUML each diagram UML in order to model the last supports explicit locations and primitives
with UML sequence diagrams; they are focused
activity diagrams, i.e. when a mobile agent aspects of mobility. The authors omit the for mobility, which allows expressing mobile
on capturing agent creation, mobility paths and
has to migrate. Multiple concepts and nota- security mechanisms and their modeling. agents moving between nodes. Oquendo [37]
current agent location in order to model agent
tions have been developed in this language The authors focus only on the modeling proposes the π-ADL that has been designed in
mobility.
[24], but the essential features of mobile of mobility feature. The approach is ex- the ArchWare European Project (http://www.
agent based applications are not taken into plained sufficiently, however its experi- Despite these approaches have tried to support arch-ware Oquendo.org/) to address specifica-
account. The mobility, for example, is stat- mentation is not enough to judge its qual- the modeling mechanism for mobile agent- tion of dynamic and mobile architectures. It is
ically described and the security is entirely ity. based software systems, these techniques are a theoretically well-founded formal language,
omitted. brought often from the field of multi-agents sys- based on the higher-order typed π-calculus that
●● MA-UML (Mobile Agent UML): Hachicha tems which concentrate more on the expression can be used for specifying static, dynamic and
●● AML (Agent Modeling Language): Cer- et al. [7] have proposed seven diagrams of the inter-agents relations. The expression of mobile architectures and is illustrated through
venka et al. [8], [25] introduce Agent Mod- based on the extension of UML state- the mobility (and its results such as security) case studies. Other papers propose formalisms
eling Language (AML); an extension of chart and activity diagrams, and AUML from the point of view of the distributed sys- for description of mobile agents. Schmitt &
UML that incorporates different concepts sequence diagram. The authors claim that tems is not described enough to provide a real, Stefani [38] present a π-calculus extension to
and features of multi agent systems. AML their contribution tackles and surmounts efficient and robust UML-based approaches for specify the mobility of the agents. In the paper
is currently considered as the most com- multiple insufficiencies not covered by modeling mobile agent-based software systems of Sewell et al. [39], an architecture of commu-
plete published agent-oriented modeling the other extensions. They have developed as in object-oriented software systems with nication between mobile agents is formalized
language. It covers modeling of the static also a software CASE Tool named MAMT UML. using a π-calculus extension. Bettini et al. [33]
structure, dynamics and behavior of enti- (Mobile Agent Modeling Tool) [28] to sup- formalize the properties of mobile agent sys-
ties in a multi-agent system. AML attempts port the use of MA-UML profile and the tems, the properties of the agents are expressed
also to provide a modeling support for the automatic generation of Java code from 4.2. Formal Approaches dynamically according to the evolution of their
mobility by recognizing and identifying its diagrams which will significantly sim- localizations. Cardelli and Gordon [40] have
the properties of the agent environment, In software engineering, formal methods are a
plify the modeling and implementation of proposed mobile ambient which is a calculus
host, and comportment (move and clone). particular kind of mathematically based tech-
mobile agent-based applications. We have for describing the movement of processes and
The authors consider the mobility only niques for the specification, development and
found suddenly that MA-UML is the last also devices. Other formal approaches for cap-
at the implementation level when multi- verification of software systems [33]. Using
developed language in the recent literature formal approaches, to specify and to verify the turing the mobility are developed in [41] and
-agent system is deployed. This makes it (which addresses different views of mobile [42].
functioning of mobile agent software systems
unsuitable for modeling real mobile agent agent-based applications). This shows that during the earliest phases of the development For the purpose of specifying and verifying
based applications. the research community has abandoned life cycle seems to be very attractive. It must mobile agent systems, Petri nets and their ex-
●● MAM-UML (Mobile-Agent Modeling partially this field in spite of their benefi- contribute to the reliability and robustness of tensions have been also widely used because
with UML): Belloni and Marcos [3], [26] cial effects. the design, due to the power of the appropriate these formalisms allow a clear and rigorous
156 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 157

representation of complex behavior of mobile order to enable automatic reasoning on these ●● Execution Environment; this feature de- ●● Simplicity and clarity; it is a feature that
agents. In this context, Xu and Deng [43] have systems. scribes the environment of execution, i.e. determines the acceptability of the lan-
tried to model mobile agents with higher level places, regions, and agent platforms. guage by users.
There are also other approaches which propose
petri network. Xu et al. [44] have proposed in to use design patterns to develop mobile agent ●● Mobility; this is the most important fea- ●● Process (methodology); a methodology
their paper an approach for formal modeling software systems such as [52], [53] and [54]. In ture that must be described in details by a that accompanies a modeling language can
of logical agent mobility (LAM) using predi- fact, many design patterns have been identified modeling language. It is supported by the enhance largely the development process.
cate/transition (PrT) nets. They present a mo- in the literature for mobile agents such as agent migration, invocation and remote cloning
bile agent system as a set of agent spaces that patterns and interaction patterns. Some of them mechanisms and it is related to the itiner-
is explicitly abstracted to be a component, and ary, and location concepts. 5.2. Comparison Results
are described using UML while others are not.
agents could migrate from one space to another.
They present a case study of modeling and ana- ●● Interaction; this feature illustrates the in- Table 1 illustrates the notation we have used in
lyzing an information retrieval system with mo- teraction mechanisms adopted in different our comparison, which was inspired by Crane
bile agents. Also, Xu and Shatz [45] have tried 5. Comparison Framework communication acts, e.g. communication and Dingel, 2005 [56].
to design mobile agent using G-net model. It synchronous or asynchronous.
consists of using the high level Petri net G-net 5.1. Comparison Criteria ●● Security; this feature has a major impact Table 1. Legend of comparison.
model to design agents. This approach profits on the reliability of the software. The mod- Symbol Description
As we said at the beginning of the article, we eling language must allow describing the
from the Petri net formalism which is a mature will take interest only in modeling languages Unknown; not enough
formal model in terms of graphical representa- security mechanisms adopted, i.e. how to
since other approaches are considered as partial protect entities of the application from ma-
information to determine
tion, mathematical description, and simulation contribution. In fact, to model the conceptual
tool. licious use. Presumably not supported
level of mobile agents-based software systems,
multiple features and characteristics should be Other general features are inspired by the eval- Definitely not supported
present in the tool developed to support anal- uation surveys of modeling languages, espe-
4.3. Hybrid Approaches cially by the work of Berard [57]. Partially supported
ysis and design of such systems. Furthermore,
The combination of visual modeling tools of Chhetri et al. [55] have proposed an interest- ●● Supported tools; a good modeling lan- Supported
mobile agent-based software systems and for- ing ontology to describe the abstract concepts guage must be supported by CASE tool to
mal methods has received great attention lately. and inter-relationships required to model agent facilitate their use and productivity. Table 2 below summarizes the comparison of
It provides powerful modeling languages for mobility in order to provide conceptual level ●● Theoretical foundation; a modeling lan- five chosen modeling languages which are de-
specifying and verifying these systems, taking support for mobile agent applications. Analo- guage that has a solid theoretical founda- fined to model mobile agent-based software
into account the weaknesses of visual models gously, Melomey et al. [6] have also proposed tion is considered as a powerful language. systems.
in formal semantics due to their semi-formal another ontology for the same purpose. Based
character, and the weaknesses of formal mod- on these two ontologies and by reviewing the
els in graphical notations. Hence, in his thesis, literature essentially [3], [7], [28], and [56], we Table 2. Comparison between different UML extensions for mobility.
Bahri [46] proposes a hybrid approach to model define some requirements which we believe
mobile agent software systems; this approach is they represent the key of success factors of Modeling languages AUML AML MAM-UML M-UML MA-UML
based on an UML extension and Petri Nested each modeling approach developed for mobile Internal structure
Nets formalism. It takes advantage of UML, agent-based applications.
and remedies its insufficiency in terms of se- Life cycle
●● Internal structure; this feature illustrates
mantics by using Nested Petri Nets in order to the internal structure of each agent (includ- Execution needs

Basic features
enable formal analysis of these models. Knapp ing mobile agents) evolving in the applica-
et al. [47] have combined a semi-formal model- tion, i.e. its attributes such as pro-active- Execution environment
ing technique with formal semantics and refine- ness, reactiveness, autonomy, authority.
ment considering an extension of UML state Mobility
machines for mobile objects and MTLA [48]. ●● Life cycle; this feature determines the be-
havior of an agent; in other words, the mo- Interaction
Latella et al. [49] have proposed an extension
of UML statecharts for mobile computations bility path (if it exists) and the tasks plan
Security
accompanied with formal semantics. Belghiat (describes the plan of tasks execution of
et al. [50] have proposed a combined approach different agents at different locations). Theoretical foundation

Other features
based on an extension of UML and the π-cal- ●● Execution needs; this feature illustrates the Simplicity and clarity
culus for modeling and verifying mobile agent- execution needs for each agent (including
based applications. Belghiat et al. [51] have mobile agents) evolving in the application, Process (methodology)
also developed an automatic mapping between e.g. the resources and services they need,
mobile class diagrams and OWL ontologies in and the roles they will play. Supported tools
156 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 157

representation of complex behavior of mobile order to enable automatic reasoning on these ●● Execution Environment; this feature de- ●● Simplicity and clarity; it is a feature that
agents. In this context, Xu and Deng [43] have systems. scribes the environment of execution, i.e. determines the acceptability of the lan-
tried to model mobile agents with higher level places, regions, and agent platforms. guage by users.
There are also other approaches which propose
petri network. Xu et al. [44] have proposed in to use design patterns to develop mobile agent ●● Mobility; this is the most important fea- ●● Process (methodology); a methodology
their paper an approach for formal modeling software systems such as [52], [53] and [54]. In ture that must be described in details by a that accompanies a modeling language can
of logical agent mobility (LAM) using predi- fact, many design patterns have been identified modeling language. It is supported by the enhance largely the development process.
cate/transition (PrT) nets. They present a mo- in the literature for mobile agents such as agent migration, invocation and remote cloning
bile agent system as a set of agent spaces that patterns and interaction patterns. Some of them mechanisms and it is related to the itiner-
is explicitly abstracted to be a component, and ary, and location concepts. 5.2. Comparison Results
are described using UML while others are not.
agents could migrate from one space to another.
They present a case study of modeling and ana- ●● Interaction; this feature illustrates the in- Table 1 illustrates the notation we have used in
lyzing an information retrieval system with mo- teraction mechanisms adopted in different our comparison, which was inspired by Crane
bile agents. Also, Xu and Shatz [45] have tried 5. Comparison Framework communication acts, e.g. communication and Dingel, 2005 [56].
to design mobile agent using G-net model. It synchronous or asynchronous.
consists of using the high level Petri net G-net 5.1. Comparison Criteria ●● Security; this feature has a major impact Table 1. Legend of comparison.
model to design agents. This approach profits on the reliability of the software. The mod- Symbol Description
As we said at the beginning of the article, we eling language must allow describing the
from the Petri net formalism which is a mature will take interest only in modeling languages Unknown; not enough
formal model in terms of graphical representa- security mechanisms adopted, i.e. how to
since other approaches are considered as partial protect entities of the application from ma-
information to determine
tion, mathematical description, and simulation contribution. In fact, to model the conceptual
tool. licious use. Presumably not supported
level of mobile agents-based software systems,
multiple features and characteristics should be Other general features are inspired by the eval- Definitely not supported
present in the tool developed to support anal- uation surveys of modeling languages, espe-
4.3. Hybrid Approaches cially by the work of Berard [57]. Partially supported
ysis and design of such systems. Furthermore,
The combination of visual modeling tools of Chhetri et al. [55] have proposed an interest- ●● Supported tools; a good modeling lan- Supported
mobile agent-based software systems and for- ing ontology to describe the abstract concepts guage must be supported by CASE tool to
mal methods has received great attention lately. and inter-relationships required to model agent facilitate their use and productivity. Table 2 below summarizes the comparison of
It provides powerful modeling languages for mobility in order to provide conceptual level ●● Theoretical foundation; a modeling lan- five chosen modeling languages which are de-
specifying and verifying these systems, taking support for mobile agent applications. Analo- guage that has a solid theoretical founda- fined to model mobile agent-based software
into account the weaknesses of visual models gously, Melomey et al. [6] have also proposed tion is considered as a powerful language. systems.
in formal semantics due to their semi-formal another ontology for the same purpose. Based
character, and the weaknesses of formal mod- on these two ontologies and by reviewing the
els in graphical notations. Hence, in his thesis, literature essentially [3], [7], [28], and [56], we Table 2. Comparison between different UML extensions for mobility.
Bahri [46] proposes a hybrid approach to model define some requirements which we believe
mobile agent software systems; this approach is they represent the key of success factors of Modeling languages AUML AML MAM-UML M-UML MA-UML
based on an UML extension and Petri Nested each modeling approach developed for mobile Internal structure
Nets formalism. It takes advantage of UML, agent-based applications.
and remedies its insufficiency in terms of se- Life cycle
●● Internal structure; this feature illustrates
mantics by using Nested Petri Nets in order to the internal structure of each agent (includ- Execution needs

Basic features
enable formal analysis of these models. Knapp ing mobile agents) evolving in the applica-
et al. [47] have combined a semi-formal model- tion, i.e. its attributes such as pro-active- Execution environment
ing technique with formal semantics and refine- ness, reactiveness, autonomy, authority.
ment considering an extension of UML state Mobility
machines for mobile objects and MTLA [48]. ●● Life cycle; this feature determines the be-
havior of an agent; in other words, the mo- Interaction
Latella et al. [49] have proposed an extension
of UML statecharts for mobile computations bility path (if it exists) and the tasks plan
Security
accompanied with formal semantics. Belghiat (describes the plan of tasks execution of
et al. [50] have proposed a combined approach different agents at different locations). Theoretical foundation

Other features
based on an extension of UML and the π-cal- ●● Execution needs; this feature illustrates the Simplicity and clarity
culus for modeling and verifying mobile agent- execution needs for each agent (including
based applications. Belghiat et al. [51] have mobile agents) evolving in the application, Process (methodology)
also developed an automatic mapping between e.g. the resources and services they need,
mobile class diagrams and OWL ontologies in and the roles they will play. Supported tools
158 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 159

5.3. Comparison Discussion ronment diagram” to design the environ- ●● The security feature is partially supported and “Lifecycle diagram” makes the defi-
ment of execution, however, it represents by MA-UML by adding some properties nition of another diagram “MA Activity di-
The table above (Table 2) summarizes the mod- only the static structure of the application (user authentication, user authorization, agram” redundant.
eling capabilities of each language with regard and there is no mention about the deploy- access rights, and authentication key) in its ●● We agree that the MAM-UML is very well
to different features that we have proposed to ment of agents. MAM-UML proposes in “Mobile Agent Diagram” in order to spec- organized by its different views. However,
check. The following lines discuss the results its “Mobility View” to use deployment ify this feature. The other approaches do this profile has not been experimented suf-
of the comparison: and component diagrams to design the ex- not support it at all.
ecution environment. The execution envi- ficiently and it does not provide illustrative
●● Internal structure of mobile agents has ●● With regards to the general features which examples, which hinders largely its usage
ronment is presumably not supported by
been taken into account entirely in MA- characterize a good language, there are by users.
AML.
UML. Actually, a full diagram “Mobile many attempts to develop theoretical foun-
●● The Mobility of mobile agents has been ●● AUML and AML are not appropriate to
Agent Diagram” is advocated to fully dation, especially for AUML and M-UML.
addressed in all the above proposed lan- model mobile agent-based software sys-
specify the internal structure of mobile This is due to the importance given to
guages with varying in-depth degrees. In tems. It is clear that the two languages were
agents evolved in the applications. It is an enable the possibility of verification and
fact, two extensions “activity diagram” developed firstly to model multi-agent
extended version of AUML class diagram reasoning about the diagrams of these lan-
and “deployment diagram” have been systems. After that, attempts were made to
which has additional properties for model- guages.
defined by AUML in order to permit the add to them some features to model mo-
ing mobile agents (e.g. authentication, his-
modeling of mobile agent-based systems. ●● The different languages are simple to use bile agent-based software systems which,
tory, itinerary). M-UML, in its turn, and to
MAM-UML provides a full view “Mobil- except for MAM-UML. We cannot deter- we have argued, are not sufficient.
a lesser extent, proposes an extended ver-
ity View” to fully support the mobility fea- mine its clarity due to the lack of the ex-
sion of class diagrams named as “Mobile
ture. M-UML provides a full support of the perimentation (i.e. examples).
Class Diagram” in order to describe the
internal structure of mobile agents. AUML mobility; it defines multiple notations and ●● No language between the above is com- 6. Conclusion
and AML support the internal structure of concepts to model all aspects of mobility bined with a process.
only stationary agents while MAM-UML at various views. MA-UML provides three In this paper we have presented a comparative
diagrams to model the mobility; the “Itin- ●● AUML, AML and MA-UML are supported framework of the modeling approaches of mo-
does not support it at all. by CASE tools which facilitate the devel-
erary diagram” to describe the tasks of bile agent-based software systems which im-
●● The lifecycle of mobile agents is sup- the agent and the locations where they are opment of their diagrams. M-UML is pre- proves the comprehension of previous work on
ported in MAM-UML, MA-UML, and in performed. The “Navigation Diagram” sumably not supported (although, there are the topic. After a quick overview of the para-
M-UML. In fact, MAM-UML proposes a which is a variant use of a statechart di- attempts on their statechart diagram) while digm concepts and architecture, we present and
full view “Life-cycle View” to capture the agram to describe the mobile agent travel MAM-UML is without any CASE tool. identify challenges and shortcomings which
lifecycle of the mobile agent. The view is planning. The “lifecycle diagram” which In short, here is the resulting evaluation of the need to be overcomed to model mobile agents-
described by using of Interaction, State- is used to specify different states of the languages: based systems and to develop powerful model-
charts and Activity diagrams. MA-UML mobile agent in different locations. AML ing tools for them. After that, we have proposed
and M-UML extend Statechart diagrams supports partially the mobility feature; it is ●● We can judge that M-UML is the sim- to classify the approaches in three large cate-
with new stereotypes and tagged values to in the deployment phase where AML pro- plest and best adapted language for mo- gories according to some factors: UML-based
describe all the states reached by the mo- poses some notations and elements in or- bile agent-based software systems, which approaches, Formal approaches, and Hybrid
bile agent during its lifetime. The feature is der to take into account the mobility; how- largely supports the modeling of new approaches. We argue that the combination of
omitted in AUML and AML. ever this is not sufficient because there are features (especially the mobility) of the visual (so-called informal) approaches which
no details about modeling this important paradigm and the discussion lines above appeal to engineer’s attention, and formal ap-
●● Execution needs are supported completely motivate our opinion. We think that an ex-
by MAM-UML and partially supported feature. proaches, which are analyzable, are promising
tension of M-UML, which takes into ac- and likely upcoming approaches. Finally, some
by MA-UML. Actually, MAM-UML pro- ●● Interaction feature for mobile agents is count the above concerns, could present a
vides a full view “Organizational View” supported in MAM-UML, M-UML and remarks must be drawn from our analysis and
complete and sufficient tool. evaluation of the mobile agent paradigm and its
to describe the execution needs of mobile MA-UML. MAM-UML provides a full
agents using Class and Object diagrams. view “Interaction View” to model this fea- ●● MA-UML is also interesting for these sys- modeling approaches:
MA-UML takes into account this feature in ture; the view contains collaborations and tems, but the missing provision of a mech-
anism for modeling the architecture of ●● Mobile agents have generated consider-
its “Mobile Agent Diagram”. The feature interaction diagrams. M-UML provides
the execution environment will hinder its able excitement in the research commu-
is omitted in AUML, AML and M-UML. two extensions “sequence diagram” and
practical use. In addition, there is a redun- nity; but they have not translated into a
“collaboration diagram” to model the
●● Execution Environment is supported by dancy in representing information. In fact, significant number of real-world practical
mobile interactions. MA-UML provides a
AUML using an extended “deployment di- full diagram “Mobile Agent Sequence Di- MA-UML proposes two diagrams “Itiner- applications.
agram”. M-UML supports also this feature agram” to model interactions between dif- ary Diagram” and “Navigation diagram” ●● There are certainly still more approaches
using an extended version of “component ferent mobile agents. AUML and AML do to describe the same information which is for modeling mobile agent-based software
diagram” and “deployment diagram”. not support mobile interactions but support the agent travel planning. Also, the com- systems and it is impossible to recall them
MA-UML provides a full diagram “Envi- simple interactions between agents. bined use of the “Navigation diagram” here.
158 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 159

5.3. Comparison Discussion ronment diagram” to design the environ- ●● The security feature is partially supported and “Lifecycle diagram” makes the defi-
ment of execution, however, it represents by MA-UML by adding some properties nition of another diagram “MA Activity di-
The table above (Table 2) summarizes the mod- only the static structure of the application (user authentication, user authorization, agram” redundant.
eling capabilities of each language with regard and there is no mention about the deploy- access rights, and authentication key) in its ●● We agree that the MAM-UML is very well
to different features that we have proposed to ment of agents. MAM-UML proposes in “Mobile Agent Diagram” in order to spec- organized by its different views. However,
check. The following lines discuss the results its “Mobility View” to use deployment ify this feature. The other approaches do this profile has not been experimented suf-
of the comparison: and component diagrams to design the ex- not support it at all.
ecution environment. The execution envi- ficiently and it does not provide illustrative
●● Internal structure of mobile agents has ●● With regards to the general features which examples, which hinders largely its usage
ronment is presumably not supported by
been taken into account entirely in MA- characterize a good language, there are by users.
AML.
UML. Actually, a full diagram “Mobile many attempts to develop theoretical foun-
●● The Mobility of mobile agents has been ●● AUML and AML are not appropriate to
Agent Diagram” is advocated to fully dation, especially for AUML and M-UML.
addressed in all the above proposed lan- model mobile agent-based software sys-
specify the internal structure of mobile This is due to the importance given to
guages with varying in-depth degrees. In tems. It is clear that the two languages were
agents evolved in the applications. It is an enable the possibility of verification and
fact, two extensions “activity diagram” developed firstly to model multi-agent
extended version of AUML class diagram reasoning about the diagrams of these lan-
and “deployment diagram” have been systems. After that, attempts were made to
which has additional properties for model- guages.
defined by AUML in order to permit the add to them some features to model mo-
ing mobile agents (e.g. authentication, his-
modeling of mobile agent-based systems. ●● The different languages are simple to use bile agent-based software systems which,
tory, itinerary). M-UML, in its turn, and to
MAM-UML provides a full view “Mobil- except for MAM-UML. We cannot deter- we have argued, are not sufficient.
a lesser extent, proposes an extended ver-
ity View” to fully support the mobility fea- mine its clarity due to the lack of the ex-
sion of class diagrams named as “Mobile
ture. M-UML provides a full support of the perimentation (i.e. examples).
Class Diagram” in order to describe the
internal structure of mobile agents. AUML mobility; it defines multiple notations and ●● No language between the above is com- 6. Conclusion
and AML support the internal structure of concepts to model all aspects of mobility bined with a process.
only stationary agents while MAM-UML at various views. MA-UML provides three In this paper we have presented a comparative
diagrams to model the mobility; the “Itin- ●● AUML, AML and MA-UML are supported framework of the modeling approaches of mo-
does not support it at all. by CASE tools which facilitate the devel-
erary diagram” to describe the tasks of bile agent-based software systems which im-
●● The lifecycle of mobile agents is sup- the agent and the locations where they are opment of their diagrams. M-UML is pre- proves the comprehension of previous work on
ported in MAM-UML, MA-UML, and in performed. The “Navigation Diagram” sumably not supported (although, there are the topic. After a quick overview of the para-
M-UML. In fact, MAM-UML proposes a which is a variant use of a statechart di- attempts on their statechart diagram) while digm concepts and architecture, we present and
full view “Life-cycle View” to capture the agram to describe the mobile agent travel MAM-UML is without any CASE tool. identify challenges and shortcomings which
lifecycle of the mobile agent. The view is planning. The “lifecycle diagram” which In short, here is the resulting evaluation of the need to be overcomed to model mobile agents-
described by using of Interaction, State- is used to specify different states of the languages: based systems and to develop powerful model-
charts and Activity diagrams. MA-UML mobile agent in different locations. AML ing tools for them. After that, we have proposed
and M-UML extend Statechart diagrams supports partially the mobility feature; it is ●● We can judge that M-UML is the sim- to classify the approaches in three large cate-
with new stereotypes and tagged values to in the deployment phase where AML pro- plest and best adapted language for mo- gories according to some factors: UML-based
describe all the states reached by the mo- poses some notations and elements in or- bile agent-based software systems, which approaches, Formal approaches, and Hybrid
bile agent during its lifetime. The feature is der to take into account the mobility; how- largely supports the modeling of new approaches. We argue that the combination of
omitted in AUML and AML. ever this is not sufficient because there are features (especially the mobility) of the visual (so-called informal) approaches which
no details about modeling this important paradigm and the discussion lines above appeal to engineer’s attention, and formal ap-
●● Execution needs are supported completely motivate our opinion. We think that an ex-
by MAM-UML and partially supported feature. proaches, which are analyzable, are promising
tension of M-UML, which takes into ac- and likely upcoming approaches. Finally, some
by MA-UML. Actually, MAM-UML pro- ●● Interaction feature for mobile agents is count the above concerns, could present a
vides a full view “Organizational View” supported in MAM-UML, M-UML and remarks must be drawn from our analysis and
complete and sufficient tool. evaluation of the mobile agent paradigm and its
to describe the execution needs of mobile MA-UML. MAM-UML provides a full
agents using Class and Object diagrams. view “Interaction View” to model this fea- ●● MA-UML is also interesting for these sys- modeling approaches:
MA-UML takes into account this feature in ture; the view contains collaborations and tems, but the missing provision of a mech-
anism for modeling the architecture of ●● Mobile agents have generated consider-
its “Mobile Agent Diagram”. The feature interaction diagrams. M-UML provides
the execution environment will hinder its able excitement in the research commu-
is omitted in AUML, AML and M-UML. two extensions “sequence diagram” and
practical use. In addition, there is a redun- nity; but they have not translated into a
“collaboration diagram” to model the
●● Execution Environment is supported by dancy in representing information. In fact, significant number of real-world practical
mobile interactions. MA-UML provides a
AUML using an extended “deployment di- full diagram “Mobile Agent Sequence Di- MA-UML proposes two diagrams “Itiner- applications.
agram”. M-UML supports also this feature agram” to model interactions between dif- ary Diagram” and “Navigation diagram” ●● There are certainly still more approaches
using an extended version of “component ferent mobile agents. AUML and AML do to describe the same information which is for modeling mobile agent-based software
diagram” and “deployment diagram”. not support mobile interactions but support the agent travel planning. Also, the com- systems and it is impossible to recall them
MA-UML provides a full diagram “Envi- simple interactions between agents. bined use of the “Navigation diagram” here.
160 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 161

●● The proposed approaches are not com- It is hoped that the paper will stimulate further [10] B. Bauer and J. P. Muller, "Methodologies and [24] B. Bauer and J. Odell, "UML 2.0 and agents: how
plete in themselves, and their authors, to work in a field whose importance will increas- modeling languages", in Agent-Based Software to build agent-based systems with the new UML
demonstrate the applicability of their ap- ingly be recognized. Development, M. Luck, R. Ashri M. D'Inverno standard", Engineering Applications of Artificial
Eds. Artech House Publishers, Boston, London, Intelligence, vol. 18, 141–157, 2005.
proaches, present easy illustrative exam- 2004. http://dx.doi.org/10.1016/j.engappai.2004.11.016
ples that are not complex enough to show
the weaknesses of the approaches. So, it is [11] D. Milojicic et al., "The OMG Mobile Agent [25] R. Cervenka et al., "AML: Agent Modeling
Acknowledgements System Interoperability Facility", Personal and Language Toward Industry-Grade Agent-Based
necessary to challenge all these modeling
Ubiquitous Computing, vol. 2, no. 2, pp. 117–129, Modeling", in Agent-Oriented Software Engi-
languages against real world applications The authors would like to thank Mr. Rachid June 1998. neering V: 5th International Workshop, J. Odell,
to verify their completeness. Echahed (CNRS and University of Grenoble, http://dx.doi.org/10.1007/bfb0057648 P. Gioginin, and J. P. Muller, Eds. pp. 31–46,
●● The combination and integration of visual France) for his words of advice and comments Springer-Verlag, Berlin, 2005.
[12] FIPA (Foundation for Intelligent Physical Agents), http://dx.doi.org/10.1007/978-3-540-30578-1_3
modeling tools and formal methods pro- regarding this work. "FIPA Agent Management Support for Mobility
vides powerful languages for specifying Specification", Technical report, Geneva, Swit- [26] E. Belloni and C. Marcos, "MAM-UML: An
and verifying these systems, taking into zerland, 2002, document number dc00087c. UML Profile for the Modeling of Mobile-Agent
Applications", in Proceedings of the XXIV Inter-
account the lack of semantics in visual References [13] Aglets mobile agent system (2002), documenta- national Conference of the Chilean Computer
models and graphical notations for formal tion and software [Online]. Available: Science Society (SCCC'04), 2004.
models. http://aglets.sourceforge.net/ http://dx.doi.org/10.1109/QEST.2004.14
[1] D. B. Lange and M. Oshima, "Seven Good Rea-
●● There is a pressing need to define generic sons for Mobile Agents", Communications of [14] Ajanta mobile agent system (2003), documenta- [27] K. Saleh and C. EL-Morr, "M-UML: an extension
ACM, vol. 42, no. 3, March 1999. tion and software [Online]. Available: to UML for the modeling of mobile agent-based
meta-model and associated notations that http://www.cs.umn.edu/Ajanta/
http://dx.doi.org/10.1145/295685.298136 software systems", Journal of Information and
provide a unique extensible reference that
[2] L. Ma and J. J-P. Tsai, "Security modeling and [15] Grasshopper mobile agent system (2003), docu- Software Technology, vol 46, pp. 219–227, 2004.
integrates all the features of the proposed http://dx.doi.org/10.1016/j.infsof.2003.07.004
approaches. analysis of mobile agent systems", vol. 57, Impe- mentation and software [Online]. Available:
rial College Press, 2006. http://www.grasshopper.de/ [28] H. Hachicha et al., "MAMT: an environment
●● Actually, the majority of designers have http://dx.doi.org/10.1142/p435
[16] Voyager Objectspace (2003), documentation and for modeling and implementing mobile agents",
not matured sufficiently to model the mo- [3] E. A. Belloni and C. A. Marcos, "Modeling of software [Online]. Available: in the Sixth International Workshop From Agent
bility (and its consequences such as secu- Mobile-Agent Applications with UML", in Pro- http://www.recursionsw.com/products/voyager Theory to Agent Implementation, at the Seventh
rity) and to support the entire lifecycle of ceedings of the Fourth Argentine Symposium on International Conference on Autonomous Agents
Software Engineering, vol. 32, pp. 1666–1141, [17] JADE (Java Agent DEvelopment Framework) and Multiagent Systems (AAMAS'08), Estoril,
the mobile agent paradigm. (2003), documentation and software [Online]. Portugal (EU), 13 May, 2008.
2003.
●● As more researchers develop powerful Available: http://jade.cselt.it/
[4] UML (Unified Modeling Language), Object [29] C. Klein et al., "Extension of the unified model-
tools for the modeling of mobile agent- Management Group [Online]. Available: [18] TAgent (Travel Agent), documentation and soft- ing language for mobile agents", in Unified Mod-
based systems, more we can control the http://www.uml.org/ ware [Online]. Available: http://www.tagents.org/ eling Language: Systems Analysis, Design and
most challenging unsolved problems of Development Issues, K. Siau, T. Halpin Eds. Idea
[5] C. A. Iglesias et al., "A Survey of Agent-Ori- [19] TACOMA (Tromsø And COrnell Moving Agents) Group Publishing, pp. 116–128, 2001.
this paradigm such as the security that is a ented Methodologies", in Proceeding of the 5th project [Online]. Available:
crucial concern for such systems. http://www.tacoma.cs.uit.no/ http://dx.doi.org/10.4018/978-1-930708-05-1.ch008
International Workshop on Intelligent Agents V:
Agent Theories, Architectures, and Languages, [20] A. Outtagarts, "Mobile Agent-based Applica- [30] M. Kang and K. Taguchi, "Modeling Mobile
●● Based on various characteristics of the mo- Agent Applications by Extended UML Activity
Springer-Verlag London, UK, 1999. tions: a Survey", International Journal of Com-
bile agents that we have presented, we can http://dx.doi.org/10.1007/3-540-49057-4_21 Diagram", in Proceedings of the 6th International
say that the mobile agents do not represent puter Science and Network Security, vol. 9, no.
Conference on Enterprise Information Systems
[6] D. Melomey et al., "An Evaluation of Current 11, November 2009.
an ideal paradigm for all the types of dis- (ICEIS)'04, Porto, Portugal, April 2004.
Approaches for Modeling Mobility of Agents", [21] H. Mouratidis et al., "Extending the Unified
tributed applications, but are simply a new Advances in Computing and Technology, ICGES [31] M. R. Bahri et al., "Towards an extension of
possibility for the construction of applica- Modeling Language to Model Mobile Agents", UML2.0 to model mobile agent-based systems",
Press, 71–78, 2007. in Proceedings Agent Oriented Methodologies
tions that is ideal for certain domains areas Workshop, Annual ACM Conference on Object
International Journal of Computer Science and
[7] H. Hachicha et al., "MA-UML: a conceptual Network Security, vol. 9, No. 10, 2009.
and less useful for others. approach for mobile agents modeling", Int. J. Oriented Programming, Systems, Languages
Agent-Oriented Software Engineering, vol. 3, no. (OOPSLA), Seattle, USA, 2002. [32] M. Kusek and G. Jezic, "Extending UML Se-
Most significantly, we believe that the study 2/3, pp. 277–305. 2009. quence Diagrams to Model Agent Mobility",
above provides a clear, well defined framework [22] B. Bauer et al., "Agent UML: a formalism for in 7th International Workshop, LNCS 4405,
http://dx.doi.org/10.1504/IJAOSE.2009.023640 specifying multiagent interaction", in 22nd In-
for assessing various issues associated with Springer-Verlag, 2007, pp. 51–63.
[8] R. Cervenka and I. Trencansky, "The Agent ternational Conference on Software Engineering http://dx.doi.org/10.1007/978-3-540-70945-9_4
modeling approaches of mobile agent-based (ICSE), Agent-Oriented Software Engineering,
Modeling Language – AML: A Comprehensive
software systems. This comparative framework Approach to Modeling Multi-Agent Systems", Springer, Berlin, 2001, pp. 91–103. [33] L. Bettini et al., "Formalizing properties of mo-
is certainly not complete, but it has been brought Springer Science & Business Media, 2007. bile agent systems", in Coordination Models and
to a point sufficient to serve as a basis for future [23] A. Poggi et al., "Modeling Deployment and Languages, January 29 2002, pp. 72–87.
[9] D. Melomey et al., "A Comparative Study of Mobility Issues in Multiagent Systems using http://dx.doi.org/10.1007/3-540-46000-4_9
refinement and extensions. Future work is to Modeling Languages for Agent Systems", Sys- AUML", in Agent Oriented Software Engineer-
extend this evaluation to cover other categories tems and Information Science Notes (SISN), vol. ing IV, P. Giorgini, J. P. Muller, J. Odell Eds. [34] R. Milner, Communicating and Mobile Systems:
of approaches in order to define a full reference 2, pp. 207–212, July 2007. LNCS 2935, Springer-Verlag 2004. the π-calculus, Cambridge University Press,
for interested researchers in this field. 1999.
160 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 161

●● The proposed approaches are not com- It is hoped that the paper will stimulate further [10] B. Bauer and J. P. Muller, "Methodologies and [24] B. Bauer and J. Odell, "UML 2.0 and agents: how
plete in themselves, and their authors, to work in a field whose importance will increas- modeling languages", in Agent-Based Software to build agent-based systems with the new UML
demonstrate the applicability of their ap- ingly be recognized. Development, M. Luck, R. Ashri M. D'Inverno standard", Engineering Applications of Artificial
Eds. Artech House Publishers, Boston, London, Intelligence, vol. 18, 141–157, 2005.
proaches, present easy illustrative exam- 2004. http://dx.doi.org/10.1016/j.engappai.2004.11.016
ples that are not complex enough to show
the weaknesses of the approaches. So, it is [11] D. Milojicic et al., "The OMG Mobile Agent [25] R. Cervenka et al., "AML: Agent Modeling
Acknowledgements System Interoperability Facility", Personal and Language Toward Industry-Grade Agent-Based
necessary to challenge all these modeling
Ubiquitous Computing, vol. 2, no. 2, pp. 117–129, Modeling", in Agent-Oriented Software Engi-
languages against real world applications The authors would like to thank Mr. Rachid June 1998. neering V: 5th International Workshop, J. Odell,
to verify their completeness. Echahed (CNRS and University of Grenoble, http://dx.doi.org/10.1007/bfb0057648 P. Gioginin, and J. P. Muller, Eds. pp. 31–46,
●● The combination and integration of visual France) for his words of advice and comments Springer-Verlag, Berlin, 2005.
[12] FIPA (Foundation for Intelligent Physical Agents), http://dx.doi.org/10.1007/978-3-540-30578-1_3
modeling tools and formal methods pro- regarding this work. "FIPA Agent Management Support for Mobility
vides powerful languages for specifying Specification", Technical report, Geneva, Swit- [26] E. Belloni and C. Marcos, "MAM-UML: An
and verifying these systems, taking into zerland, 2002, document number dc00087c. UML Profile for the Modeling of Mobile-Agent
Applications", in Proceedings of the XXIV Inter-
account the lack of semantics in visual References [13] Aglets mobile agent system (2002), documenta- national Conference of the Chilean Computer
models and graphical notations for formal tion and software [Online]. Available: Science Society (SCCC'04), 2004.
models. http://aglets.sourceforge.net/ http://dx.doi.org/10.1109/QEST.2004.14
[1] D. B. Lange and M. Oshima, "Seven Good Rea-
●● There is a pressing need to define generic sons for Mobile Agents", Communications of [14] Ajanta mobile agent system (2003), documenta- [27] K. Saleh and C. EL-Morr, "M-UML: an extension
ACM, vol. 42, no. 3, March 1999. tion and software [Online]. Available: to UML for the modeling of mobile agent-based
meta-model and associated notations that http://www.cs.umn.edu/Ajanta/
http://dx.doi.org/10.1145/295685.298136 software systems", Journal of Information and
provide a unique extensible reference that
[2] L. Ma and J. J-P. Tsai, "Security modeling and [15] Grasshopper mobile agent system (2003), docu- Software Technology, vol 46, pp. 219–227, 2004.
integrates all the features of the proposed http://dx.doi.org/10.1016/j.infsof.2003.07.004
approaches. analysis of mobile agent systems", vol. 57, Impe- mentation and software [Online]. Available:
rial College Press, 2006. http://www.grasshopper.de/ [28] H. Hachicha et al., "MAMT: an environment
●● Actually, the majority of designers have http://dx.doi.org/10.1142/p435
[16] Voyager Objectspace (2003), documentation and for modeling and implementing mobile agents",
not matured sufficiently to model the mo- [3] E. A. Belloni and C. A. Marcos, "Modeling of software [Online]. Available: in the Sixth International Workshop From Agent
bility (and its consequences such as secu- Mobile-Agent Applications with UML", in Pro- http://www.recursionsw.com/products/voyager Theory to Agent Implementation, at the Seventh
rity) and to support the entire lifecycle of ceedings of the Fourth Argentine Symposium on International Conference on Autonomous Agents
Software Engineering, vol. 32, pp. 1666–1141, [17] JADE (Java Agent DEvelopment Framework) and Multiagent Systems (AAMAS'08), Estoril,
the mobile agent paradigm. (2003), documentation and software [Online]. Portugal (EU), 13 May, 2008.
2003.
●● As more researchers develop powerful Available: http://jade.cselt.it/
[4] UML (Unified Modeling Language), Object [29] C. Klein et al., "Extension of the unified model-
tools for the modeling of mobile agent- Management Group [Online]. Available: [18] TAgent (Travel Agent), documentation and soft- ing language for mobile agents", in Unified Mod-
based systems, more we can control the http://www.uml.org/ ware [Online]. Available: http://www.tagents.org/ eling Language: Systems Analysis, Design and
most challenging unsolved problems of Development Issues, K. Siau, T. Halpin Eds. Idea
[5] C. A. Iglesias et al., "A Survey of Agent-Ori- [19] TACOMA (Tromsø And COrnell Moving Agents) Group Publishing, pp. 116–128, 2001.
this paradigm such as the security that is a ented Methodologies", in Proceeding of the 5th project [Online]. Available:
crucial concern for such systems. http://www.tacoma.cs.uit.no/ http://dx.doi.org/10.4018/978-1-930708-05-1.ch008
International Workshop on Intelligent Agents V:
Agent Theories, Architectures, and Languages, [20] A. Outtagarts, "Mobile Agent-based Applica- [30] M. Kang and K. Taguchi, "Modeling Mobile
●● Based on various characteristics of the mo- Agent Applications by Extended UML Activity
Springer-Verlag London, UK, 1999. tions: a Survey", International Journal of Com-
bile agents that we have presented, we can http://dx.doi.org/10.1007/3-540-49057-4_21 Diagram", in Proceedings of the 6th International
say that the mobile agents do not represent puter Science and Network Security, vol. 9, no.
Conference on Enterprise Information Systems
[6] D. Melomey et al., "An Evaluation of Current 11, November 2009.
an ideal paradigm for all the types of dis- (ICEIS)'04, Porto, Portugal, April 2004.
Approaches for Modeling Mobility of Agents", [21] H. Mouratidis et al., "Extending the Unified
tributed applications, but are simply a new Advances in Computing and Technology, ICGES [31] M. R. Bahri et al., "Towards an extension of
possibility for the construction of applica- Modeling Language to Model Mobile Agents", UML2.0 to model mobile agent-based systems",
Press, 71–78, 2007. in Proceedings Agent Oriented Methodologies
tions that is ideal for certain domains areas Workshop, Annual ACM Conference on Object
International Journal of Computer Science and
[7] H. Hachicha et al., "MA-UML: a conceptual Network Security, vol. 9, No. 10, 2009.
and less useful for others. approach for mobile agents modeling", Int. J. Oriented Programming, Systems, Languages
Agent-Oriented Software Engineering, vol. 3, no. (OOPSLA), Seattle, USA, 2002. [32] M. Kusek and G. Jezic, "Extending UML Se-
Most significantly, we believe that the study 2/3, pp. 277–305. 2009. quence Diagrams to Model Agent Mobility",
above provides a clear, well defined framework [22] B. Bauer et al., "Agent UML: a formalism for in 7th International Workshop, LNCS 4405,
http://dx.doi.org/10.1504/IJAOSE.2009.023640 specifying multiagent interaction", in 22nd In-
for assessing various issues associated with Springer-Verlag, 2007, pp. 51–63.
[8] R. Cervenka and I. Trencansky, "The Agent ternational Conference on Software Engineering http://dx.doi.org/10.1007/978-3-540-70945-9_4
modeling approaches of mobile agent-based (ICSE), Agent-Oriented Software Engineering,
Modeling Language – AML: A Comprehensive
software systems. This comparative framework Approach to Modeling Multi-Agent Systems", Springer, Berlin, 2001, pp. 91–103. [33] L. Bettini et al., "Formalizing properties of mo-
is certainly not complete, but it has been brought Springer Science & Business Media, 2007. bile agent systems", in Coordination Models and
to a point sufficient to serve as a basis for future [23] A. Poggi et al., "Modeling Deployment and Languages, January 29 2002, pp. 72–87.
[9] D. Melomey et al., "A Comparative Study of Mobility Issues in Multiagent Systems using http://dx.doi.org/10.1007/3-540-46000-4_9
refinement and extensions. Future work is to Modeling Languages for Agent Systems", Sys- AUML", in Agent Oriented Software Engineer-
extend this evaluation to cover other categories tems and Information Science Notes (SISN), vol. ing IV, P. Giorgini, J. P. Muller, J. Odell Eds. [34] R. Milner, Communicating and Mobile Systems:
of approaches in order to define a full reference 2, pp. 207–212, July 2007. LNCS 2935, Springer-Verlag 2004. the π-calculus, Cambridge University Press,
for interested researchers in this field. 1999.
162 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 163

[35] G. Jezic and I. Lovrek, "Using Pi-Calculus for [48] S. Merz et al., "A spatio-temporal logic for the Contact addresses:
Aissam Belghiat is an assistant professor at the Department of Com-
specification of mobile agent communication", in specification and refinement of mobile sys- Aissam Belghiat puter Science, University of 20 August 1955-Skikda, Algeria. Also,
IASTED Conf. on Software Engineering and Ap- tems", in Fundamental Approaches to Software Department of Computer Science he is affiliated to the MISC Laboratory, University of Constantine 2,
plications, 2004, pp. 356–361. Engineering (FASE 2003), vol. 2621 of LNCS, University of 20 August 1955-Skikda Algeria. His research interests include mobile agents, modeling with
Algeria UML, formal methods, model transformation, systems verification, and
Warsaw, Poland, Springer-Verlag, April 2003,
[36] C. Fournet et al., "A Calculus of Mobile Agents", e-mail: belghiatissam@gmail.com ontoglies.
pp. 87–101.
in CONCUR'96, Vol. 1119, Springer, 1996, pp.
406–421. [49] D. Latella et al., "Mobile UML statecharts with
http://dx.doi.org/10.1007/3-540-61604-7_67 localities", CNR ISTI, Pisa, Italy, Technical re- Elhillali Kerkouche Elhillali Kerkouche is an Assistant Professor in the Department of
Department of Computer Science Computer Science, University of Jijel, Algeria. His research field is
port 37, 2003. University of Jijel
[37] F. Oquendo, "π-ADL: An Architecture Descrip- UML, formal methods and distributed systems.
tion Language based on the Higher Order Typed [50] A. Belghiat et al., "Formalization of Mobile UML Algeria
Statechart Diagrams using the π-calculus: An e-mail: elhillalik@yahoo.fr
π-Calculus for Specifying Dynamic and Mobile
Software Architectures", ACM Software Engi- Approach for Modeling and Analysis", in ICIST Allaoua Chaoui works at the Department of Computer Science, Fac-
ulty of Engineering, University Mentouri Constantine, Algeria. He
neering Notes, vol. 28, no. 8, USA, May 2004. 2014, G. Dregvaite and R. Damasevicius Eds. Allaoua Chaoui received his Master's degree in Computer Science in 1992 (in coop-
CCIS 465,. Springer, 2014., pp. 236–247 MISC Laboratory eration with the University of Glasgow, Scotland) and his PhD degree
[38] A. Schmitt and J. B. Stefani, "The kell calculus:
http://dx.doi.org/10.1007/978-3-319-11958-8_19 Department of Computer Science in 1998 from the University of Constantine (in cooperation with the
A family of higher-order distributed process cal- University of Constantine 2 CEDRIC Laboratory of CNAM in Paris, France). He has served as an
culi," in Global Computing, 2004, pp. 146–178. [51] A. Belghiat et al., "Bridging the Gap between Algeria associate professor in Philadelphia University in Jordan for five years
Modeling of Mobile Agent-based Systems and and University Mentoury Constantine for many years. During his ca-
e-mail: a_chaoui2001@yahoo.com
[39] P. Sewell et al., "Location independent commu- reer he has designed and taught courses in Software Engineering and
Semantic Web using Meta-Modeling and Graph
nication for mobile agents: A two-level archi- Formal Methods. Dr Allaoua Chaoui has published many articles in
Grammars", in The 7th International Conference international journals and conferences. He supervises many Master and
tecture", in Lecture Notes in Computer Science, Mokhtar Beldjehem
on Information Technology (ICIT), Jordan, 2015. PhD students. His research interests include mobile computing, formal
1999. University of Ottawa specification and verification of distributed systems, and graph trans-
http://dx.doi.org/10.15849/icit.2015.0020
http://dx.doi.org/10.1007/3-540-47959-7_1 K1N 800 King Edward Avenue formation systems.
[52] Y. Aridor and D. B. Lange, "Agent design pat- Ottawa
[40] L. Cardelli and A. Gordon, "Mobile ambients", in ON K1N 6N5
terns: elements of agent application design", in
Theor. Comp. Sci., vol. 240, 2000, pp. 177–213. Kanada 6N5
Proceedings of the Second International Confer- e-mail: mbeldjeh@uOttawa.ca Mokhtar Beldjehem is a Global Citizen software engineer, educator,
http://dx.doi.org/10.1016/S0304-3975(99)00231-5 ence on Autonomous Agents, Minneapolis, MA: researcher, author, consultant, entrepreneur and philanthropist. He
[41] R. D. Nicola et al., "Klaim: a kernel language ACM Press, May 1998, pp. 108–115. holds B.Eng., M.Eng., and Ph.D. in Computer Engineering, Computer
Science and Software Engineering. He has been intimately involved
for agents interaction and mobility", IEEE Trans. http://dx.doi.org/10.1145/280765.280784 in software engineering research since 1985 and in soft computing re-
Software Eng., vol. 24, no. 5, 315–330, 1998. [53] R. Tolksdorf, "Coordination patterns of mobile search since 1989. His current research interest is the interplay of soft
http://dx.doi.org/10.1109/32.685256 information agents", in Proceedings of Cooper-
computing and software engineering.

[42] T. A. Kuhn and D. V. Oheimb, "Interacting state ative Information Agents II, Second International
machines for mobility", in FME 2003: Formal Workshop (CIA'98), Springer, 1998, pp. 246–261.
Methods, Springer Berlin Heidelberg, 2003., pp. http://dx.doi.org/10.1007/bfb0053689
698–718. [54] E. F. Lima et al., "An Approach to Modelling and
http://dx.doi.org/10.1007/978-3-540-45236-2_38 Applying Mobile Agent Design Patterns", ACM
[43] D. Xu and Y. Deng, Modeling Mobile Agent Sys- Software Engineering Notes, vol. 29, no. 4, 2004.
tems with High Level Petri Nets, School of Com- [55] M. B. Chhetri et al., "Ontology-Based Agent Mo-
puter Science, Florida International University bility Modelling", in Proceedings of the 39th An-
Miami, FL33199, 2000. nual Hawaii International Conference on System
[44] D. Xu et al., "A Formal Architectural Model for Sciences (HICSS'06), Hawaii, 2006, pp. 45–54.
Logical Agent Mobility", IEEE Transactions on http://dx.doi.org/10.1109/HICSS.2006.369
Software Engineering, vol. 29, no. 1, January [56] M. Crane and J. Dingel, "On the semantics of
2003. UML state machines: Categorization and com-
[45] H. Xu and S. M. Shatz, "A Design Model for In- parison", School of Comp., Queen's Univ., Tech-
telligent Mobile Agent Software Systems", Com- nical Report 2005–501, 2005.
puter Science Department, The University of Illi- [57] E. V. Berard, "A comparison of object-oriented
nois at Chicago, May 2002. methodologies", Object Agency Inc., Technical
[46] M. R. Bahri, "Une approche intégrée Mo- report, 1995.
bile-UML/Réseaux de Petri pour l'Analyse des
systèmes distribués à base d'agents mobiles",
Université Constantine, Algérie 2009.
Received: May, 2015
[47] A. Knapp et al., "Refining Mobile UML State Revised: December, 2015
Machines", in AMAST'04, LNCS, , Springer Ver- Accepted: December, 2015
lag, 2004, pp. 274–288.
http://dx.doi.org/10.1007/978-3-540-27815-3_23
162 A. Belghiat et al. Mobile Agent-Based Software Systems Modeling Approaches: A Comparative Study 163

[35] G. Jezic and I. Lovrek, "Using Pi-Calculus for [48] S. Merz et al., "A spatio-temporal logic for the Contact addresses:
Aissam Belghiat is an assistant professor at the Department of Com-
specification of mobile agent communication", in specification and refinement of mobile sys- Aissam Belghiat puter Science, University of 20 August 1955-Skikda, Algeria. Also,
IASTED Conf. on Software Engineering and Ap- tems", in Fundamental Approaches to Software Department of Computer Science he is affiliated to the MISC Laboratory, University of Constantine 2,
plications, 2004, pp. 356–361. Engineering (FASE 2003), vol. 2621 of LNCS, University of 20 August 1955-Skikda Algeria. His research interests include mobile agents, modeling with
Algeria UML, formal methods, model transformation, systems verification, and
Warsaw, Poland, Springer-Verlag, April 2003,
[36] C. Fournet et al., "A Calculus of Mobile Agents", e-mail: belghiatissam@gmail.com ontoglies.
pp. 87–101.
in CONCUR'96, Vol. 1119, Springer, 1996, pp.
406–421. [49] D. Latella et al., "Mobile UML statecharts with
http://dx.doi.org/10.1007/3-540-61604-7_67 localities", CNR ISTI, Pisa, Italy, Technical re- Elhillali Kerkouche Elhillali Kerkouche is an Assistant Professor in the Department of
Department of Computer Science Computer Science, University of Jijel, Algeria. His research field is
port 37, 2003. University of Jijel
[37] F. Oquendo, "π-ADL: An Architecture Descrip- UML, formal methods and distributed systems.
tion Language based on the Higher Order Typed [50] A. Belghiat et al., "Formalization of Mobile UML Algeria
Statechart Diagrams using the π-calculus: An e-mail: elhillalik@yahoo.fr
π-Calculus for Specifying Dynamic and Mobile
Software Architectures", ACM Software Engi- Approach for Modeling and Analysis", in ICIST Allaoua Chaoui works at the Department of Computer Science, Fac-
ulty of Engineering, University Mentouri Constantine, Algeria. He
neering Notes, vol. 28, no. 8, USA, May 2004. 2014, G. Dregvaite and R. Damasevicius Eds. Allaoua Chaoui received his Master's degree in Computer Science in 1992 (in coop-
CCIS 465,. Springer, 2014., pp. 236–247 MISC Laboratory eration with the University of Glasgow, Scotland) and his PhD degree
[38] A. Schmitt and J. B. Stefani, "The kell calculus:
http://dx.doi.org/10.1007/978-3-319-11958-8_19 Department of Computer Science in 1998 from the University of Constantine (in cooperation with the
A family of higher-order distributed process cal- University of Constantine 2 CEDRIC Laboratory of CNAM in Paris, France). He has served as an
culi," in Global Computing, 2004, pp. 146–178. [51] A. Belghiat et al., "Bridging the Gap between Algeria associate professor in Philadelphia University in Jordan for five years
Modeling of Mobile Agent-based Systems and and University Mentoury Constantine for many years. During his ca-
e-mail: a_chaoui2001@yahoo.com
[39] P. Sewell et al., "Location independent commu- reer he has designed and taught courses in Software Engineering and
Semantic Web using Meta-Modeling and Graph
nication for mobile agents: A two-level archi- Formal Methods. Dr Allaoua Chaoui has published many articles in
Grammars", in The 7th International Conference international journals and conferences. He supervises many Master and
tecture", in Lecture Notes in Computer Science, Mokhtar Beldjehem
on Information Technology (ICIT), Jordan, 2015. PhD students. His research interests include mobile computing, formal
1999. University of Ottawa specification and verification of distributed systems, and graph trans-
http://dx.doi.org/10.15849/icit.2015.0020
http://dx.doi.org/10.1007/3-540-47959-7_1 K1N 800 King Edward Avenue formation systems.
[52] Y. Aridor and D. B. Lange, "Agent design pat- Ottawa
[40] L. Cardelli and A. Gordon, "Mobile ambients", in ON K1N 6N5
terns: elements of agent application design", in
Theor. Comp. Sci., vol. 240, 2000, pp. 177–213. Kanada 6N5
Proceedings of the Second International Confer- e-mail: mbeldjeh@uOttawa.ca Mokhtar Beldjehem is a Global Citizen software engineer, educator,
http://dx.doi.org/10.1016/S0304-3975(99)00231-5 ence on Autonomous Agents, Minneapolis, MA: researcher, author, consultant, entrepreneur and philanthropist. He
[41] R. D. Nicola et al., "Klaim: a kernel language ACM Press, May 1998, pp. 108–115. holds B.Eng., M.Eng., and Ph.D. in Computer Engineering, Computer
Science and Software Engineering. He has been intimately involved
for agents interaction and mobility", IEEE Trans. http://dx.doi.org/10.1145/280765.280784 in software engineering research since 1985 and in soft computing re-
Software Eng., vol. 24, no. 5, 315–330, 1998. [53] R. Tolksdorf, "Coordination patterns of mobile search since 1989. His current research interest is the interplay of soft
http://dx.doi.org/10.1109/32.685256 information agents", in Proceedings of Cooper-
computing and software engineering.

[42] T. A. Kuhn and D. V. Oheimb, "Interacting state ative Information Agents II, Second International
machines for mobility", in FME 2003: Formal Workshop (CIA'98), Springer, 1998, pp. 246–261.
Methods, Springer Berlin Heidelberg, 2003., pp. http://dx.doi.org/10.1007/bfb0053689
698–718. [54] E. F. Lima et al., "An Approach to Modelling and
http://dx.doi.org/10.1007/978-3-540-45236-2_38 Applying Mobile Agent Design Patterns", ACM
[43] D. Xu and Y. Deng, Modeling Mobile Agent Sys- Software Engineering Notes, vol. 29, no. 4, 2004.
tems with High Level Petri Nets, School of Com- [55] M. B. Chhetri et al., "Ontology-Based Agent Mo-
puter Science, Florida International University bility Modelling", in Proceedings of the 39th An-
Miami, FL33199, 2000. nual Hawaii International Conference on System
[44] D. Xu et al., "A Formal Architectural Model for Sciences (HICSS'06), Hawaii, 2006, pp. 45–54.
Logical Agent Mobility", IEEE Transactions on http://dx.doi.org/10.1109/HICSS.2006.369
Software Engineering, vol. 29, no. 1, January [56] M. Crane and J. Dingel, "On the semantics of
2003. UML state machines: Categorization and com-
[45] H. Xu and S. M. Shatz, "A Design Model for In- parison", School of Comp., Queen's Univ., Tech-
telligent Mobile Agent Software Systems", Com- nical Report 2005–501, 2005.
puter Science Department, The University of Illi- [57] E. V. Berard, "A comparison of object-oriented
nois at Chicago, May 2002. methodologies", Object Agency Inc., Technical
[46] M. R. Bahri, "Une approche intégrée Mo- report, 1995.
bile-UML/Réseaux de Petri pour l'Analyse des
systèmes distribués à base d'agents mobiles",
Université Constantine, Algérie 2009.
Received: May, 2015
[47] A. Knapp et al., "Refining Mobile UML State Revised: December, 2015
Machines", in AMAST'04, LNCS, , Springer Ver- Accepted: December, 2015
lag, 2004, pp. 274–288.
http://dx.doi.org/10.1007/978-3-540-27815-3_23

You might also like