Model based system engineering, analysis, code and documentation generation for safety critical deeply embedded systems

Intro

µRTE is an implementation of a concept based on research of Thomas Barth and Prof. Dr. -Ing. Peter Fromm with the aim to support development of complex safety software on deeply embedded systems (microcontrollers/MCU). µRTE collects information about software under development in a model and performs analysis as well as transformation into code, configuration and documentation.
Used in academic projects since 2018, µRTE found its way into industry 2021.

At the SAEC days 2022 Prof. Fromm held a keynote about the motivation of µRTE and how it tackles challenges of state of the art software development for safety critical embedded systems. Watch it on YouTube (German).

Modeling

Especially for safety critical embedded software, an holistic system view is crucial to understand the context in which software is developed. Therefore, µRTE not only features modeling of software aspects such as:

  • execution units
  • data-flows
  • hardware interfaces
  • activation
  • operational states
  • memory assignment
  • etc.

but also the software's ecosystem including hardware, functional specification and requirements according to common safety standards. For each of those so-called layers, easy to understand and intuitive diagrams are available for modeling. Layers are independent but reference among each other and are designed in a generic way only containing fundamental and necessary information. There is no order with which the layers have to be modeled and the model can be modified at any time at any point. An analyzer checks for inconsistencies and safety relevant dependencies also before code and report generation.

Code generation

Focus software development on the functionality of the application itself rather than its ecosystem! An entire executable software framework is generated out of the model including code files, data abstraction layer, activation engine, error handling, memory allocation, RTOS configuration and more. The generated code follows proven in use patterns and is designed for simplicity and readability, easing debugging, verification and assessment. Moreover, documentation such as requirements are generated into the code for the developer to never lose track on what to do where and why.

Report generation

Consistent documentation can be challenging not only because a system needs to be fully understood but also because architectures can change during development, making it hard to keep all documents up-to-date. µRTE generates an extensive and portable report, containing all dependencies of all elements in the model - always synchronous with the actual software and available at any time. Tables and diagrams allow easy and intuitive navigation trough the model and serve as a interface for the project specific documentation framework.

Features

In its current implementation µRTE is based on the Eclipse Modeling Framework, allowing easy modification and tailoring to customer needs.

Portability

  • Any RTOS
  • Any controller, including Multi-Core
  • Any Toolchain
  • High degree of reusability as the entire interface of software units is abstracted

Software

  • Cyclic and Signal driven activation of software units
  • Multiple system-states with dedicated data-flows
  • Extensive system and application error handling
  • Human readable code

Safety

  • Complete modeling of the safety case
  • Inbuilt consistency and safety checks
  • Complete traceability from requirements to implementation units
  • Supports freedom from interference
  • Generated code complies with MISRA standard

Process

  • Encourages clean and modular solutions
  • Eclipse plugin implementation to be integrated in existing Eclipse based IDEs and as stand-alone application.
  • Intuitive and rich graphical modeling
  • Complete support of V-model
  • Extensive auto-generated documentation

Get in touch

Please note that µRTE is not a independent product yet and industrial use therefore might be limited. However, we are happy if you are interested to get in contact with us at .

Visit us on Youtube