TY - JOUR
T1 - The Universal Safety Format in Action
T2 - Tool Integration and Practical Application
AU - Haxel, Frederik
AU - Viehl, Alexander
AU - Benkel, Michael
AU - Beyreuther, Bjoern
AU - Birken, Klaus
AU - Schmedes, Rolf
AU - Grüttner, Kim
AU - Mueller-Gritschneder, Daniel
N1 - Publisher Copyright:
© 2023, The Author(s).
PY - 2023/3
Y1 - 2023/3
N2 - Designing software that meets the stringent requirements of functional safety standards imposes a significant development effort compared to conventional software. A key aspect is the integration of safety mechanisms into the functional design to ensure a safe state during operation even in the event of hardware errors. These safety mechanisms can be applied at different levels of abstraction during the development process and are usually implemented and integrated manually into the design. This does not only cause significant effort but does also reduce the overall maintainability of the software. To mitigate this, we present the Universal Safety Format (USF), which enables the generation of safety mechanisms based on the separation of concerns principle in a model-driven approach. Safety mechanisms are described as generic patterns using a transformation language independent from the functional design or any particular programming language. The USF was designed to be easily integrated into existing tools and workflows that can support different programming languages. Tools supporting the USF can utilize the patterns in a functional design to generate and integrate specific safety mechanisms for different languages using the transformation rules contained within the patterns. This enables not only the reuse of safety patterns in different designs, but also across different programming languages. The approach is demonstrated with an automotive use-case as well as different tools supporting the USF.
AB - Designing software that meets the stringent requirements of functional safety standards imposes a significant development effort compared to conventional software. A key aspect is the integration of safety mechanisms into the functional design to ensure a safe state during operation even in the event of hardware errors. These safety mechanisms can be applied at different levels of abstraction during the development process and are usually implemented and integrated manually into the design. This does not only cause significant effort but does also reduce the overall maintainability of the software. To mitigate this, we present the Universal Safety Format (USF), which enables the generation of safety mechanisms based on the separation of concerns principle in a model-driven approach. Safety mechanisms are described as generic patterns using a transformation language independent from the functional design or any particular programming language. The USF was designed to be easily integrated into existing tools and workflows that can support different programming languages. Tools supporting the USF can utilize the patterns in a functional design to generate and integrate specific safety mechanisms for different languages using the transformation rules contained within the patterns. This enables not only the reuse of safety patterns in different designs, but also across different programming languages. The approach is demonstrated with an automotive use-case as well as different tools supporting the USF.
KW - Code generation
KW - Domain-specific language
KW - Functional safety
KW - Model transformation
KW - Software safety mechanism
UR - http://www.scopus.com/inward/record.url?scp=85146669906&partnerID=8YFLogxK
U2 - 10.1007/s42979-022-01532-z
DO - 10.1007/s42979-022-01532-z
M3 - Article
AN - SCOPUS:85146669906
SN - 2662-995X
VL - 4
JO - SN Computer Science
JF - SN Computer Science
IS - 2
M1 - 151
ER -