Dieses Bild ist ein Thumbnail, das für den Artikel Modellbasierte Software-Entwicklung (MBSE): Warum sollte ich MBSE einsetzen? verwendet wird.

Modellbasiertes Entwickeln in der Theorie: Warum auf MBSE setzen?

Die modellbasierte Software-Entwicklung (auch modellbasiertes Software-Engineering, MBSE) ist eine etablierte Praxis in der Softwareentwicklung für die Automobilindustrie. Im Rahmen dessen dient ein ausführbares Modell als zentrales Element bei der Entwicklung eines eingebetteten Steuerungssystems.

 

Dieses Modell bildet die Grundlage für den gesamten Entwicklungsprozess und dient als früher Prototyp für die Anforderungserhebung, den algorithmischen Entwurf, die Software-Implementierung, das Testen und die Verifizierung. Aus dem Modell wird automatisch Code generiert, der für die Erstellung der Software verwendet wird, welche letztendlich in das Zielsystem integriert wird.

Erhöhung der Effizienz und Qualität während der Entwicklung

Eine Reihe von Trends setzt die Entwickler:innen und Ingenieur:innen in der Automobil- und Automatisierungsbranche zunehmend unter Druck, darunter:

  • Kürzere Entwicklungszyklen
  • Erhöhte Software-Komplexität
  • Eine Vielzahl von Sicherheitsanforderungen und Normen
  • Wachsende Nachfrage nach Produktanpassung

Durch die Verankerung der Funktionalität in einem zentralen Entwicklungsartefakt (dem Modell), das von verschiedenen Teams verstanden und genutzt werden kann, erleichtert die modellbasierte Entwicklung die interdisziplinäre Kommunikation sowie Zusammenarbeit und hilft, Fehlinterpretationen von Anforderungen zu vermeiden. Darüber hinaus stellt sie eine einheitliche Plattform und Simulationsumgebung zur Verfügung, die von vielen verteilten oder interdisziplinären Teams genutzt werden kann, um den Systementwurf zu optimieren.

Dies steigert die Produktivität und senkt gleichzeitig die Entwicklungszeit und -kosten. Code muss nicht mehr manuell erstellt werden. Das Risiko von Fehlern bei der manuellen Programmierung wird damit eliminiert. Zudem wird der Qualitätssicherung in den ersten Phasen des Prozesses durch eine frühzeitige Validierung der Systemanforderungen die notwendige Priorität eingeräumt.

Bessere Qualitätssicherung durch Konzentration auf die Funktionalität

Iterative Ansätze im modellbasierten Design
Iterative Ansätze im modellbasierten Design

Ein modellbasierter Ansatz verlagert den Entwicklungsprozess sozusagen "nach vorne", so dass der größte Teil der Arbeit in die frühen Entwicklungsphasen fällt und die Systemfunktionalität im Mittelpunkt steht.

Der MBSE-Ansatz trägt auch zur Verbesserung der Qualitätssicherungsmaßnahmen bei: Das Modell wird verwendet, um die Systemfunktionalität zu simulieren und zu testen. Damit wird eine frühzeitige Validierung und Fehlererkennung ermöglicht. Auch die Rückverfolgbarkeit der Anforderungen wird dank einer stärkeren Verbindung zwischen Software-Design und Anforderungen verbessert.

Insgesamt führt die MBSE zu einer deutlichen Verbesserung der Softwarequalität und zu weniger Softwarefehlern.

Die wichtigsten Vorteile der modellbasierten Entwicklung:

  • Frühzeitige Validierung der Funktionalität
  • Frühzeitige Fehlererkennung
  • Toolchain-Unterstützung für automatisierte Qualitätssicherung
  • Verringerung der Entwicklungszeit und -kosten
  • Steigerung der Produktivität
  • Stärkere Verbindung zwischen Software-Design und Anforderungen
  • Code wird automatisch generiert
  • Bessere teamübergreifende Zusammenarbeit und Kommunikation

Zehn Probleme, die beim modellbasierten Software-Design auftreten können und ihre Lösung

Im folgenden Video diskutieren wir die zehn größten Probleme, mit denen Entwickler:innen und Unternehmen bei der modellbasierten Software-Entwicklung konfrontiert sind und zeigen Lösungen für diese Herausforderungen auf.

Video ansehen: 10 Herausforderungen in der modellbasierten Software-Entwicklung

Die folgenden Absätze fassen kurz einige der zentralen Herausforderungen und deren Lösungen zusammen, die im Video behandelt werden.

Erstens kann eine schlechte Ressourcenverteilung zu einem ineffizienten Projektmanagement führen. Im Laufe der Entwicklung, insbesondere mit steigender Projektkomplexität, kann eine falsche Ressourcenzuweisung Entwickler:innen überfordern und schließlich zu Verzögerung der Fertigstellung führen.

Um dieser Situation zu begegnen, kann eine präzise Arbeitslastabschätzung Entwickler:innen helfen, solche Situationen zu überwinden.

Eine der vielen Funktionen von MES Model Examiner® (MXAM) ist die Berechnung der globalen Komplexität, mit der die Größe und das Volumen des Modells objektiv und umfassend geprüft wird. Die Zahlen zur globalen Komplexität können zur Ressourcenzuweisung für Entwicklung, Test und Review herangezogen werden. MXAM ermöglicht eine präzise Messung von Komplexitätsmetriken, wodurch Entwickler:innen geeignete Entscheidungen treffen und rechtzeitig Anpassungen vornehmen können. Dies stellt sicher, dass das Produkt reibungslos und pünktlich fertig wird.

