Dieses Bild ist ein Thumbnail, das den Artikel Hochwertiges Modellieren leicht gemacht illustriert - Lernen Sie MBD kennen.
Bild: Software-Design und Software-Test im V-Modell

Modellieren leicht gemacht: Lernen Sie, wie man modellbasiert entwickelt

Die zunehmende Ausstattung von Kfz-Steuergeräten mit erweiterten Funktionen führt auch zu einer wachsenden Komplexität der dafür benötigten Software und Softwaremodelle. Die Anforderungen an Softwarequalität, Zuverlässigkeit und Sicherheit in der Automobilindustrie sind ganz generell gestiegen. Modellbasierte Entwicklung (MBE) ist der beste Ansatz, um eine qualitativ hochwertige Entwicklung eingebetteter Software in der Automobilindustrie zu erreichen. Dieser Artikel zeigt auf, wie Sie MBE-Methoden implementieren, um eine qualitativ hochwertige Modellierung zu erreichen und damit die Entwicklung Ihrer sicherheitskritischen Software zu verbessern. Wir beginnen mit den Grundlagen und erläutern dann die Bedeutung der MBE und deren Grundprinzipien.

Figure 1: model-based development (MBD)
Abbildung 1: Modellbasierte Entwicklung (MBE, MBSE)

Was ist modellbasierte Entwicklung (MBE bzw. MBSE)?

MBE, auch MBSE für modellbasierte Software-Entwicklung genannt, ist eine etablierte Praxis in der Softwareentwicklung für die Automobilindustrie. Richtig implementierte MBE-bzw. MBSE-Methoden können die Entwicklungseffizienz erheblich steigern, die Entwicklungskosten senken, die Code-Qualität verbessern und die Entwicklung sicherheitskritischer Software erleichtern.

Die folgende Abbildung zeigt, dass dabei das Modell als grundlegend für den gesamten MBE-Entwicklungsprozess angesehen wird.

 

Die MBE verfolgt folgende Grundprinzipien:

  • Abstraktion: Abstraktion in Form von Modellen vereinfacht die Darstellung komplexer Softwaresysteme und macht sie leichter verständlich und handhabbar.

  • Einheitliche Sprache: Die Verwendung von Modellen als einheitliche Sprache erleichtert die Kommunikation bei der Zusammenarbeit in der Entwicklung.

  • Eine einzige Quelle: Modelle dienen als konsistente einzige Quelle („single source of truth“). Sie spiegeln jede Aktualisierung oder Änderung der Software wider, um Missverständnisse und Unstimmigkeiten zwischen den Beteiligten zu vermeiden.

  • Nachverfolgbarkeit: MBE fördert die bidirektionale Nachverfolgbarkeit während des gesamten Entwicklungsprozesses, um sicherzustellen, dass die Software in allen Punkten mit den Anforderungen übereinstimmt.

  • Iterative Entwicklung: MBE unterstützt die iterative Entwicklung. Entwickler:innen erstellen und verfeinern Modelle über mehrere Iterationen, was eine kontinuierliche Verbesserung und Anpassung an sich ändernde Anforderungen ermöglicht.

  • Wiederverwendbarkeit: Modelle und Tests können innerhalb desselben Projekts oder projektübergreifend wiederverwendet werden. Das spart Zeit und Aufwand. Wiederverwendbare Modelle fördern die Konsistenz und verringern die Redundanz.

  • Vorgezogene bzw. vorausgelagerte Qualitätssicherung: Modelle werden bereits in frühen Entwicklungsphasen zur Verifizierung und Validierung eingesetzt. Diese vorausgelagerte Qualitätssicherung reduziert Fehler frühzeitig und sichert die Softwarequalität.

  • Tool-Unterstützung: MBE wird durch spezielle Software-Tools unterstützt, die die Erstellung, Anpassung und Analyse von Modellen erleichtern. Diese Software-Tools sind bei der Umsetzung der MBE essenziell.

  • Automatisierung: MBE fördert die automatische Generierung von Code und anderen Artefakten aus Modellen. Die Automatisierung verbessert die Effizienz und verringert die Wahrscheinlichkeit von manuellen Fehlern.

 

Diese Grundprinzipien sollten verfolgt werden, um die Vorteile der MBE voll auszuschöpfen. In den folgenden Abschnitten wird erörtert, wie die MBE-Prinzipien eine hochwertige Modellierung gewährleisten können.

Figure 2: Frontloaded quality assurance facilitates high-quality model design
Abbildung 2: Vorgelagerte Qualitätssicherung erleichtert den Entwurf hochwertiger Modelle

MBE als Schlüssel für hochwertiges Modellieren

MBE ist der Schlüssel zu einer qualitativ hochwertigen Modellierung. Ein effizienter MBE-Prozess setzt zudem eine Qualitätssicherung voraus. Was macht also ein „hochwertiges“ Modell aus?

