Diese Abbildung ist ein Vorschaubild, welches für den Artikel MXAM für Einsteiger: Einführung in statisches Testen mit MXAM verwendet wird.
Abbildung: Ansicht der MXAM-Analyseergebnisse

MXAM für Einsteiger: Einführung in statisches Testen mit MXAM

Sophia Kohle

Ingenieur:innen in der modellbasierten Entwicklung (Model-Based Development, MBD), zum Beispiel in der Automobilbranche, möchten in der Regel die Modellqualität gewährleisten, ohne die Modelleffizienz zu beeinträchtigen. Der effektive Einsatz von Modellierungswerkzeugen ist dabei zentral. Die richtigen Tools analysieren und testen nicht nur die Modellqualität anhand von Modellierungsstandards, sondern verbessern Modelle auch mit Hilfe der Analyseergebnisse. Dieser Artikel gibt einen praxisnahen Einstieg in die Benutzung vom MES Model Examiner® (MXAM), einer integrierten Plattform zur umfassenden statischen Modellanalyse, und zeigt, warum MXAM auch Einsteigern eine hochwertige Modellierung ermöglicht.

Die Abbildung 1 beschreibt, wie MXAM und MoRe verschiedene Phasen des agilen Workflows im Modellentwicklungsprozess unterstützen.
Abbildung 1: MXAM (blaues Tool-Logo) und MoRe (rotes Tool-Logo) unterstützen verschiedene Phasen des agilen Workflows im Modellentwicklungsprozess.

Einstieg: Was ist MXAM?

MXAM ist ein professionelles Werkzeug zur umfassenden statischen Analyse von MATLAB/MathWorks-Simulink-, Stateflow-, Embedded Coder- und TargetLink-Modellen. Es wird überwiegend auf der linken Seite des V-Modells, also in der Designphase der Softwareentwicklung eingesetzt. MXAM deckt den gesamten Prozess vom Architektur-Design bis zur Unit-Entwicklung und -Implementierung ab und stellt dabei sicher, dass Modelle squalitativ hochwertig sind und internationalen Industriestandards wie ISO 26262 entsprechen. Seit MXAM v10.0 ist MES Model & Refactor® (MoRe) in MXAM integriert. MoRe beschleunigt und vereinfacht die Modellerstellung sowie das Refactoring und stellt damit eine wertvolle Erweiterung der MXAM-Funktionalitäten dar.

Statische Tests lassen sich direkt in den Workflow der Modellentwicklung einbinden. MXAM unterstützt die Modellierung in den verschiedenen Phasen des Prozesses. Die Abbildung zeigt, wie der Workflow mit der Modellerstellung beginnt und durch eine detaillierte Analyse von Modellmetriken und Modellierungsrichtlinien ergänzt wird. Das Ergebnis ist ein klar strukturierter und umfassender Bericht, der als Grundlage dient, um potenzielle Probleme im Modell schnell zu identifizieren und zu beheben. Auf diese Weise wird sichergestellt, dass das Modell alle Anforderungen an die Qualitätssicherung erfüllt. Es wird also eine hochwertige Modellierung mit minimalem Aufwand ermöglicht.

MXAM unterstützt Sie in den folgenden Bereichen:

  • Kontinuierliche Integration der statischen Analyse
  • Überprüfung von Modellierungsrichtlinien und automatisierte Modellkorrektur bei Richtlinienverstößen
  • Bewertung von Modellmetriken & Strukturanalysen
  • Modell-Refactoring & Auto Layout (Funktionen von MoRe)
  • Modelle, die die Industriestandards für Sicherheit und Qualität einhalten

Die Integration dieser Funktionen macht MXAM zu einem professionellen und umfassenden Tool für statisches Testen. Im folgenden Abschnitt lernen Sie die einzelnen Funktionen im Detail kennen.

Die Abbildung 2 beschreibt das Simulink-Modell eines sekundären Subsystems vor der Optimierung durch Modellierungsrichtlinien.
Abbildung 2: Simulink-Modell eines sekundären Subsystems vor der Optimierung durch Modellierungsrichtlinien

Warum sollten Sie MXAM für die statische Modellanalyse wählen?

Die modellbasierte Entwicklung (MBSE) basiert auf einem anforderungsbasierten, testgetriebenen Workflow, um kontinuierlich die Qualität sicherzustellen. Die Designqualität und die funktionale Qualität sind gleichermaßen wichtig. Ein klar strukturiertes Modell verbessert die funktionale Eignung erheblich.

Wie lässt sich die Qualität des Modelldesigns gewährleisten? Statische Modelltests helfen Ingenieur:innen dabei, die Eignung des Modelldesigns sicherzustellen. Sie verbessern nicht nur bereits in Entwicklung befindliche Modelle, sondern unterstützen auch die frühe Qualitätssicherung. Probleme werden bereits vor der Codegenerierung erkannt. Sowohl die Modell- als auch die Codequalität profitieren davon.

