Change Request #2873
Safety level information is a complete mess
- once in mira (model element "SafetyLevel") which is used in scheduling but is actually not even editable by the user at the moment...
- once in the safety plugin (model element "SafetyIntegrityLevel") which is the only one really editable by the user
Question is: do we need both? Why are there even two implementations?
Gut feeling: we can remove the one in mira completely and just remove the dependency on it in scheduling (I guess it's in practice not used since the property is not even definable through the UI...).
We could then use only the one in safety.
- the metamodel allows in the same class SIL and DAL levels...
- the implementation is a little bit too annotation-oriented in my opinion. Meaning a developer discovering this package spontaneously thinks that it's an "only-annotation" thing, but it can be used anywhere.
#2 Updated by Simon Barner over 3 years ago
- If I remember correctly, the MIRA model element
SafetyLevelwas supposed to be removed after the introduction of
org.fortiss.af3.safety. See #2171 and its sub-issues.
- However, there is / was a link from MIRA to the
- Being able to defined safety levels based on the terms defined in different domain-specific standards was a required at the time the annotation has been introduced. Switching between the standards is currently implemented in a sub-optimal fashion (annotation of the top-level component)
#3 Updated by Anonymous over 3 years ago
- Ok. From my own searches, it's not used anymore except by the scheduling plugin. But as I said I suspect it's useless now. Who's in charge of scheduling?
- Regarding a possible usage in the safety plugin, I didn't see any, but I might have overlooked (I'm in a meeting right now so my observation skills might be a little be low, sorry if so...)
- Mmh. This is however also allowed by the mira implementation. I must say at the moment, when looking at both models, it just really looks redundant, with slightly different implementations of the model.
#4 Updated by Simon Barner over 3 years ago
Regarding scheduling: The mira
SafetyLevel was supposed to be replaced by the one in
org.fortiss.af3.safety, and it might be that the remaining occurrences of
SafetyLevel can be removed without any further refactoring. Sergey or Johannes shown know the code.