Bild: Realistische Messung der Modellgröße

Wie Sie die Modellarchitektur Ihrer Software bewerten

Eine gut strukturierte Modellarchitektur ist für die Entwicklung sicherer und zuverlässiger Software unerlässlich. In diesem Artikel erfahren Sie, wie der MES Model Examiner® (MXAM) die Modellarchitektur verbessert und das Komplexitätsmanagement vereinfacht und dadurch die Softwarequalität verbessert.

ISO 26262-konforme Analyse und Visualisierung der Modellarchitektur

Eine solide Modellarchitektur ist eine wesentliche Voraussetzung für sichere Software, die aus Modellen generiert wird. MXAM unterstützt Sie bei der Analyse der Architektur von Simulink-, Stateflow-, Embedded Coder- und TargetLink-Modellen. Die Analyse liefert Ihnen alle relevanten Software-Metriken, um die Architektur, Komplexität und Größe Ihrer Modelle realistisch zu bewerten. Die schnelle und präzise Struktur- und Komplexitätsanalyse von MXAM verschafft Ihnen vollständige Transparenz über Ihre Modelle und hilft bei der Verbesserung des generierten Codes.

Wie MXAM die Software-Modellkomplexität reduzieren und den generierten Code verbessern kann

Die Abbildung zeigt eine schnelle Strukturübersicht mit Hilfe der Artefakt-Navigation.
Abb. 1: Schneller Strukturüberblick mit der Artefakt-Navigation

1. Schneller Strukturüberblick

MXAM bietet eine schnelle und übersichtliche Visualisierung der Modellstruktur einschließlich der Subsystem- und Zustandsdiagramm-Hierarchien, des Schnittstellendesigns sowie objektiver Zahlen und Metriken zu den Eigenschaften der analysierten Systeme. MXAM bewertet die Modellkomplexität auf der Grundlage etablierter Software-Metriken und liefert detaillierte Informationen über die Anzahl und Art der im Modell verwendeten Elemente.

Die Abbildung zeigt eine schnelle Strukturübersicht mit Hilfe der Artefakt-Navigation.
Abb. 2: Schneller Strukturüberblick mit der Artefakt-Navigation
Diese Abbildung zeigt eine realistische Messung der Modellgröße anhand von Metriken
Abb. 3: Realistische Messung der Modellgröße mit Hilfe von Metriken

2. Realistische Messung der Modellgröße

"Wie groß ist mein Modell?" ist eine Frage, die mit den MXAM-Metriken zur "globalen Komplexität" einfach und objektiv beantwortet werden kann. Zur Berechnung der globalen Komplexität werden alle Elemente des analysierten Moduls berücksichtigt, einschließlich der Inhalte verschachtelter Subsysteme. Da die "globale Komplexität" auch die Komplexität der Implementierung widerspiegelt, bietet sie übrigens auch ein zuverlässiges Maß für den Test- und Überprüfungsaufwand.

Die Abbildung zeigt ein Simulink-Modell für die Motorgasdynamik.
Abb. 4: Realistische Messung der Modellgröße durch Metriken
Die Abbildung zeigt die Komplexität und Inkohärenzstufen in den "MXRAY-Metriken".
Abb. 5: MXRAY-Metriken zeigen Komplexität und Inkohärenz

3. Analyse bis ins letzte Detail

Die lokale Verteilung der implementierten Funktionalität im Modell wird mit Hilfe der „lokalen Komplexität“ bewertet. MXAM berechnet diese "lokale Komplexität" von Subsystemen in Simulink-, Stateflow- und TargetLink-Modellen auf Basis der Halstead-Metrik.

Mit Hilfe einer Bewertungsskala lassen sich Komplexitäts-Hotspots, also Modellteile mit zu hoher Komplexität aufgrund unausgewogener Funktionalität, schnell identifizieren. Aufgrund ihrer Komplexität sind diese Hotspots erfahrungsgemäß schwieriger zu testen und fehleranfälliger. Häufig wird in solchen Fällen ein Refactoring empfohlen, das mit Hilfe einer Kombination von MXAM-Modellmetriken priorisiert werden kann.

Die Bewertung, ob ein Teilsystem für eine weitere Zerlegung besonders geeignet ist, kann mit Hilfe der „Inkohärenzmetrik“ vorgenommen werden. Diese Metrik bewertet, inwieweit ein bestimmtes Simulink-Subsystem mit genau einer Aufgabe verbunden ist oder ob mehrere unabhängige Aufgaben implementiert sind. Das Refactoring durch eine geeignete Zerlegung wird einfacher, wenn die Subsysteme weniger kohärent sind.

Die Abbildung zeigt die effektive Suche nach Klonen unter den Subsystemen.
Abb. 6: Mit MXAM gefundene geklonte Teile

4. Effektive Suche nach Klonen unter den Subsystemen

MXAM erkennt Klone und bewertet die internen Abhängigkeiten von Subsystemen und hilft Ihnen, komplexe, fehleranfällige Modellteile zu finden und die Simulink-Modellkomplexität gering zu halten. Damit erhalten Sie wertvolle Unterstützung bei der Erfüllung wesentlicher Anforderungen der ISO 26262 an die Softwarearchitektur. Geklonte Teile werden von MXAM auch bei Layout- und Parameteränderungen gefunden. So können häufig wiederverwendete Funktionen sicher identifiziert und durch wiederverwendbare Komponenten wie referenzierte Modelle oder Bibliotheks-Subsysteme zentralisiert werden. Auf diese Weise wird die Modell- und Codegröße beherrschbar gehalten.

Ihre Vorteile durch den Einsatz von MXAM zur Verbesserung der Modellarchitektur

Transparenz

  • Identifiziert komplexe Modellteile (Hotspots)
  • Findet doppelte Subsysteme

Vereinfachung

  • Visualisiert die Modellstruktur
  • Bewertet die strukturelle Komplexität

Metriken

  • Berechnet alle relevanten, etablierten Softwaremetriken auf Modellebene
  • Berechnet modellspezifische Metriken

Compliance

  • Gewährleistung der Einhaltung von Sicherheitsstandards wie ISO 26262/IEC 61508 (Architectural Design Principles Part 6 Chapter 7)
  • Gewährleistet die Einhaltung des ASPICE -Qualitätsstandards (Evaluate software detailed design, Base Practice SWE.3.BP4)

PS: Für diejenigen unter Ihnen, die uns schon länger kennen: Modellmetriken und Komplexitätsanalyse waren die Hauptfunktionen des früheren MES-Tools MXRAY. Die Funktionalität von MXRAY wurde ab MXAM v.6 vollständig in MXAM integriert. MXRAY ist daher nicht mehr als eigenständiges Tool verfügbar.

Erfahren Sie mehr zu diesem Thema von unseren Expert:innen

What Model Metrics Have to Do With Software Quality

In diesem Webinar zeigen wir Ihnen, wie Sie die Modellqualität mithilfe der wichtigsten Konstruktionsprinzipien und Modellmetriken erheblich verbessern können. Darüber hinaus stellen wir Ihnen Strategien zur Interpretation sowie bewährte Verfahren für die Anwendung dieser Metriken vor. So erfahren Sie, wie Sie Ihre Gesamtmodellleistung optimieren können.

► Gehe zum Webinar

Kontaktieren Sie uns

Dieses Bild zeigt Elena Bley.
Elena Bley
Senior Manager Marketing & Webinars
Was ist die Summe aus 3 und 7?

* Pflichtfeld

Was ist die Summe aus 6 und 8?