In der Praxis unterstützt MXAM eine hochgradig automatisierte statische Analyse und legt den Fokus auf Lesbarkeit, Robustheit und Fehlervermeidung von Modellen. Gleichzeitig wird die Qualität des generierten Codes verbessert. Modellierungsrichtlinien spielen hierbei eine wichtige Rolle. Die folgende Abbildung zeigt ein Teilsystem eines Simulink-Modells:

Die Abbildung 3 zeigt das sekundäre Subsystem eines Simulink-Modells nach der Optimierung anhand von Modellierungsrichtlinien.
Abbildung 3: Sekundäres Subsystem eines Simulink-Modells nach der Optimierung anhand von Modellierungsrichtlinien

In diesem Modell sind mehrere Probleme erkennbar, wie zum Beispiel:

  • Problem 1: Der Blockname sollte unterhalb des Blocks positioniert werden, nicht darüber.
  • Problem 2: Konstantenblöcke sollten keine spezifischen numerischen Werte (z. B. „5“ oder „10“) direkt als Namen verwenden, sondern als Parameter definiert werden. Ausnahmen sind „0“ und „1“.
  • Problem 3: Die Ports des Subsystems sind nicht korrekt ausgerichtet, was die Lesbarkeit des Modells beeinträchtigt.
  • Problem 4: Blöcke sollten klar erkennbar sein; in diesem Fall entspricht das Layout nicht den Modellierungsrichtlinien.
  • Problem 5: Ein Eingangsport ist innerhalb des Systemlayouts versteckt, was die Transparenz des Modells reduziert.
  • Problem 6: Der Product-Block sollte nicht mehr als zwei Eingangsports haben, da dies zu unerwarteten Ergebnissen führen kann.

Diese Probleme verringern die Designqualität des Simulink-Modells erheblich. Die Abbildung unten zeigt die optimierte Version des Modells nach Anwendung von Modellierungsrichtlinien mit MXAM. Alle zuvor genannten Probleme wurden präzise korrigiert, was zu einer deutlichen Verbesserung der Modelllesbarkeit und der Codequalität führt.

Es ist deutlich erkennbar, dass die Beurteilung der Einhaltung von Modellierungsrichtlinien entscheidend ist, um die Modellqualität in der praktischen Anwendung sicherzustellen. Bewertetet werden vor allem Modell-Layout, Daten- und Steuerfluss, Datentypen sowie Konfigurationseinstellungen. MXAM deckt über 700 Modellierungsrichtlinien ab, darunter Richtlinien von MISRA, MAAB und MES. Nach der Analyse bietet MXAM die Möglichkeit, erkannte Fehler mit nur einem Klick automatisch zu beheben.

Darüber hinaus können Modelle Designprinzipien folgen, die aus der funktionalen Sicherheit abgeleitet sind. Die Bewertung von Modellmetriken gemäß den jeweiligen Standards überprüft MXAM ebenfalls. Beispielsweise enthält die Norm ISO 26262-6 spezifische Empfehlungen und Prinzipien für die Softwarearchitektur in der Automobilindustrie bei der Produktentwicklung auf Softwareebene. Wichtige Metriken daraus umfassen Modellkomplexität, Größe, Inkohärenz, Klonerkennung und weitere. Durch den Einsatz von MXAM kann die Validierung und Analyse dieser Modellmetriken bereits früh im Entwicklungsprozess durchgeführt werden, wodurch die Modellqualität gesteigert und gleichzeitig die Stabilität und Sicherheit des Softwaresystems gewährleistet werden. Lesen Sie den Artikel „Wie Sie die Modellarchitektur Ihrer Software bewerten“, um mehr darüber zu erfahren.

Dies wirft mehrere wichtige Fragen auf: Wie verbessert man das Modell-Layout? Wie können wiederkehrende Aufgaben automatisiert werden? Hier kommt MoRe ins Spiel. Mit 30 Aktionen in sechs Kategorien optimiert MoRe, Bestandteil von MXAM (Functional Safety Solution), die Modellierungsprozesse. MoRe sorgt für Zeitersparnis und steigert die gesamte Modellqualität.

Die Abbildung 4 zeigt die Ansicht der MXAM-Analyseergebnisse.
Abbildung 4: Ansicht der MXAM-Analyseergebnisse

MXAM für Einsteiger: Erste Schritte und Überblick

Um mit MXAM zu arbeiten, muss zunächst im Tool ein Projekt eingerichtet werden, da dies die Grundlage jeder Analyse bildet. Unsere MXAM-FAQ-Seite erklärt Ihnen, wie Sie ein Projekt einrichten, das Modell auswählen und die Analyse starten.

