You are on page 1of 5

Preface

Even though a multi-agent system (MAS) developer can count on development


environments, frameworks, languages, and methodologies, it is unrealistic to
think everything is done. Elementary activities in software engineering, such
as testing the developed MAS and ensuring an MAS specification meets the ini-
tial requirements, have been barely studied in the agent community, compared
with other aspects of development, such as design or implementation. Such gaps
need to be identified and filled in properly.
Answers will come via a transfer of knowledge from different areas, not only
from software engineering. Mathematics, psychology, sociology, artificial intelli-
gence, to mention a few, can supply the theories and results that characterize
an MAS as something different from other pieces of software. Such a mixture
of disciplines necessarily needs a glue that puts them together into a body of
knowledge, and this glue is agent-oriented software engineering.
As suggested by its name, Agent-Oriented Software Engineering Workshop is
a forum for works with a strong engineering component. With this bias, the scope
of the workshop is still sufficiently general to host different kinds of contributions,
from which we would like to highlight on two: MAS specification languages and
development processes.
The AOSE community has invested effort in producing MAS specification
languages. A MAS specification, written with one of these languages, uses agent
related concepts to describe a problem and its solution. The elements of these
specification languages are inspired in agent research, being BDI works the most
frequently cited.
While agent specification languages embody the research concepts, the de-
velopment processes capture the development experience. They identify which
are the necessary steps to produce an MAS. This implies generating a MAS
specification and indicating how, from this specification, a software product, the
actual MAS, can be obtained. A development process suggests ways to organize
the development. It contains activities (each one with their inputs, outputs, and
software support tools), descriptions of products to obtain, and development
roles.
In a sense, both specification languages and development processes have
served to move on from laboratory-scale developments to a scope of applica-
bility closer to the standard practices of software engineering. Now, it is possible
to address every research result and put it in the context of a development by
means of these two elements.
Continuing with this endeavor, the 9th International Workshop on Agent-
Oriented Software Engineering (AOSE 2009) took place in Budapest in May 2009
as part of the 8th International Joint Conference on Autonomous Agents and
Multi-Agent Systems (AAMAS 2009). It received 30 submitted papers, which
VI Preface

reflects the continuing interest in the area. All papers were reviewed by at least
three reviewers from an international Program Committee of 43 members and
6 auxiliary reviewers, and, as a result, 11 papers were selected to appear in this
proceedings volume.
As a novel contribution, this volume includes five additional surveys address-
ing key areas in development: agent-oriented modelling languages, implementa-
tion of MAS, testing of MAS, software processes, and formal methods for the
development of MAS. They permit analysis of the current state in the generation
of specifications of MAS, the way these specifications can be implemented, how
they can be validated, and what steps are necessary to do so.
In structuring this volume, we have organized the papers into four sections.
The first deals with multi-agent organizations, which provides a valuable ab-
straction for agents whose integration in a development method is not trivial.
The second section addresses concrete development techniques that enable the
transition from specification to code or that validate a concrete implementation.
The third section moves one step higher, going beyond the concrete technique
and proposing a development method for designing concrete types of systems.
The last section introduces the surveys elaborated for this volume. They can be
used as an introduction to relevant areas of agent-oriented Software Engineering
and as an indicator of the work remaining to be done.

1 Organizations
The first section begins with a paper by Oyenan et al. where a conceptual frame-
work for designing reusable multi-agent organizations is proposed. The frame-
work combines component-oriented and service-oriented principles. Components
are autonomous multi-agent organizations that provide or use services as defined
by generic interfaces. The composition of these services is possible, leading to
reusable components that can be composed to build larger organizations.
The second paper, written by Aldewereld et al., focuses on the structural
adaptation to context changes using the OperA organizational model. The pa-
per contributes with a formal representation of organizations and a formal in-
terpretation of the adaptation process. The chosen formalism is an extension of
computational tree logic (CTL), called LAO.
The section concludes with a paper by Argente et al. The work proposes a
guideline focused on service-oriented open MAS for desiging virtual organiza-
tions. The guideline suggests activities along the analysis and design stages of a
development based on the organization theory and the service-oriented develop-
ment approach.