Zunächst einmal sollte ein qualitativ hochwertiges Modell ein einzigartiges und konsistentes Erscheinungsbild haben, mit guter Lesbarkeit und Wartbarkeit. Modularität und Testbarkeit sollten ebenso unterstützt werden. Außerdem sollte ein qualitativ hochwertiges Modell im Stil gängige Best Practices einhalten und fehleranfällige Modellmuster vermeiden. Gute Modelle verbessern auch die Qualität des daraus generierten Codes.

Darüber hinaus ist die frühe Qualitätssicherung für die kontinuierliche Verbesserung der gesamten Softwarequalität unerlässlich. Im V-Modell der Softwareentwicklung ist die Qualität des Designs der Modelle genauso wichtig wie die funktionale Qualität. Wenn Fehler oder Probleme im Modell erst in den letzten Phasen der Softwareentwicklung entdeckt werden, kostet es viel Zeit und Mühe, die Ursachen zu finden und sie im Modell zu korrigieren.

Die vorgelagerte Qualitätssicherung ist eines der Grundprinzipien der MBE. Sie ermöglicht die Überprüfung der Modelle, die Identifizierung und Korrektur von Fehlern und die kontinuierliche Verbesserung der Modellqualität.

Daher ist eine frühe Qualitätssicherung unabdingbar, um eine qualitativ hochwertige Modellierung zu erreichen. In der Praxis lässt sich dies erreichen, indem iterative Tests in Softwarearchitektur- und Unit-Design-Phasen implementiert wird. Dies wird mit Hilfe von Tools für statische Tests umgesetzt („statische Testwerkzeuge“).

Figure 3: Requirements of model architechtural design from ISO 26262: 2018(resource: ISO 26262: 2018)
Abbildung 3: Anforderungen an die Modellarchitektur aus ISO 26262:2018(Quelle: ISO 26262:2018)

Best Practices für die MBE gemäß ISO 26262

Bei der Entwicklung sicherheitskritischer Modelle ist die Einhaltung von Richtlinien  ein weiterer Punkt. Die Norm für funktionale Sicherheit ISO 26262 empfiehlt die Anwendung von MBE-Methoden bei der Entwicklung sicherheitskritischer Software und fordert, dass das Modelldesign folgende Eigenschaften aufweisen sollte: Konsistenz, Verständlichkeit, Angemessenheit, Korrektheit, Einfachheit, Robustheit und Verifizierbarkeit. Die ISO 26262:2016, Teil 6 („Produktentwicklung auf Softwareebene“) formuliert detaillierte Anforderungen an die Modellarchitektur, um die oben genannten Eigenschaften eines guten Modells zu erreichen. Die Norm schreibt auch die Einhaltung von Modellierungsrichtlinien vor.

Für den Entwurf von Modellarchitekturen gibt die ISO 26262 eine „dringende Empfehlung“ für geringe Komplexität, begrenzte Größe und Konformität von Softwarekomponenten für die ASIL-Level A bis D.

Ziel der Begrenzung der Modellkomplexität ist es, die Modellstruktur zu vereinfachen, die Komplexität zu verringern und die Modelle leichter verständlich zu machen. Dadurch wird die Fehlerwahrscheinlichkeit verringert und die Wartbarkeit des Modells verbessert. Die Beschränkung der Größe von Softwarekomponenten kann dazu beitragen, die strukturelle Darstellung des Modells zu verbessern. Indem Teile des Modells in Bibliotheken ausgelagert werden, wird die Modellstruktur flexibler. Ohne irrelevante oder geklonte Modellteile wiederholt testen zu müssen, können die Entwickler:innen dann schnell die zu testenden Modellteile erkennen und sich auf diese konzentrieren. Auch die Testbarkeit der Modelle wird verbessert. Zusammenfassend kann gesagt werden: Die Qualität der Modellstruktur ist ein wichtiger Aspekt der Modellqualität. Entwickler:innen können Modellmetriken analysieren, um ein tieferes Verständnis für die Qualität der Modellstruktur zu erlangen. Sie können Änderungen vornehmen und schließlich eine qualitativ hochwertige Modellierung erreichen.

ISO 26262 verlangt auch, dass Modelle Modellierungsrichtlinien folgen. Modellierungsrichtlinien werden abgeleitet aus Best Practices. Sie können die Robustheit, Lesbarkeit und Konsistenz verbessern und Fehler vermeiden.

Figure 4: MXAM report page for model metrics
Abbildung 4: MXAM-Report für Modellmetriken

MBE-Tools für die praktische Anwendung

Wie bereits erwähnt, sollten Entwickler:innen sowohl den Umsetzung von Modellierungsrichtlinien sicherstellen als auch die Modellkomplexität mit Modellmetriken prüfen und kontrollieren.

