Simulink Verification and Validation

Hauptmerkmale

  • Konformitätsprüfung in Bezug auf die MAAB-Richtlinien und die Richtlinien für den Design von High-Integrity Systeme (DO-178, ISO 26262, IEC 61508 und zugehörige Industriestandards)
  • Model Advisor Configuration Editor, einschließlich der Möglichkeit, eigene Checks zu definieren
  • Requirements Management Interface zur Nachverfolgung von Modellobjekten, Modellcode und Tests zu Anforderungsdokumenten
  • Automatische Test-Harness-Erstellung für Subsysteme
  • Komponententests mittels Simulation, SIL (Software-in-the-Loop) und PIL (Processor-in-the-Loop)
  • Programmierbare Skript-Schnittstelle, um automatische Konformitätsprüfung, Anforderungsnachverfolgungs-Analyse und das Testen von Komponenten zu ermöglichen
Analysis views and reports generated by Simulink Verification and Validation for requirements tracing, modeling standards compliance checking, component testing, and model coverage.
Mit Simulink Verification and Validation erstellte Analyseansichten und –berichte zum Zwecke der Nachverfolgung von Anforderungen, der Konformitätsprüfung in Bezug auf Modellierstandards sowie zum Zwecke von Komponententests und der Modellabdeckung.

Arbeiten mit Simulink Verification and Validation

Über das Requirements Management Interface werden Verknüpfungen zwischen externen Dokumenten und Simulink®-Blöcken erstellt. Diese Verknüpfungen können dazu verwendet werden Anforderungs-, Design-, Nachverfolgbarkeits-Reviews durchzuführen und das Projekt zu dokumentieren.

Durch Verwendung des Requirements Management Interface können Sie:

  • Simulink- und Stateflow®-Objekte mit den Anforderungen verknüpfen
  • vom Simulink- oder Stateflow-Objekt aus zu den Anforderungen navigieren
  • die Anforderungsverknüpfungen in Ihrem Modell überprüfen, und zwar durch Highlighting und benutzerdefinierte Tags
  • Berichte für Simulink-Modelle erstellen, aus denen hervorgeht, welche Objekte mit welchen Anforderungen verknüpft sind

Simulink Verification and Validation bietet Ihnen eine Bibliothek von einsatzbereiten Checks zur Überprüfung, ob alle Komponenten den Entwurfsrichtlinien und Modellierungsstandards entsprechen. Es gibt bereits vordefinierte Checks, um den MAAB (MathWorks Automotive Advisory Board)-Richtlinien und den Standards DO-178B und IEC 61508 zu entsprechen, die sich auf die Entwicklung von High-Integrity Software beziehen.

Mithilfe von Model Advisor und Modellierungsstandards-Checks können Sie:

  • die Modelle oder Modellkomponenten überprüfen, um sicherzustellen, dass diese den Modellierungsrichtlinien entsprechen
  • Checkkonfigurationen erstellen und an andere freigeben
  • die Kommandozeilen-API dazu verwenden, die Checkausführung zu automatisieren
  • Ihre eigenen Checks für neue Modellierungsrichtlinien entwickeln

Simulink Verification and Validation stellt Ihnen Funktionen zum Testen von Komponenten zur Verfügung. Sie erstellen Test-Harness-Modelle und protokollieren Daten aus vorhandenen Modellen um Sie bei der Simulation von Modellkomponenten zu unterstützen. Sie haben folgende Möglichkeiten:

  • das Testen von Modellkomponenten zu automatisieren
  • Subsystem- oder Subchartinhalte in ein neues Modell zu extrahieren, um diese Inhalte zu analysieren
  • Eingangswerte während der Simulation zu protokollieren
  • Modelle mithilfe von Testfällen zu simulieren
  • den generierten Code zu testen
  • Modellabdeckungen zu erfassen und zu analysieren

Nachverfolgen der Anforderungen für Modelle, Tests und erstellten Code

Über das Requirements Management Interface in Simulink Verification and Validation können Sie Simulink- und Stateflow-Objekte mit dem Text in Anforderungsdokumenten verknüpfen. Diese Anforderungsverknüpfung ist bei IBM® Rational® DOORS®- sowie bei Microsoft® Word-, Excel®-, PDF- oder HTML-Dateien möglich. Die Verknüpfungsmöglichkeiten können erweitert werden, um zusätzliche Dokumenttypen und Anforderungsverwaltungssysteme zu unterstützen.

