tree fed920561500f3e9526230ceb74c395d6c198380
parent b2785b594ffea7b988e5241cb927881e33d66568
author Jan-Philipp Steghöfer <ec@splashstudio.com> 1612279248 +0100
committer Jan-Philipp Steghöfer <ec@splashstudio.com> 1620224229 +0200

Trace models now differentiate origin and target

Eclipse Capra so far did not provide the ability
to create unidirectional links, i.e., links that
have a defined origin and target. Instead, all
links were implicitly  bidirectional. This was
enforced by only allowing to access the "items"
of a link type, i.e., all artifacts that were
connected by a trace links were accessed via one
collection.

This behaviour was problematic since it
a) did not allow to implement directed link,
   i.e., links with a clearly defined origin and
   target; and
b) did not allow typisation of links that connect
   artifacts of different types.
The latter meant that a common super-class
(usually EObject) needed to be used and type
correctness of the trace model could not be
enforced.

With this commit, the TraceMetaModelAdapter
interface introduces a distinction of origin and
target for trace links. This means that trace
links can now connect an arbitrary number of
origin artifacts of the same type with an
arbitrary number of target artifacts of the same
type. If a TIM wants to restrict multiplicities,
it needs to do so via its TraceMetaModelAdapter
implementation.

It is worth noting that this commit changes
Capra's behaviour with the default TIM as well:
while it used to be bidirectional, it now
distinguishes origin and target as well. This is
reflected in changes in the tests. In particular
the traceability matrices now look different and
isThereATraceBetween() is also sensitive to the
order in which artifacts are provided (origin
first, target second).

This change will be followed up by others that
clean up the API, provide clearer Javadoc, in
particular for methods of TraceMetaModelAdapter,
and update the UI to be able to differentiate
sources and targets when creating links.

Change-Id: I5f2c14ec68a141bda57789c8b0fc6ef22cc9ffb8