In einem solchen MBE-Prozess kann der Einsatz professioneller Tools die Effizienz der Modellimplementierung fördern. Ein Beispiel dafür ist der MES Model Examiner (MXAM), wie in der folgenden Abbildung dargestellt.

Figure 5: MXAM modeling guidelines analysis report
Abbildung 5: Bericht nach Analyse von Modellierungsrichtlinien in MXAM

Diese MXAM-Reportseite verwendet intuitiv verständliche Farben zur Unterscheidung der Analyseergebnisse der Modellmetriken. In der Abbildung erhielt das Element „Controller“ in diesem Modell ein „Warning“ für die Komplexität und wurde daher gelb markiert. In MXAM braucht der Benutzer nur darauf zu klicken und „Subsystem öffnen“ auszuwählen. MXAM kann den Benutzer direkt zu den problematischen Subsystemen führen und die verbessernden Operationen durchführen. MXAM enthält auch Methoden zur Modelloptimierung, z. B. die Funktion „Auto-Layout“ für das Modell-Refactoring zur effektiven Verbesserung des Modell-Designs mit nur einem Klick. „Auto Layout“ ist eine Funktion von MES Model & Refactor (MoRe), die in MXAM (Functional Safety Solution) enthalten ist.

Modellierungsrichtlinien sind entscheidend für einen effizienten MBE-Prozess. MXAM unterstützt u.a. Modellierungsrichtlinien von MAB, MISRA, dSPACE und MES. MXAM unterstützt zudem auch kundenspezifische Richtlinien, die auf besonderen Bedürfnissen des Anwenders basieren. Nach der Konfiguration und Ausführung der Analysen in MXAM können die Ergebnisse problemlos überprüft und Reparaturen und Anmerkungen vorgenommen werden. Dies zeigt die folgende Abbildung.

Wie die Ergebnisse der Analyse der Modellierungsrichtlinien in der Abbildung zeigen, hat dieses Teilsystem des Modells die mehrere Richtlinienprüfungen nicht bestanden und muss repariert werden. Per Klick auf den Link führt der interaktive Bericht von MXAM den Benutzer direkt zu den Modellteilen, die überprüft werden müssen. MXAM bietet sowohl manuelle Reparatur als auch automatische Reparatur-Optionen.

Es sollte deutlich geworden sein, dass MXAM die Modelle mit Hilfe von Modellmetriken und Modellierungsrichtlinien effizient analysieren, verifizieren und reparieren kann. Dadurch kann die Qualität der Modellierung in MBE entsprechend der geltenden Industriestandards gewährleistet werden.

Zusammenfassend lässt sich sagen, dass MBE die beste Methode zur Entwicklung hochwertiger eingebetteter Software in der Automobilindustrie ist. Richtig implementierte MBE-Methoden können die Codequalität verbessern, die Entwicklungskosten senken und die Entwicklung von sicherheitskritischer Software beschleunigen. Um eine qualitativ hochwertige Modellierung zu erreichen, ist eine frühe bzw. vorgelagerte Qualitätssicherung unerlässlich. Außerdem muss sichergestellt werden, dass das Modell den Industriestandards wie ISO 26262 entspricht. Modellmetriken können die Modellkomplexität wirksam kontrollieren, und die Anwendung von Modellierungsrichtlinien kann die Robustheit, Lesbarkeit und Konsistenz von Modellen erheblich verbessern und Fehler vermeiden. Entwickler:innen können die Modellmetriken und Modellierungsrichtlinien in ihrem Modell überprüfen und die Reparaturen mit Hilfe professioneller Modellierungswerkzeuge durchführen. Das spart viel Zeit und verbessert gleichzeitig die Entwicklungseffizienz.

Mehr zum Thema Modellierung und MBD/MBSE

Klicken Sie hier, um sich die Aufzeichnung und die Präsentation von unserem Webinar „High-Quality Modeling Made Easy!“ anzusehen.  In diesem Webinar diskutierten wir die Herausforderungen der modellbasierten Entwicklung und die besten Praktiken zur effektiven und schnellen Bewältigung dieser Herausforderungen. Im Webinar lernen Sie außerdem, wie die richtigen Tools Ihnen helfen können, wie ein Profi zu modellieren!

In diesem Webinar diskutierten wir die Herausforderungen der modellbasierten Entwicklung und die besten Praktiken zur effektiven und schnellen Bewältigung dieser Herausforderungen. Im Webinar lernen Sie außerdem, wie die richtigen Tools Ihnen helfen können, wie ein Profi zu modellieren!

Haben Sie Fragen?

Dieses Bild zeigt Elena Bley.
Elena Bley
Senior Manager Marketing & Webinars

* Pflichtfeld

Was ist die Summe aus 2 und 6?