Variability: Add product-line analysis to tooling kernel
There is an implementation of product-line analysis for SFIT in the variability repositrory. This shall be added to the tooling kernel and used for AF3.
This issue requires af3 branch #4146 (closed) to be tested and should be merged simultaneously.
Testing instructions:
- Import the attached af3 project into your runtime workspace: ACC.af3_23
- Start AF3
- Observe: There is an error related to variability in the component AdaptiveCruiseControl
- Check: Is the error message understandable?
- Add the following presence condition to the component NoDistanceControl:
NOT Adaptive
- Save
- Observe: The error is resolved, since DistanceControl and NoDistanceControl are now mutually exclusive.
The old implementation used for the sosym paper on arxiv is RED and deprecated - it is supposed ot be removed after merging in #4328 (closed) and does not need to be reviewed.