2 Development Techniques
The section starts with a paper by Garcia-Magariño et al. This work introduces a
technique for producing model transformations automatically using examples of
the expected output of the transformation for some example input models. The
Preface VII

technique is known as model transformation based on examples (MBTE). Its use


in the context of an MAS development is illustrated using INGENIAS as a devel-
opment methodology. As a result, different relevant applications are identified,
such as producing preliminary definitions of an agent skill or interactions.
The section continues with a paper on automated testing by Zhang et al.
The paper describes an approach to unit testing of plan-based systems, with
a focus on automated generation and execution of test cases. The contribution
provides an automated process for test case generation and requirements for
an environment where the unit tests can be executed. The paper includes a
discussion of the implemented system and some results from its use.
The last paper is a contribution from Sudeikat and Renz. The work intro-
duces a systemic modelling level which can complement established modelling
approaches. Its purpose is to anticipate the collective system behavior from a
collection of designs of autonomous actors. As an application of the approach,
the authors introduce the Marsworld case study, where a set of mining activities
in a distant planet are addressed.

3 Development Method Proposals


The first work in this section presents Koko-ASM, by Sollenberger and Singh,
which is a guideline for building affective applications developed by Sollenberger
et al. Koko-ASM identifies what pieces of information are necessary for the
instantiation of the Koko architecture, a middle-ware that reduces the burden
of incorporating affect into applications. The approach is validated with the
development of an application for promoting positive physical behavior in young
adults.
Following, Hahn et al. present a mechanism for the generation of agent in-
teraction protocols. The mechanisms are based on a domain-specific modelling
language for MAS called DSML4MAS. With DSML4MAS, protocols are spec-
ified, and then transformed into executable code. As an example, the authors
explain how a contract-net protocol is translated into programming instructions
for the Jack agent platform.
The next work is a paper by Nunes et al. focused on multi-agent system
product lines. It proposes a domain engineering process for development of this
kind of system. Original contributions of this process are the possibility of docu-
menting agent variabilities and tracing agent features. The process is represented
using the OMG’s software process engineering model and illustrated with the
development of a Web application.
The last paper in this section by Bogdanovych et al. is about virtual heritage
application construction. It proposes a development process based on the concept
of virtual worlds in the Second Life platform and Virtual Institutions technology.
As an application example, the paper introduces the City of Uruk project, which
intends to recreate the ambience of the city Uruk, situated in Iraq, from the
period around 3000 B.C., in the Virtual World of Second Life.
VIII Preface

4 State-of-the-Art Survey
The first survey concerns modelling approaches, by Argente et al. The adoption
of meta-models by the different agent-oriented methodologies has led to a variety
of modelling languages, not always supported by meta-modelling languages. This
survey studies these languages addressing issues such as the maturity of the
modelling language or its expressive capability.
If modelling is important for specifying the system, the next activity one
thinks of is implementing the specification. That is the focus of the second sur-
vey, written by Nunes et al. This survey encompasses different implementation
approaches, from transformation of specifications to manually coding the spec-
ification with conventional methods. The interest of this part is to guide new-
comers to the different ways a specification can be realized using agent-oriented
approaches.
Lately, there is growing concern on the importance of testing activities in
agent-oriented development. Nguyen et. al study this less regarded aspect of
development, indicating emergent approaches for testing agent systems and what
support a developer can find.
All activities in development necessarily have to be considered within a de-
velopment process. Method engineering, the topic of the survey by Cossentino
et al., has studied these activities and how they can be interleaved to produce a
new development process. This survey will be useful for those wanting to know
what elements an agent-oriented methodology should regard and how a new
methodology can be built using fragments from existing methodologies.
To conclude, the last survey, from El Fallah-Seghrouchni et al., aims to
capture the current state of formal method approaches in agent-oriented soft-
ware engineering research. Some formal methods propose their own develop-
ment approaches, but others could be reused or integrated within other non-
formal approaches. El Fallah-Seghrouchni et al. review briefly a selection of these
methods, trying to illustrate how they can help in development and what tool
support exists.

September 2010 Marie-Pierre Gleizes


Jorge J. Gomez-Sanz

You might also like