Requirements Management Interface context menu and Requirements dialog box.
Requirements Management Interface – Kontextmenü und Dialogfeld Requirements (Anforderungen)

Erstellen von Verknüpfungen

Verknüpfungen im Modell sind Verweise auf externe Dokumente. Sie sind mit Modellblöcken verbunden, und zwar mittels eindeutiger Kennzeichnung, durch die sichergestellt wird, dass die Informationen zur Anforderungsnachverfolgung robust und beständig sind.

Die Anforderungsnachverfolgung ermöglicht Ihnen, ein Anforderungsobjekt oder einen Favoriten in einem externen Dokument auszuwählen und dann in Simulink eine Verknüpfung über die Kontextmenüs zu erstellen. Im Dialogfeld “Requirements” (Anforderungen) können Sie Schlüsselwörter und Beschreibungen für die Verknüpfungen vergeben, um eine zielorientiertere Analyse zu ermöglichen.

Reviewen der Designs und Anforderungen

Über das Requirements Management Interface können Sie im Modell bestimmte Blöcke hervorheben oder einen Anforderungsbericht mit einer Kombination aus Screenshots der Modell-Subsysteme und der Informationen aus den Anforderungsdokumenten erstellen. Ferner ist es möglich, die Berichtsvorlagen Ihren Bedürfnissen anzupassen, und zwar unter Verwendung von Simulink Report Generator™.

In Verbindung mit IBM Rational DOORS ermöglicht Ihnen Simulink Verification and Validation, die Simulink-Verknüpfungen in DOORS als Verknüpfungsobjekte zu replizieren, wodurch die bidirektionale Nachverfolgung möglich ist, ohne dabei die Anforderungsdokumente modifizieren zu müssen. Das Requirements Management Interface gibt Ihnen die Möglichkeit, Ihre Verknüpfungen in DOORS und Simulink zu synchronisieren. Mit anderen Worten, Sie können Verknüpfungen in IBM Rational DOORS oder IBM Rational Web Access erstellen und diese dann mit den Simulink-Modellen synchronisieren. Um sicherzustellen, dass die Anforderungsverknüpfungen den Quelldokumenten entsprechen, können Sie Anforderungskonsistenzchecks ausführen, wodurch dann gelöschte oder geänderte Anforderungen identifiziert werden. Diese Checks können mit anderen Checks im Model Advisor kombiniert werden, um die Modelle systematisch analysieren zu können.

Überprüfen des Codes

Wenn Sie Embedded Coder™, HDL Coder™ oder Simulink PLC Coder™ zur Codeerstellung aus Ihren Modellen verwenden, können Sie Anforderungsüberschriften als Kommentare in den Quellcode und als Hyperlinks in den Code-Erstellungsbericht einbeziehen. Über die im Code-Erstellungsbericht befindlichen Hyperlinks kann vom Code direkt zu den Anforderungen navigiert werden.

Unter MathWorks Connections Program finden Sie Anforderungsverwaltungslösungen von Drittanbietern, die das Requirements Management Interface unterstützen und Verknüpfung und Nachverfolgung ermöglichen.

Annotated source code, created with Real-Time Workshop Embedded Coder, showing hyperlinks to requirements.
Mithilfe von Embedded Coder erstellter und mit Kommentaren versehener Quellcode mit Hyperlinks zu den Anforderungen

Überprüfen der Konformität mit den Modellierungsstandards

Simulink Verification and Validation bietet Checks an für:

  • MathWorks Automotive Advisory Board
  • DO-178B
  • IEC 61508 (ISO 26262)
  • Anforderungskonsistenz

Mittels Model Advisor können Sie einzelne oder auch Gruppen-Checks ausführen. Jeder Check enthält detaillierte Dokumentation und Empfehlungen darüber, wie die Inkonsistenzen am besten gelöst werden können. Bei einigen Prüfungen bestehen auch zusätzliche Konfigurationsmöglichkeiten.

Mittels Model Advisor Configuration Editor können Sie die mitgelieferten Checks ändern, wodurch Sie dann in der Lage sind:

  • Kombinationen von Checks auszuwählen
  • Eine Auswahl an Checks als neue Konfiguration zu speichern
  • Checks aus einer vorhandenen Konfiguration zu importieren und anzuwenden
  • der Konfiguration benutzerdefinierte Checks hinzuzufügen
  • eine Konfiguration zu exportieren und zu verteilen
