Information Technology Reference
In-Depth Information
Fig. 6
. Translation algorithm from the
i*
supermetamodel to an
i*
variant
−
Forget non translating formations
. Finally, those constructs in
m1
which have not
been translated in the previous activities, are just removed. Example: a
belief
from
GRL when translating into Aspectual
i*
.
In order to illustrate the process, we have designed a proof-of-concept for translating
models built with the OME tool [18] into the jUCMNav tool [19]. The metamodels
involved are determined in this case by the implementation of the tool. Basically
OME is offering the
i*
variant available in the
i*
wiki, whilst
jUCMNav
is imple-
menting GRL's metamodel, although a closer look reveals some minor differences
not relevant for the purposes of this paper. For the technical implementation of the
algorithm we have used XSLT, a declarative language for transforming XML files
[20]. The algorithm is implemented as a Java applet and currently available at
http://www.essi.upc.edu/~gessi/iStarML/. Besides, jUCMNav has been modified in
order to import and export iStarML files [21]. We prove the approach doing XSLT
transformation from OME representations (
i*
), as special case of supermetamodel, to
jUCMNav representations (GRL). In Table 3 we show four submodels to illustrate the
four different outputs of the translation algorithm. We explain below each row:
−
Row 1: dependency from an intentional element into another. Strictly semantic
preserving: all the model is translated without changes. Output 1 in Figure 6.
−
Row 2: task decomposition with dependency to an intentional element. Semantic
preservation modulo variation: the task decomposition in OME is translated into an
AND-decomposition in jUCMMNav. Note that it would be possible to recreate the
original model. Therefore, this is a bijective mapping. Output 2 in Figure 6.
−
Row 3: dependency from an intentional element into an actor. Please note that
jUCMNav does not admit dependencies with actors as dependers or dependees
(i.e., the 0..1 multiplicity in
arrives-to
in the
i*
supermetamodel of Figure 4 be-
comes 1 in jUCMNav). Decreasing modulo variation: it is possible to translate the
dependency by creating an intentional element in the target actor and attaching de-
pendency on it, but the original model can not be recreated, since it is not known if