AUML2WS-BPEL
Description
The AUML2WS-BPEL translator implements the translation depicted in the figure below.
The Prolog representation obtained by the above translation can be used to automatically generate the Prolog code
of two agents that adhere to the agent interaction protocol defined by the AUML diagram. These agents can be
executed inside the
JADE platform extended with the
DCaseLP
libraries, as depicted in the figure below.
AUML2WS-BPEL takes an
AUML visual Agent Interaction Protocol (AIP) and generates the
WSDL
and
WS-BPEL documents that correspond to it, using an
XML-based notation for AUML developed by ourselves as intermediate format.
Since currently no editors for AUML exist, we limited ourselves to consider only those features that AUML shares
with
UML 2.0, and only a subset of them, in order to edit
the AUML AIPs with existing tools for UML.
Our translator, developed in Java, takes as input the
XMI
description of a UML 2.0 sequence diagram (corresponding
to an AUML interaction protocol). By exploiting the
Extensible Stylesheet Language Transformations (
XSLT)
technology, the features of the XMI document relevant
for generating the AUML textual notation are extracted and
a document in
Winikoff’s textual notation ["Towards making Agent UML practical:
A textual notation and a tool", ISEAT 2005], another
one in our XML-based notation, and a third one containing a Prolog term, are generated.
The
XML-based document is used by another XSLT sheet, to
generate both the WSDL and the WS-BPEL documents.
We have tested the translator drawing the UML 2.0 sequence
diagrams with
Poseidon , and exporting them into
XMI. It should be possible to use any other UML editor
supporting the 2.0 version.
Download and installation instructions
Credits
- The main effort in the design and implementation of the AUML2WS-BPEL translator and in its testing has been made by
Giovanni Casella , under the guidance of
Viviana Mascardi .
Disclaimer
The AUML2WS-BPEL translator is still under testing. You may download and use it (in this case, we would be very happy to be informed), but please take into account that its debugging has not been completed yet.
For the moment, only option, seq, loop, and alt UML 2.0 operators are translated into the corresponding if-then, sequence, while and switch WS-BPEL activities.
Comments in the code are sometimes still in Italian.
Suggestions are welcome: please send them to
Giovanni Casella
Please send suggestions and comments to:
Viviana Mascardi viviana.mascardi@unige.it
Last Updated: April, 2013