The case for the use of Junctions with Composition & Aggregation
The ArchiMate 3.1 Specification says that Junctions may be used to connect relationships of the same type but restricts their use to:
all the dynamic and dependency relationships, as well as assignment and realization
This seems excessively restrictive on Composition and Aggregation and I'm wondering why the restriction?
For example, The OpenFAIR risk methodology presents a Risk Taxonomy (O-RT) in which risks are progressively resolved into their constituent factors.
It would seem intuitive to model this as below, using Aggregation to show that Risk may be factored into a 'Loss Event Frequency' and a 'Loss Magnitude'.
The use of and AndJunction signifies that if this factorisation is done, then both the LEF & LM are required (You can't have one without the other!). However, the specification currently forbids this construction.
I could list several other examples:
- a Goal could be composed of several sub-Goals, all of which are necessary to achieve the desired result;
- other Goals (Control Objectives) might be optional or provide alternatives - available for Defence in Depth;
- a Failure Mode Analysis Tree could be described using a Boolean construction of Outcome elements;
- a hardware Device could offer a choice of configurable components- some of which are only available in combination or are mutually-exclusive.
The idea would be backwards-compatible (no existing models broken).
If this idea is not accepted, could you please at least explain why the restriction exists. Thx