gle phases.
The lack of interfaces for exchanging data and
outcomes among the different phases, however,
causes problems with its applicability. The first chal-
lenge developers are faced with is the transformation
of data representation between the different phases.
Due to the fact that different, often incompatible mod-
els and knowledge representation formats are used, it
is required to transform the data while losing as lit-
tle information as possible. Usually the developers
end up with an iterative process of analysis, modeling
and implementing the problem scenario with the help
of different tools until the desired result is obtained
(Krempels et al., 2003).
In this paper we discuss a general approach for
an agent-based software development process and the
lack of tools supporting the entire development pro-
cess. Thereafter, we focus on our contribution to the
development process assistance in the form of tools
for linking ontology to the development of problem-
solving methods, as well as an integration of the PSM
into a MAS. Finally, we provide a proof for the con-
cept implementation following our approach (Krem-
pels and Panchenko, 2007) (Kirn et al., 2003) (Krem-
pels and Panchenko, 2006). This is in fact the devel-
opment of a planning system with the help of AT.
2 GENERIC TOOLS’
ASSISTANCE
There exists a variety of application domains for soft-
ware systems. Different application domains, how-
ever, raise quite diverse requirements on the model
representation. This leads to the availability of sev-
eral domain-specific modeling tools that make use of
different representation languages. Therewith, the ex-
port of a model in a form that is suitable for process-
ing it in another tool is often very problematic. Agent-
based software development usually consists of four
phases (Krempels, 2008): domain analysis, ontology
design, PSM implementation, as well as integration
into the implementation of the agent or agent society.
In the following we discuss these phases as well as
current assistance of the modeling process in detail.
2.1 Domain Analysis
The goal on this level is to provide a domain or task
description in form of a model. The design of such a
model is based either on an expert interview, process
flow analysis, or statistical analysis. Usually domain-
specific modeling tools are applied in order to facil-
itate the process. In domain modeling one of the
most acceptable and widely popular tools are ARIS-
Toolset
2
and Microsoft Visio
3
. The former one sup-
ports modeling, optimization as well as simulation of
processes and provides a possibility to adapt an opti-
mized process for the real application. The modeling
language in use is called Event-driven Process Chain
(EPC). It provides a possibility to export/import mod-
eling data to/from the Unified Modeling Language
(UML). The outcome of the modeling is a process
model that inherits background information. Visio is
a simple modeling tool that provides no support for
analyzing the resulting models by any means. Be-
sides above mentioned modeling languages EPC and
UML, also additional formats can be used. The latter,
however, provides only a graphical layer without any
semantic consideration. Visio is mostly used for fast
deployment of less complex models. The outcome is
a basic graphical representation of the model. The
domain modeling is depicted in Fig. 1 in the first
column.
2.2 Ontology Design
The goal of the second step in the design process is to
develop an ontology. An ontology is an explicit spec-
ification of a conceptualization (Becker et al., 2003a).
It offers the ability to share and reuse knowledge
about a common universe of discourse (Kirn et al.,
2003). The design and deployment of ontologies is
based on the process models from the domain level.
There exists a number of tools that support the ontol-
ogy design process, e.g. Prot´eg´e
4
, OilEd
5
, WebOnto
6
.
The most suitable and widely used tool in MAS envi-
ronment is Prot´eg´e. It supports a frame-based ontol-
ogy design and it is possible to create instances from
the deployed concepts in order to feed them with the
acquired domain knowledge.
For this purposes it is possible to make use of
automatically generated graphical forms that can be
adapted to the user’s needs in order to simplify knowl-
edge acquirement. The base functionality of Prot´eg´e
may be extended with the help of dynamically load-
able libraries (plugins). At the moment there exist
plugins with interfaces to databases (e.g. through the
Java Database Connectivity (JDBC) to SQL), visu-
alization tools (e.g. in UML), expert systems (e.g.
C Language Integrated Production System (CLIPS))
as well as for an export of ontologies into differ-
2
IDS Scheer GmbH – http://www.ids-scheer.de/
3
Microsoft Inc. – http://www.microsoft.com/
4
The Prot´eg´e Ontology Editor and Knowledge Acquisi-
tion System – http://protege.stanford.edu/
5
OilEd – http://oiled.man.ac.uk/
6
WebOnto – http://kmi.open.ac.uk/projects/webonto/
INTERCONNECTED TOOL-ASSISTANCE FOR DEVELOPMENT OF AGENT-ORIENTED SOFTWARE SYSTEMS
309