Information Technology Reference
In-Depth Information
$%
"##
!
"##
"##
"##
(
&'
Fig. 4. Expression interface of B OCHICA
(see discussion in Section 6). The focus of our approach was always on developing an
expressive platform independent agent modeling language that can be used for model-
driven development of agent-based systems and less on the methodology part. Since
both aspects are complementary, B OCHICA can be extended by AOSE method plug-
ins to support the software development process. In the same way as B OCHICA can
be extended with new agent concepts, methodology providers can contribute plug-ins
with new views and methodology concepts. For example, the Prometheus methodology
[10] uses so called scenarios in the system specification phase to identify typical events,
actions, and goals of the SUC. In the architectural design phase, the collected entities
are grouped to roles and agents. A Prometheus plug-in for B OCHICA could extend it
with the missing concepts for modeling scenarios in the system specification phase
(since it is not covered by the core DSL). The architectural design phase could be based
on existing concepts of the core DSL. As interface, B OCHICA provides the concept
MethodArtifact . Instead of having a separate modeling language and tool for each
methodology, most of the methodologies could be integrated into one framework and
share a common core. This would join the efforts of the involved parties and would ease
the maintenance of the tool chain.
4.5
Transformations
Model transformations in MDSD are used to gradually refine a model of a SUC until
executable code is generated. We assume that there exist base transformations from
B OCHICA to agent execution platforms such as Jack or Jadex. As B OCHICA gets ex-
tended with new concepts, an existing base transformation is no longer complete re-
garding the covered concepts. Thus, an extension transformation is required which
extends an existing base transformation for the new concepts (if the target platform
shall be enabled for the extension). We see three possibilities how this can be achieved.
Some model transformation languages (e.g. QVT 6 ) allow to write a new transforma-
tion which inherits from an existing one. Thus, an existing mapping rule can be over-
loaded by a new and extended one. Other transformation languages like XPand 7 use an
aspect-orientated approach for hooking into an existing transformation and extend-
ing it. A further possibility is to chain transformations, where the first one is a base
6
http://www.omg.org/spec/QVT/1.0/
7 http://www.eclipse.org/modeling/m2t/
Search WWH ::




Custom Search