Legacy Issue Number: 13126
Source: Airbus Group ( Yves Bernard)
From my point of view using a simple Dependency to model an allocation relationship doesn't match with the allocation concept MARTE defines in its "Domain view", §11.2, p117. According to this domain view, it's clear that creating an allocation doesn't create any dependency between allocation ends, what is actually what we need in MDA like approaches where applications and plateforms are considered to be independant. However, the official definition of the UML "Dependency" metaclass states that : "A dependency is a relationship that signifies that a single or a set of model elements requires other model elements for their specification or implementation. " (formal/2007-11-02 , §7.3.12, p62, unchanged in v2.2 beta 1) Then, I suggest to change the UML representation of the allocation concept so that it really complies to the domain view, that is : if an element of one end of the allocation is modified only the allocation itself should be impacted and not the elements(s) on the other end. It's can be achieved, for instance, by the specialization of the Classifier metaclass, instead of the Dependency metaclass
Reported: MARTE 1.0b2 — Wed, 26 Nov 2008 05:00 GMT
Disposition: Resolved — MARTE 1.0
Allocation is meant to be very general. Application elements are allocated to an
execution platform (software or hardware), functionality is allocated to processes,
processes are allocated to a virtual machine, and resources may be allocated to
resource pools, just for some examples. What allocation is doing in these cases
is imposing structure on a less structured system.
For generality, alternative allocations should be possible. If only a single
allocation is possible then the potential of MDE is thrown away. In particular,
allocation does not always imply a dependency. Moreover, when a dependency
is created, the client of this dependency is modified to refer to the dependency.
This can be a problem when allocating read_only elements.
The metaclasses Relationship or DirectedRelationship fit better. However,
these metaclasses are abstract and there is currently no concrete specialization
in UML that would not induced a specific semantics compatible with the broad
acception of allocation intended in MARTE. Consequently, the issue should be solved in UML by introducing a new metaclass. It should be discussed with the
SysML community given the relationship explicitly stated in the MARTE
specification between the MARTE allocation and its SysML counterpart.
However, to have an short term solution, we have decided to propose something
that is not entirely satisfactory but would work with read_only elements, be
usable in very general cases, require few tool adaptations and would have a
minimal impact on SysML, with which we want to maintain compatibilities.
This is done by adding the stereotype Assign that extends the metaclass
Comment, while preserving the stereotype Allocate to maintain compatibility with
the current SysML approach. The Assign stereotype is an alternative UML
representation of the Allocation metaclass, defined in the domain model, but
without the underlying semantics of the Abstraction metaclass. Note that the
optional body property of the Comment meta-class can be used to provide the
justification of the assignment
Updated: Sat, 7 Mar 2015 21:28 GMT