S[i].status=Stopped;
T[j].status=Cancel;
}
/* Add other activities here */
Service AwaitAskCatalogue
(Product &Catalogue[2000];int &nmax):
[Customer]
{
nmax = 0 ; int i = 0;
while (i < n)
{
if (P[i].k > 0)
{
Catalogue[nmax] = P[i];
nmax= nmax+1;
}
i = i+1;
}
}
Service AwaitCustomerCancel
(int id_Client) : [Customer]
{
canceled = true;
InformCancel(Id_Client);
}
/* Add other services here */
}
Figure 9: Implementation of the CustomerHandler role.
Roles are kept in a role library which is part of
the social state. Having the CustomerHandler role in
the library we can build an agent class Customer-
HandlerAgent with the role’s functions and other
functions. Given these definitions we can build an
application using the HABA.PM project manager.
This project manager supports the construction of a
library of reusable roles. Those roles and the agent
classes can be programmed within HABA.PM using
the HABA.PL programming language. The reader is
referred to (Garcés et al., 2006) for a detailed de-
scription of both HABA.PL and HABA.PM.
4 DISCUSSION
In this work we present the HABA.DM methodol-
ogy for the development of MAS. Our methodology
is a variant of the GAIA methodology. The goal of
HABA.DM is to reduce the gap between the abstract
modeling of MAS and their practical implementa-
tion. To achieve this goal, we reduce the scope of
our methodology to a specific class of MAS that we
call Moderately Open Multi-Agent Systems (MO-
MAS).
We demonstrate how our methodology can be
used to model an ordering system for e-commerce.
The system is targeted at Business to Consumers,
B2C, companies. Our implementation takes advan-
tage of the parallel and distributed capabilities of-
fered by modern information and communication
technologies.
Our development methodology is applied incre-
mentally. Roles defined for the system are refined
step by step during the three different modelling
stages: analysis, design and implementation. This
improves on GAIA’s approach that does not include
the implementation stage. For the implementation of
our MOMAS systems we use the HABA.PL pro-
gramming language and the HABA.PM Project
Manager.
REFERENCES
Cernuzzi, L., Juan, T., Sterling, L., and Zambonelli, F.
(2004), The Gaia Methodology: Basic Concepts and
Extensions. In Methodologies and Software Engineer-
ing for Agent Systems. Kluwer.
Ehikiova, S.A. (2001) A Formal perspective to modelling
electronic commerce transactions, Colombian Journal
of Computation, Vol. 2, No. 2, pp. 21-40.
Garcés, A., Quirós, R., Chover, M. and Camahort, E.
(2006) Implementing Moderately Open Multi-Agent
Systems. IADIS International Conference WWW /
Internet 2007.
Garcés, A., Quirós, R., Chover, M., Huerta, J. and Cama-
hort, E. (2007) A Development Methodology for
Moderately Open Multi-Agent Systems. IASTED
Conference on Software Engineering SE 2007.
Iglesias, C.; Garito, M.; González, J. and Velaso, J. (1998)
Analysis and Design of multi-agent systems using
MAS-CommonKADS. Intelligent Agents IV, LNAI
vol. 1365, pp. 313-326. Springer Verlag.
Karacapilidis, N. and Moraitis, P. (2001). Inteligent
Agents for an Artificial Market System. In
AGENTS´01. Fifth International Conference on
Autonomous Agents. ACM Press.
Kinny, D., Georgeff, and Rao, A. (1996) A methodology
and modelling technique for systems of BDI agents.
LNAI vol. 1038, pp.56-71. Springer-Verlag.
Pastor, O., Abrahäo, S., and Fons, J. ((2001). Building e-
commerce applications from Object- Oriented Con-
ceptual models. ACM SIGecom Exchanges, vol. 2, is-
sue 2, pp. 28-36.
Spivey, J. M. (1992), The Z notation: A reference manual.
Prentice Hall, Second Edition.
Tran, T. (2006). Designing Recommender Systems for e-
commerce: an integration approach. 8th International
conference on electronic commerce. ACM Press.
Wooldridge M., Jennings, N, and Kinny, D. (2000) The
Gaia Methodology for Agent-Oriented Analysis and
Design. Autonomous Agents and Multi-Agent Sys-
tems vol. 3 no. 3, September, pp. 285-312
Zambonelli, F.;, N. R. Jennings, and Wooldridge, M.
(2003) Developing Multi-agent Systems: The Gaia
Methodology. In ACM Transactions on Software En-
gineering Methodology, vol. 12, No.3, pp. 317-370.
ICEIS 2007 - International Conference on Enterprise Information Systems
172