Integrating executable requirements to accelerate design iterations
Historically the worlds of Model Based Systems Engineering (MBSE) and Model Based Design (MBD) or Model Based Engineering (MBE) are mostly separated into disparate silos.
In the MBSE space, key tools are SysML, a descriptive language mostly trying to use descriptive graphical system representations to support communication between stakeholders, and requirements management software, like IBM DOORS.
MBD on the other hand uses a variety of tools and languages with executable models, often generated from Modelica, at its core to simulate and analyze models.
Here we would like to promote the idea of connecting MBSE and MBD more seamlessly than was previously possible. Using recent results from the ITEA3 EU project MODRIO, a Modelica Library prototype to represent executable requirements is now available, and we have used this library to demonstrate the workflow to develop a simplified version of a vehicle thermal management control system to reduce fuel consumption.
You can follow below a detailed presentation as I will only present a brief outline here. The main elements of the workflow are:
- Translate the functional requirements into formal, testable logical statements. The starting point in textual form should be quite close.
- These requirements can easily be translated into executable form in Modelica using the new Modelica_Requirements library from the Modrio project.
- Integrate the requirements with the system model
- Continuously verify that the requirements are fulfilled during design iteration.
With this approach entirely in Modelica, it is much easier to ensure that requirements are fulfilled during design iterations of both the physical and control systems.
It is possible to then automate this testing and achieve continuous verification of all previously designed features using the OPTIMICA Testing Toolkit, as described in this blog post. The result is a workflow that truly enables first-time-right system design!
Would you like to know how to integrate your system requirements with your FMI- or Modelica based system models to achieve faster design cycles and first-time-right designs?