Violation in highlighted model block found through modeling standards checks in Model Advisor.
Verletzung eines Modellierungsstandards im markierten Modellblock, die mithilfe von Model Advisor festgestellt wurde.

Mittels Model Advisor Configuration Editor können Sie die mitgelieferten Checks ändern, wodurch Sie dann in der Lage sind:

  • Kombinationen von Checks auszuwählen
  • Eine Auswahl an Checks als neue Konfiguration zu speichern
  • Checks aus einer vorhandenen Konfiguration zu importieren und anzuwenden
  • der Konfiguration benutzerdefinierte Checks hinzuzufügen
  • eine Konfiguration zu exportieren und zu verteilen

Die Skript-API ermöglicht Ihnen das Erstellen von benutzerdefinierten Checks. Beispiele von benutzerdefinierten Checks sind in der Produktdokumentation zu finden.

Um die Konformitätsprüfung zu automatisieren, können Sie im Batchmodus Checks auf einem oder mit Parallel Computing Toolbox™ auch auf mehreren Rechnern parallel ausführen. Die Ergebnisse können im Model Advisor oder im HTML-Bericht angezeigt werden, der bei Abschluss der Analyse erstellt wird.

Bei Verwendung des Simulink DO Qualification Kit können Sie im Model Advisor die DO-178B-Checks zur Verwendung in DO-178B- oder DO-254-Projekten qualifizieren.

Komponententest

Simulink Verification and Validation stellt Ihnen eine API zum Analysieren und Simulieren von einem oder mehreren referenzierten Modellen, Subsystemen oder Atomic Subcharts im Modell zur Verfügung. Es kann über die Kommandozeile auf alle Komponententestfunktionen zugegriffen werden, oder sie können auch in MATLAB® Scripts integriert werden.

Erstellung von Harness-Modellen

Die Funktion zur Harness-Modell-Erstellung ermöglicht Ihnen, ein Atomic Subsystem oder ein durch ein größeres Regelsystem-Modell referenziertes Modell zu isolieren, damit es zur zusätzlichen Prüfung und Analyse als Harness-Modell extrahiert werden kann. Sie können dieses Harness-Modell zum ausführlichen Testen von zu entwickelnden Komponenten verwenden oder wenn das übrige Systemmodell nicht für die Simulation zur Verfügung steht.

Die Funktion zur Harness-Modell-Erstellung nimmt automatisch die Schnittstellenkonfiguration für die Ein- und Ausgänge auf der obersten Modellebene vor. Das schließt auch komplexe, weit verschachtelte Busse mit ein. Subsystemabhängigkeiten, wie z. B. External Data Stores, sind in das Harness-System integriert und mit den neuen Modelleingängen verknüpft. Alle erforderlichen Signalbezeichnungen und -verbindungen werden automatisch vorgenommen und entsprechen den Attributen der dem Test unterzogenen Komponente.

Datenprotokollierung, Import und Datenerstellung

Mithilfe der Datenprotokollfunktion können Sie während der Closed-Loop-Simulation die Eingangssignale erfassen und dann die protokollierten Testvektoren erneut zum Simulieren des Harness-Modells verwenden. Da das zugrunde liegende Datenformat kompatibel mit Simulink Design Verifier™ ist, können Sie die in Simulink Design Verifier vorhandene Testerstellungsfunktion dazu verwenden, zusätzliche Testfälle zu generieren.

Beim Erstellen des Harness-Modells können über die Harness-Erstellungsfunktion auch die protokollierten Daten mit einbezogen und in den Signal Builder-Block importiert werden, damit sie dort bearbeitet werden können.

Harness-Modelle mit Signal Builder-Block können zur Fehlerbehebung und detaillierten Analyse eingesetzt werden. Der Signal Builder-Block in Simulink ermöglicht Ihnen, die Testvektoren grafisch zu bearbeiten und vorhandene Testdaten aus Tabellenkalkulationsprogrammen zu importieren.

Workflow in Simulink Verification and Validation utilizing component testing functions to augment tests done on the control system model and to verify the model and code in the simulation.
Komponententest-Workflow in Simulink Verification and Validation. Der Workflow verwendet die Komponententestfunktionen des Produkts, um die im Regelsystemmodell ausgeführten Tests zu erweitern und während der Simulation das Modell und den Code zu verifizieren.

Testausführung

