{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,29]],"date-time":"2026-05-29T16:37:11Z","timestamp":1780072631579,"version":"3.54.0"},"reference-count":31,"publisher":"Springer Science and Business Media LLC","issue":"2","license":[{"start":{"date-parts":[[2023,1,9]],"date-time":"2023-01-09T00:00:00Z","timestamp":1673222400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2023,1,9]],"date-time":"2023-01-09T00:00:00Z","timestamp":1673222400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100002347","name":"Bundesministerium f\u00fcr Bildung und Forschung","doi-asserted-by":"publisher","award":["01IS17032"],"award-info":[{"award-number":["01IS17032"]}],"id":[{"id":"10.13039\/501100002347","id-type":"DOI","asserted-by":"publisher"}]},{"name":"FZI Forschungszentrum Informatik"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["SN COMPUT. SCI."],"abstract":"<jats:title>Abstract<\/jats:title><jats:p>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.<\/jats:p>","DOI":"10.1007\/s42979-022-01532-z","type":"journal-article","created":{"date-parts":[[2023,1,9]],"date-time":"2023-01-09T16:03:59Z","timestamp":1673280239000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["The Universal Safety Format in Action: Tool Integration and Practical Application"],"prefix":"10.1007","volume":"4","author":[{"given":"Frederik","family":"Haxel","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Alexander","family":"Viehl","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Michael","family":"Benkel","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Bjoern","family":"Beyreuther","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Klaus","family":"Birken","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Rolf","family":"Schmedes","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Kim","family":"Gr\u00fcttner","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Daniel","family":"Mueller-Gritschneder","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2023,1,9]]},"reference":[{"key":"1532_CR1","unstructured":"IEC 61508. Functional Safety of Electrical\/Electronic\/Programmable Electronic Safety-related Systems (E\/E\/PE, or E\/E\/PES. Geneva, CH: The International Electrotechnical Commission, 2010."},{"key":"1532_CR2","unstructured":"ISO 26262. Road vehicles \u2013 Functional safety. Geneva, CH: International Organization for Standardization; 2018."},{"key":"1532_CR3","first-page":"250","volume-title":"Computer safety, reliability, and security","author":"K Ding","year":"2018","unstructured":"Ding K, Morozov A, Janschek K. MORE: MOdel-based REdundancy for Simulink. In: Gallina B, Skavhaug A, Bitsch F, editors. Computer safety, reliability, and security. Cham: Springer; 2018. p. 250\u201364."},{"key":"1532_CR4","doi-asserted-by":"publisher","DOI":"10.1016\/j.csi.2020.103424","volume":"70","author":"T Hu","year":"2020","unstructured":"Hu T, Cibrario Bertolotti I, Navet N, Havet L. Automated fault tolerance augmentation in model-driven engineering for CPS. Comput Standards Interface. 2020;70: 103424. https:\/\/doi.org\/10.1016\/j.csi.2020.103424.","journal-title":"Comput Standards Interface"},{"key":"1532_CR5","doi-asserted-by":"publisher","first-page":"278","DOI":"10.1007\/978-3-319-10506-2_19","volume-title":"Computer safety, reliability, and security","author":"RFB Trindade","year":"2014","unstructured":"Trindade RFB, Bulwahn L, Ainhauser C. Automatically generated safety mechanisms from semi-formal software safety requirements. In: Bondavalli A, Di Giandomenico F, editors. Computer safety, reliability, and security. Cham: Springer; 2014. p. 278\u201393."},{"key":"1532_CR6","doi-asserted-by":"crossref","unstructured":"Didehban M, Shrivastava A. NZDC: A Compiler Technique for near Zero Silent Data Corruption. In: Proceedings of the 53rd Annual Design Automation Conference. DAC \u201916. 2016;New York, NY, USA: Association for Computing Machinery; p. 1\u20136.","DOI":"10.1145\/2897937.2898054"},{"key":"1532_CR7","unstructured":"Reis GA, Chang J, Vachharajani N, Rangan R, August DI. SWIFT: Software Implemented Fault Tolerance. In: International Symposium on Code Generation and Optimization. IEEE. 2005;p. 243\u2013254."},{"key":"1532_CR8","doi-asserted-by":"crossref","unstructured":"Didehban M, Shrivastava A, Lokam SRD. NEMESIS: A software approach for computing in presence of soft errors. In: 2017 IEEE\/ACM International Conference on Computer-Aided Design (ICCAD), 2017;p. 297\u2013304.","DOI":"10.1109\/ICCAD.2017.8203792"},{"issue":"4","key":"1532_CR9","doi-asserted-by":"publisher","first-page":"1178","DOI":"10.1109\/TR.2017.2754548","volume":"66","author":"J Vankeirsbilck","year":"2017","unstructured":"Vankeirsbilck J, Penneman N, Hallez H, Random BJ. Additive signature monitoring for control flow error detection. IEEE Trans Reliab. 2017;66(4):1178\u201392. https:\/\/doi.org\/10.1109\/TR.2017.2754548.","journal-title":"IEEE Trans Reliab"},{"key":"1532_CR10","doi-asserted-by":"crossref","unstructured":"Armoush A. Design patterns for safety-critical embedded systems [Ph.D. thesis]. RWTH Aachen University; 2010.","DOI":"10.1109\/SEAA.2009.12"},{"key":"1532_CR11","doi-asserted-by":"crossref","unstructured":"Haxel F, Viehl A, Benkel M, Beyreuther B, Birken K, Schmedes R, et\u00a0al. Universal Safety Format: Automated Safety Software Generation. In: Pires LF, Hammoudi S, Seidewitz E, editors. Proceedings of the 10th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2022, Online Streaming, February 6\u20138, 2022. SCITEPRESS. p. 155\u2013166.","DOI":"10.5220\/0010784200003119"},{"key":"1532_CR12","unstructured":"USF.: Universal Safety Format - Website. Last checked on May\u00a020, 2022. Available from: https:\/\/www.universalsafetyformat.org\/."},{"key":"1532_CR13","doi-asserted-by":"crossref","unstructured":"Kiczales G, Lamping J, Mendhekar A, Maeda C, Lopes CV, Loingtier J, et\u00a0al. Aspect-Oriented Programming. In: Aksit M, Matsuoka S, editors. ECOOP\u201997 - Object-Oriented Programming, 11th European Conference, Jyv\u00e4skyl\u00e4, Finland, June 9\u201313, 1997, Proceedings. vol. 1241 of Lecture Notes in Computer Science. Springer; 1997. p. 220\u2013242.","DOI":"10.1007\/BFb0053381"},{"key":"1532_CR14","doi-asserted-by":"publisher","unstructured":"Jouault F, Allilaire F, B\u00e9zivin J, Kurtev I. ATL: A model transformation tool. Sci Comput Program 2008;72(1):31\u201339. Special Issue on Second issue of experimental software and toolkits (EST). https:\/\/doi.org\/10.1016\/j.scico.2007.08.002.","DOI":"10.1016\/j.scico.2007.08.002."},{"key":"1532_CR15","unstructured":"MPS.: Meta Programming System (MPS) by JetBrains. Last checked on May\u00a020, 2022. Available from: https:\/\/www.jetbrains.com\/mps\/."},{"key":"1532_CR16","unstructured":"Kn\u00fcchel C, Rudorfer M, Voget S, Eberle S, Sezestre R, Loyer A. Artop an ecosystem approach for collaborative AUTOSAR tool development. In: ERTS2 2010, Embedded Real Time Software & Systems."},{"key":"1532_CR17","unstructured":"Xtend.: Xtend programming language homepage. Last checked on May\u00a020, 2022. Available from: http:\/\/www.eclipse.org\/xtend."},{"key":"1532_CR18","unstructured":"Voelter M. Generic Tools, Specific Languages [Ph.D. thesis]. Delft University of Technology, 2014."},{"issue":"3","key":"1532_CR19","doi-asserted-by":"publisher","first-page":"339","DOI":"10.1007\/s10515-013-0120-4","volume":"20","author":"M Voelter","year":"2013","unstructured":"Voelter M, Ratiu D, Kolb B, Schaetz B. mbeddr: Instantiating a Language Workbench in the Embedded Software Domain. Autom Softw Eng. 2013;20(3):339\u201390. https:\/\/doi.org\/10.1007\/s10515-013-0120-4.","journal-title":"Autom. Softw. Eng."},{"key":"1532_CR20","doi-asserted-by":"crossref","unstructured":"Voelter M, Birken K, Lisson S, Rimer A. Shadow Models: Incremental Transformations for MPS. In: Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering. SLE 2019. New York, NY, USA: Association for Computing Machinery; p. 61\u201365.","DOI":"10.1145\/3357766.3359528"},{"key":"1532_CR21","doi-asserted-by":"crossref","unstructured":"Sanchez B, Zolotas A, Hoyos\u00a0Rodriguez H, Kolovos D, Paige R. On-the-Fly Translation and Execution of OCL-Like Queries on Simulink Models. In: 2019 ACM\/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems (MODELS); 2019;p. 205\u2013215.","DOI":"10.1109\/MODELS.2019.000-1"},{"issue":"4","key":"1532_CR22","doi-asserted-by":"publisher","first-page":"2507","DOI":"10.1007\/s10270-018-0679-0","volume":"18","author":"M Voelter","year":"2019","unstructured":"Voelter M, Kolb B, Birken K, Tomassetti F, Alff P, Wiart L, et al. Using language workbenches and domain-specific languages for safety-critical software development. Softw Syst Model. 2019;18(4):2507\u201330. https:\/\/doi.org\/10.1007\/s10270-018-0679-0.","journal-title":"Softw. Syst. Model."},{"issue":"4","key":"1532_CR23","doi-asserted-by":"publisher","first-page":"889","DOI":"10.1007\/s10270-020-00782-w","volume":"19","author":"P Munk","year":"2020","unstructured":"Munk P, Nordmann A. Model-based safety assessment with SysML and component fault trees: application and lessons learned. Softw Syst Model. 2020;19(4):889\u2013910. https:\/\/doi.org\/10.1007\/s10270-020-00782-w.","journal-title":"Softw Syst Model"},{"key":"1532_CR24","doi-asserted-by":"crossref","unstructured":"Mann C. A Practical Guide to SysML: The Systems Modeling Language. Kybernetes, 2009;38.","DOI":"10.1108\/k.2009.06738aae.004"},{"key":"1532_CR25","doi-asserted-by":"publisher","unstructured":"Steurer M, Morozov A, Janschek K, Neitzke KP. SysML-based Profile for Dependable UAV Design. IFAC-PapersOnLine. 51(24):1067\u20131074. 10th IFAC Symposium on Fault Detection, Supervision and Safety for Technical Processes SAFEPROCESS, 2018. https:\/\/doi.org\/10.1016\/j.ifacol.2018.09.722.","DOI":"10.1016\/j.ifacol.2018.09.722"},{"key":"1532_CR26","unstructured":"Bast W, Murphree M, Michael L, Duddy K, Belaunde M, Griffin C, et\u00a0al. MOF QVT final adopted specification: meta object facility (MOF) 2.0 query\/view\/transformation specification. Object Management Group, 2005."},{"key":"1532_CR27","doi-asserted-by":"crossref","unstructured":"Bergmann G, Ujhelyi Z, R\u00e1th I, Varr\u00f3 D. A Graph Query Language for EMF models. In: Cabot J, Visser E, editors. Theory and Practice of Model Transformations, Fourth International Conference, ICMT 2011, Zurich, Switzerland, June 27-28, 2011. Proceedings. vol. 6707 of Lecture Notes in Computer Science. Springer. Springer; p. 167\u2013182.","DOI":"10.1007\/978-3-642-21732-6_12"},{"key":"1532_CR28","doi-asserted-by":"crossref","unstructured":"Huning L, Iyenghar P, Pulverm\u00fcller E. A Workflow for Automatically Generating Application-level Safety Mechanisms from UML Stereotype Model Representations. In: Ali R, Kaindl H, Maciaszek LA, editors. Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2020, Prague, Czech Republic, May 5\u20136, 2020. SCITEPRESS; 2020. p. 216\u2013228.","DOI":"10.5220\/0009517302160228"},{"key":"1532_CR29","unstructured":"Lattner C, Adve V. LLVM: a compilation framework for lifelong program analysis amp; transformation. In: International Symposium on Code Generation and Optimization, 2004. CGO 2004.; p. 75\u201386."},{"key":"1532_CR30","unstructured":"Quinlan D, Liao C. The ROSE source-to-source compiler infrastructure. In: Cetus users and compiler infrastructure workshop, in conjunction with PACT. vol. 2011. Citeseer; p.\u00a01."},{"key":"1532_CR31","doi-asserted-by":"publisher","unstructured":"Sharif U, Mueller-Gritschneder D, Schlichtmann U. REPAIR: Control Flow Protection Based on Register Pairing Updates for SW-Implemented HW Fault Tolerance. ACM Trans Embed Comput Syst. 2021;20(5s). https:\/\/doi.org\/10.1145\/3477001.","DOI":"10.1145\/3477001"}],"container-title":["SN Computer Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s42979-022-01532-z.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s42979-022-01532-z\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s42979-022-01532-z.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,1,9]],"date-time":"2023-01-09T16:12:43Z","timestamp":1673280763000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s42979-022-01532-z"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,1,9]]},"references-count":31,"journal-issue":{"issue":"2","published-online":{"date-parts":[[2023,3]]}},"alternative-id":["1532"],"URL":"https:\/\/doi.org\/10.1007\/s42979-022-01532-z","relation":{},"ISSN":["2661-8907"],"issn-type":[{"value":"2661-8907","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,1,9]]},"assertion":[{"value":"22 May 2022","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"25 November 2022","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"9 January 2023","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no conflict of interest.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of interest"}}],"article-number":"151"}}