It shall allow capturing traceability
information between MDE and/or non-MDE
model types.
It shall allow capturing traceability
information between models during model
transformation.
The model shall prohibit establishing illegal
links between some artifacts.
The model shall be flexible such that it
allows for accommodating new trace links
and artifacts without changing the model
itself.
4 RELATED WORK ON
TRACEABILITY MODELS
Paige and colleagues (Paige, Drivalos, Kolovos et al.
2011) defined a taxonomy of semantically rich trace
link between MDE models that may be constructed
using diverse modeling languages. Trace links are
said to be semantically rich because their types
conform to a project-specific traceability
metamodel, accompanied by a set of project-specific
correctness constraints. For validation purposes, the
authors applied their method for identifying trace
links to the Requirement Engineering phase, which
they split into early activities, modeling with I* (Yu
2009) and later activities, modeling with the UML
(specifically the class diagram, i.e., a domain
model). It turns out that this solution satisfies
partially requirements number 2, 3, 4, 5, 8, 10 (Table
2). One drawback of their approach, using the
I*/UML example is that the types of traceability
links between I* and class diagram artifacts need to
be in the metamodel itself, making the metamodel
difficult to evolve to accommodate new artifacts,
new types of models (recall our requirements).
Specifically, if ten different types of traceability
links need to be accounted for, which can be
considered a small number given that for instance a
link between an I* actor and a UML class is
considered as one type (one metaclass), then the
metamodel contains ten different traceability link
metaclasses; if traceability links must be classified
according to orthogonal classifications, which is
very likely according to other authors, then the
number of traceability link metaclasses equals the
cross product of the sizes of the classifications. As a
result, this solution fails to satisfy requirements 1, 6,
7, 9, 11, 12 (Table 2).
Pavalkis and colleagues (Pavalkis, Nemuraite
and Milevičienė 2011) defined a traceability
metamodel for relating artifacts in an instance of the
Business Process Model Notation (BPMN) (Object
Management Group 2014a): e.g., between resources
and their process, between participants involved in
messages (message sender and receiver). Although
their approach is extensible and customizable since
new rules can be defined for BPMN traceability
links, their solution is specific to BPMN, and more
generally to MOF-based modeling techniques, and is
therefore not adequate for our purpose. In summary,
this solution satisfies partially requirements 3, 4, 8,
10, 12 but not requirements 1, 2, 5, 6, 7, 9, 11 (Table
2).
Drivalos and colleagues (Drivalos, Kolovos,
Paige et al. 2008) presented the Traceability
Metamodeling Language (TML) for defining the
syntax and semantic of traceability metamodels.
With TML, one models traceability links between
Ecore-based model elements while providing some
context-specific information. Constraints can be
expressed in the Epsilon Validation Language
(EVL) (Kolovos, Rose, Garcia-Dominguez et al.
2014), an extension of the OCL (Object
Management Group 2014b). The authors validate
their approach with a case study to trace artifacts
between a class diagram (using a class diagram
metamodel) and a component diagram (using a
component diagram metamodel). We note that the
solution is specific to Ecore-based models, does not
provide enough information about the direction of
the trace link (i.e., does not specify which of the
artifacts is a source or a target), does not provide a
mechanism for capturing traceability information
during model transformation (transitivity of links),
and doesn’t accommodate various characterizations
for trace links or artifacts. Therefore, this solution
satisfies partially the requirements 2, 3, 4, 5, 6, 8, 12
but fails to satisfy requirements 1, 7, 9, 10, 11 (Table
2).
Falleri and colleagues (Falleri, Huchard and
Nebut 2006) defined a traceability metamodel for
recording traceability information during model
refactoring, where a model conforming to a certain
metamodel is transformed, possibly through several
refactoring/transformation steps, into an improved,
refactored model that conforms to the same
metamodel. This solution is good for capturing
traceability links during model transformation as it
can capture a sequence or a chain of links between
source and target artifacts. However, it is domain
(transformation) specific and can only do that, the
source and target artifacts must conform to the same
metamodel, and it doesn’t provide any semantics or
constraints on the type of the trace links. They
TowardsTraceabilityModelingfortheEngineeringofHeterogeneousSystems
325