Nach der Modellanalyse stellt MXAM den Anwender:innen einen detaillierten Analysebericht zur Verfügung, der die Einhaltung der ausgewählten Modellierungsrichtlinien dokumentiert. In der Abbildung unten erkennen Sie, wie die Analyseergebnisse in einer strukturierten Ergebnisansicht dargestellt sind. Diese zeigt potenzielle Probleme und Bereiche mit Verbesserungspotenzial.

Die Abbildung 5 beschreibt die verschiedenen Navigationsmethoden in der MXAM-Berichtsansicht.
Abbildung 5: Verschiedene Navigationsmethoden in der MXAM-Berichtsansicht

Die MXAM-Berichtsansicht lässt sich in zwei unterschiedlichen Navigationsmöglichkeiten anzeigen:

  1. Dokumenten-Navigation: Zeigt aggregierte Analyseergebnisse auf jeder Ebene des Berichts und Dokuments an, einschließlich Modellname und Analyseabschlusszeit. Anwender können die Analyseergebnisse auch über eine Baumstruktur in der Symbolleiste anzeigen.
  2. Artefakt-Navigation: Stellt die Analyseergebnisse basierend auf der Strukturhierarchie des Modells dar und zeigt aggregierte Ergebnisse für das entsprechende System oder Subsystem in Baumstrukturformat an.
Die Abbildung 6 zeigt die Ergebnisse der MXAM-Konformitätsanalyse.
Abbildung 6: Ergebnisse der MXAM-Konformitätsanalyse

Findings werden in MXAM im Modellkonformitätsbericht angezeigt. In der Abbildung unten sehen Sie eine Liste der Ergebnisse der Konformitätsanalyse für das Modell. Mehrere Analyse-Elemente sind mit nur einem Klick verfügbar:

  • Metrics - Relevante Indikatoren aus der Modellarchitekturanalyse
  • Annotations - Eine Liste mit Kommentaren zur Modellkonformität
  • Analysis Configuration - Details zu den Einstellungen der Modellanalyse
  • Metrics Summary- Die wichtigsten Metriken der Modellanalyse
Die Abbildung 7 beschreibt die Details der MXAM-Verstöße.
Abbildung 7: Details der MXAM-Verstöße

Anwender:innen können bestimmte Analyseergebnisse auch über die Menü- oder Filteroptionen auswählen und anzeigen. Detaillierte Informationen zu den Analyseergebnissen sind in der Finding-Details-Ansicht zugänglich. Wie in der Abbildung 7 unten gezeigt, können Sie detaillierte Beschreibungen von Verstößen gegen die relevanten Modellierungsrichtlinien sowie die entsprechenden Analyseergebnisse einsehen.

Die Abbildung 8 beschreibt die Detailseite der MXAM-Modellierungsrichtlinien.
Abbildung 8: Detailseite der MXAM-Modellierungsrichtlinien

Die Findings werden mit spezifischen Pfaden (Path) und Blocknamen (Name) sowie den genauen Gründen für das fehlerhafte Ergebnis angezeigt. Anwender:innen können direkt über Hyperlinks, die im Pfad und Blocknamen eingebettet sind, zu der Stelle im Modell navigieren, an der eine Richtlinie verletzt wurde. Zusätzlich ermöglicht die Option „Repair Finding“, Fehler mit einem einzigen Klick zu beheben, wodurch der Prozess zur Behebung von Richtlinienverstößen erheblich vereinfacht wird.

Als Beispiel für Modellierungsrichtlinien betrachten wir die Richtlinie mcheck_misra_slsf_030_c. Auf der Detailseite (siehe Abbildung 8 unten) finden Anwender:innen eine umfassende Beschreibung dieser Richtlinie, einschließlich der Pass-/Fail-Kriterien, die bestimmen, ob ein Prüfelement der Regel entspricht oder nicht. Zudem bietet die Seite entsprechende Lösungsvorschläge sowie eine detaillierte Beschreibung der erforderlichen Maßnahmen, um eventuelle Probleme zu beheben bzw. zu „reparieren“.

MXAM kann den abschließenden Bericht bequem in verschiedenen Formaten exportieren, darunter HTML, PDF, Excel, XML sowie mxmr (MXAM-eigenes Format).

Zusätzliche Einstiegshilfen für MXAM-Anfänger

MES stellt weitere Lernmaterialien und Schulungen für MXAM-Anfänger zur Verfügung. Erkunden Sie diese jetzt und bauen Sie Ihr Wissen aus!

Video ansehen: Wir haben für Sie das passende Schulungsangebot

Kontaktieren Sie uns

Dieses Bild zeigt Elena Bley.
Elena Bley
Senior Manager Marketing & Webinars
Bitte addieren Sie 4 und 8.

* Pflichtfeld

Bitte addieren Sie 1 und 9.