Newsletters

  • Vertrieb kontaktieren

Überprüfung der korrekten Umsetzung von Modellierungsstandards

Von Goran Begic, MathWorks

Entwürfe von Embedded Systems bestehen mitunter aus Modellen mit Tausenden oder Zehntausenden von Blöcken. Die Beherrschung dieses Komplexitätsgrades ist eine Herausforderung für deren Entwickler. Eine bewährte Methode dazu ist die Implementierung von Modellierungsstandards.

Wie Programmierstandards können auch Modellierungsstandards innerhalb einer Organisation, von verschiedenen Herstellern mit einem gemeinsamen Tätigkeitsgebiet oder von den Marktführern einer Branche vereinbart werden - ein Beispiel für letzteres ist das MathWorks Automotive Advisory Board (MAAB). Die Implementierung dieser Standards wird in der Regel durch Sichtprüfung der Modelle und der zugehörigen Dokumentation während des Designs verifiziert. Schneller und effizienter als diese zeitraubende und relativ unzuverlässige Methode ist eine automatische Überprüfung mit Hilfe von Funktionen aus Design-Werkzeugen wie Simulink Verification and Validation.

Automatisierte Überprüfung von Modellierungsstandards

Die automatische Überprüfung von Modellierungsstandards hilft nicht nur, die durchgängige Umsetzung der gesetzten Standards sicher zu stellen, sondern verhindert auch, dass Designprobleme in den generierten Programmcode weitergetragen werden.

Die Einhaltung von Modellierungsstandards lässt sich mit Hilfe des Model Advisor aus Simulink verifizieren (Abb. 1), der Modelle durch statische Überprüfungen für die Simulation und Codegenerierung vorbereitet. Mit seinen eingebauten Tests können Modelle auf ihre Vollständigkeit hin untersucht und zum Beispiel so parametriert werden, dass daraus Programmcode mit Real-Time Workshop und Real-Time Workshop® Embedded Coder erzeugt werden kann. Simulink Verification and Validation unterstützt darüber hinaus Überprüfungen der Modellierungsstandards, die sich beispielsweise auf die Umsetzung der vom MAAB festgelegten Stilrichtlinien konzentrieren.

modstd_fig1_w.jpg

 

Abb. 1: Im Model Advisor verfügbare Prüffunktionen für Modellierungsstandards. Zum Vergrößern auf das Bild klicken.

Der Model Advisor überprüft das gesamte Modell bezüglich der ausgewählten Punkte, zeigt alle gefundenen Verletzungen der Richtlinien an und gibt direkte Links zu allen Objekten aus, die nicht den Richtlinien entsprechen.

Beispiel: Überprüfung von Modellierungsstandards

Um den Wert eines automatisierten, auf Modellierungsstandards basierenden Design Review zu verdeutlichen, soll hier die Durchsetzung der MAAB-Stilrichtlinie jm_0010: „Port-Namen in Simulink-Modellen“ als Beispiel dienen. Sie empfiehlt, dass sämtliche Inport- und Outport-Blöcke sowie die daran angeschlossenen Signale namentlich übereinstimmen. Diese zunächst trivial erscheinende Prüfung beweist ihren Wert in großen Modellen.

Angenommen, ein Signal wurde falsch angeschlossen, weil die Dokumentation lückenhaft war oder weil eine zunächst nur vorläufige Problemlösung später nicht wieder korrigiert wurde. Der Fehler wurde in der Simulation nicht entdeckt, weil die Testfälle nicht die gesamte Funktionalität des Signals überprüft haben.

Bei einem einfachen Design würde dieses Problem wahrscheinlich während des visuellen Design Review auffallen. In einem komplexen Entwurf dagegen bleibt es unter Umständen bis zur Systemintegration unbemerkt und verursacht Verzögerungen und höhere Entwicklungskosten.

Eine Möglichkeit dem vorzubeugen, besteht in der Ausführung eines automatisierten Modell-Review, das die Modellierungsstandards überprüft.

Wenn Überprüfungen der Modellierungsstandards aktiviert sind, findet der Model Advisor automatisch alle Verletzungen der ausgewählten Richtlinien. Im vorliegenden Beispiel stellt der Model Advisor eine Unstimmigkeit zwischen Port- und Signalnamen (Abb. 2) fest. Durch Verfolgung des im Bericht angezeigten Links gelangt man direkt zum Ursprung der falschen Namenszuordnung.

modstd_fig2_w.jpg

 

Abb. 2: Bericht des Model Advisor zur Einhaltung zweier Stilrichtlinien. Zum Vergrößern auf das Bild klicken.

Der Anwender kann den Fehler nun korrigieren – er kann entweder den Port entfernen, die Logik überarbeiten, die die von diesem Port erzeugten Signale verarbeitet, oder Tests hinzufügen und für die überarbeitete Komponente einen neuen Abdeckungsbericht erstellen.

Erzeugung eigener Standards

Jedes Unternehmen (und wohl auch jedes größere Projekt) benötigt Design-Richtlinien, die auf die Art der zu entwickelnden Embedded Software-Anwendung, auf das Target, auf dem die Software einmal laufen wird, oder hinsichtlich der Spezifikationen und Standards, denen die Anwendung genügen muss, abgestimmt sind. Durch Modellierungsstandards lassen sich solche hersteller- oder projektspezifischen Richtlinien festhalten und auf Simulink- oder Stateflow-Modelle anwenden. Mit der Model Advisor-API aus Simulink Verification and Validation lassen sich nicht nur individuelle Prüfungen aller Modelle und Modell-Objekte definieren, sondern auch Prüfungen anderer Aspekte eines Projekts wie Objekteigenschaften oder Workspace-Variablen. Diese Überprüfungen werden als MATLAB-Funktionen geschrieben und in M-Files gespeichert. Einzelprüfungen lassen sich zudem gruppieren und wie jede andere Prüfung in Simulink Verification and Validation nach Bedarf an- und abschalten. Ein auf diese Weise mit dem Model Advisor erstellter Bericht gibt einen umfassenden Überblick über die Konformität eines Modells mit den gültigen Standards.

Das MathWorks Automotive Advisory Board

Das MathWorks Automotive Advisory Board (MAAB) wurde 1998 als Forum eingerichtet, um The MathWorks die Informationssammlung zu gewünschten Produktfähigkeiten zu erleichtern. Seine Gründungsmitglieder waren Toyota, Ford und DaimlerChrysler. Heute ist die Mehrzahl der großen OEMs und Zulieferer der Automobil­industrie im MAAB vertreten.

Ein wichtiger Beitrag des MAAB war die Herausgabe eines Satzes von Stilrichtlinien für die Modellierung, der öffentlich verfügbar ist.

Veröffentlicht 2007 - 91474v00

Receive the latest MATLAB and Simulink technical articles.

Related Resources

Latest Blogs