Zweitens können übermäßig komplexe Modelle die fristgerechte Fertigstellung der Software beeinträchtigen. Wenn die Struktur eines Modells zu komplex ist, wird es zu einer erheblichen Herausforderung, das Produkt rechtzeitig fertigzustellen. Selbst bei einem optimalen Ausgangsdesign können Modelle im Laufe der Zeit unübersichtlich werden, wenn Fehler behoben und neue Funktionen hinzugefügt werden. Statistisch gesehen steigt mit zunehmender Komplexität eines Modells die Wahrscheinlichkeit von Fehlern.

Um diese Herausforderung zu bewältigen, kann die Reduzierung der Modellkomplexität helfen, Fehler zu minimieren und es Entwickler:innen erleichtern, Fehler aufzuspüren und zu beheben.

MXAM unterstützt hierbei, indem es präzise die komplexesten Teile des Modells identifiziert und hilft, fundierte Entscheidungen zu treffen.

Darüber hinaus können inkonsistente Modellierungsstile den Fortschritt in der Softwareentwicklung beeinträchtigen. Bei der Entwicklung von Steuerungsalgorithmen bietet Simulink viele Methoden für die Implementierung einer bestimmten Funktionalität. Wenn verschiedene Teams dieses Modell in unterschiedlichen Stufen des Entwicklungsprozess verwenden müssen, kann der inkonsistente Modellierungsstil zu Schwierigkeiten beim Verständnis des Modells zwischen den Teams führen, was wiederum mehr Zeit und Aufwand bedeutet.

Hier wird die Einhaltung eines konsistenten Modellierungsstils zu einer effektiven Lösung.

MXAM kann alle Modellbereiche identifizieren und anpassen, die nicht den Modellierungsrichtlinien entsprechen, und so Konsistenz im Modellierungsprozess gewährleisten.

Gleichzeitig erschweren fehleranfällige Modellierungsstile spätere Korrekturen und können unerwartetes Verhalten verursachen. Die Funktionen von Simulink sind für viele Bereiche sehr umfangreich. Viele davon sind fehleranfällig, so dass Richtlinien die Auswahl bestimmter zuverlässiger Sprachmengen (language subsets) erfordern.

Auch hier kann MXAM unterstützen: Die Richtlinienprüfungen von MXAM sorgen für die Umsetzung defensiver Implementierungstechniken, die Nutzung von Untermengen der Modellierungssprache sowie konsistente Daten- und Steuerflüsse, wie sie von der funktionalen Sicherheitsnorm ISO 26262 empfohlen werden.

Abschließend sollte auch berücksichtigt werden, ob der Entwicklungsprozess den Anforderungen der ISO-26262-Norm entspricht. Es wird mittlerweile als notwendiger Standard angesehen, dass der Entwicklungsprozess mit den Anforderungen der ISO 26262 übereinstimmt.

MES bietet zudem Beratungsdienste für die Einführung von ISO-26262-konformen Entwicklungsprozessen an. Von der Analyse bestehender Entwicklungsprozesse bis hin zur Implementierung bietet das MES-Prozess- und Qualitätsteam professionelle Unterstützung, Einführung und Optimierung von Softwareentwicklungen im Zusammenhang mit ISO 26262, ASPICE und AUTOSAR. Maßgeschneiderte Beratungsleistungen umfassen MBD-Prozesse, Entwicklung funktionaler Sicherheit und ASPICE-Grundpraktiken.

Modellbasierte Entwicklung in der Praxis

Die richtigen Werkzeuge für die richtige Herangehensweise

MES hat mehrere Werkzeuge entwickelt, um modellbasierte Entwicklungsprozesse zu verbessern. Vom Entwurf bis zur Implementierung und Verifizierung - diese Tools bieten umfassende Unterstützung bei der Softwareentwicklung.

MES Model Examiner® (MXAM) ist das Werkzeug für eine umfassende statische Modellanalyse. MXAM bietet die Überprüfung von Modellierungsrichtlinien, die Analyse der Modellstruktur und die Auswertung von Modellmetriken.

MES Model & Refactor® (MoRe) ist ein Produktivitätswerkzeug für die Modellierung mit MATLAB Simulink. MoRe erleichtert mit Auto-Layout-Funktionen das alltägliche Modellieren mit Simulink. MoRe vereinfacht und beschleunigt zudem das Erstellen und das Refactoring von Modellen. MoRe ist auch in MXAM - The Functional Safety Solution - enthalten.

MES Quality Commander® (MQC) ist ein Qualitätsüberwachungswerkzeug zur Bewertung der Qualität und Produktfähigkeit von Software. MQC stellt die Einhaltung von werkzeugspezifischen Referenz-Workflows sicher.

Prozessberatung zur ISO 26262-Compliance

Wir von MES bieten auch Experten-Consulting an, um Ihre Modelle und Ihren Entwicklungsprozess bei der Einhaltung der ISO 26262 zu unterstützen. Besuchen Sie unsere Beratungsseite für weitere Informationen!

Anwenderberichte unserer Kunden

Hier können Sie sich Beispiele ansehen, wie einige der weltweit führenden Automobilhersteller, Zulieferer und OEMs die modellbasierte Entwicklung zu ihrem Vorteil nutzen.

Kontaktieren Sie uns

Dieses Bild zeigt Elena Bley.
Elena Bley
Senior Manager Marketing & Webinars
Bitte rechnen Sie 9 plus 1.

* Pflichtfeld

Bitte addieren Sie 4 und 8.