Die Testausführungsfunktion gibt Ihnen die Möglichkeit, Testfälle gegen die Modelle und den generierten Code automatisch laufen zu lassen, und zwar in der Simulation und im SIL- bzw. PIL-Modus. Für die Modi SIL und PIL ist der Embedded Coder erforderlich.

Die Komponententestergebnisse können in den Data Inspector importiert werden, um dort weiter ausgewertet zu werden. Die Testausführungsfunktion kann in die Modellabdeckungs- und Codeabdeckungswerkzeuge integriert werden, damit zusätzliche Informationen über die Vollständigkeit der Tests erfasst werden können.

Verknüpfen von Tests mit den Anforderungen

Im Signal Builder können die Testfälle mit externen Dokumenten, wie z. B. funktionellen Anforderungen und Testplänen, über das Requirements-Feld im Signal Builder-Fenster verknüpft werden. Auch können Sie den einzelnen Testfällen Assertions zuweisen, damit die Ergebnisse („bestanden“/“nicht bestanden“) automatisch analysiert werden können.

Using the Simulink Signal Builder block to link test cases with verification blocks and requirements.
Verwendung des Simulink Signal Builder-Blocks, um Testfälle mit den Verifizierungsblöcken und Anforderungen zu verknüpfen. Das Einstellungen des Verifizierungsblocks und der Requirements-Reiter sind zu sehen.

Analysieren der Modellabdeckung

Durch Simulink Verification and Validation werden Modellabdeckungsberichte erstellt, um auf noch nicht getestete Elemente im Design, wie z. B. logische Bedingungen, Switches, Interpolationsintervalle in Lookup-Tabellen und Subsysteme, hinzuweisen. In diesen Berichten, die als HTML-Dokumente ausgegeben werden, wird die dem Industriestandard entsprechende Metrik zur strukturellen Abdeckung verwendet. Aus diesen Berichten gehen auch die Abdeckungsinformationen über das Modell hervor, so dass Sie das Modell nach Komponenten mit fehlender Abdeckung durchsuchen und dann zu den damit verbundenen Anforderungen navigieren können. Sie können auf diese Weise entscheiden, ob die Anforderungen, Testfälle oder Design möglicherweise geändert werden müssen, um Ihre Abdeckungsziele zu erreichen.

Model coverage report for a group of test cases run in simulation.
Modellabdeckungsbericht über eine Gruppe von simulierten Testfällen.

Simulink Verification and Validation stellt Ihnen folgende acht Analysemetriken für die Modellabdeckung zur Verfügung:

Durch zyklomatische Komplexität wird die strukturelle Komplexität eines Modells gemessen welche in etwa dem McCabe-Komplexitätswert für den aus dem Modell generierten Code entspricht.

Mithilfe der Entscheidungsüberdeckung werden die Entscheidungspunkte im Modell, wie z. B. Simulink Switch-Blöcke und Stateflow-Zustände, untersucht.

Über die Bedingungsüberdeckung werden die Blöcke untersucht, die die logische Kombination der Eingaben, wie z. B. der Logic Block- oder Stateflow-Transitionen, ausgeben.

Modified Condition/Decision Coverage (MC/DC) analysiert sicherheitskritische Software, wie durch RTCA DO-178B definiert, und entscheidet, ob die logischen Eingaben unabhängig voneinander die Ausgabe geändert haben.

Durch die Lookup-Tabellenüberdeckung (LUT) wird die Verwendungshäufigkeit für die einzelnen Interpolationsintervalle aufgezeichnet. (Ein Testfall hat volle Abdeckung, wenn dadurch jedes Interpolations- und Extrapolationsintervall mindestens einmal ausgeführt wird.)

Über die Signalbereichsüberdeckung werden die Minimal- und Maximalwerte angezeigt, die während der Simulation für jeden Blockausgang und für alle Stateflow-Datenobjekte berechnet wurden.

Mithilfe von Signalgrößenüberdeckung wird für alle „variable-size“-Signale im Modell die minimale, maximale und zugewiesene Größe aufgezeichnet. In diesen Bericht werden nur Blöcke mit „variable-size“-Ausgangssignalen mit einbezogen.

Simulink Design Verifier-Abdeckung zeichnet die Modellabdeckungsdaten für die Blöcke und Funktionen des Simulink Design Verifier auf.

Probieren Sie Simulink Verification and Validation

Testsoftware anfordern

Frühzeitige Modellabsicherung in der Systementwicklung mit Simulink

Webinar anzeigen