Information Technology Reference
In-Depth Information
Figure 5. Generating evolution metamodel
Evolution Model
(Jaroucheh et al. July 2010). Figure 4 shows only
one example of the three generated classes from
the Flow class (AddedFlow, DeletedFlow and
ChangedFlow).
The adaptation in a process usually involves add-
ing, dropping and replacing tasks in the process. In
this respect, and in order to achieve deep change
ability, we propose to add for each class X in the
BPEL metamodel three classes: AddedX, Delet-
edX, and ChangedX describing the difference
between the basic process model and the respective
variant model (See Figure 5). Other change types
can be mapped to variations and combinations of
these ones. For instance, moving an activity is
achieved by dropping the activity and inserting
it at a later position of the process.
The evolution metamodel (Figure 4) consists
of an EvolutionStrategy class that contains one
or more EvolutionFragments. The EvolutionFrag-
ment in turn consolidates related Evolution
Primitives (a set of elements of type Change-
ableElement) into a single conceptual variation.
Our approach promotes evolution fragments (EFs)
to be first-class entities consisting of closely-re-
lated additions, deletions and changes performed
on the basic process model.
The evolution metamodel could be automati-
cally generated from the BPEL model. One pos-
sible approach is presented in a previous work
Linkage Model
Because in the MDD world everything should
be a model, the mapping between the context
constraints and the EFs will be represented by
the linkage model. This mapping will be used as
information for driving the model transformation.
Moreover, the linkage model is used to repre-
sent the dependencies between the EFs which
we prefer to keep it separate from the evolution
model itself. Dependencies are used to describe
relations between EFs in order to constrain their
use. The relations supported in Apto are as follows:
dependency ( Require ), compatibility ( Exclude ),
execution order constraint ( Follow ), and hierarchy
( SubSet ). Require arises when elements introduced
by one EF depends on elements introduced by
another. The Exclude relationship dictates which
EFs are incompatible with each another, based
on conceptual design knowledge of the architect.
SubSet denotes composition relationship which
means that when choosing the child EF the par-
Search WWH ::




Custom Search