FAQ

Continuous Integration / Continuous Delivery (CI/CD) bietet Teams, die MATLAB und Simulink verwenden, eine zuverlässige, reproduzierbare und überprüfbare Möglichkeit, Build-, Test- und Verifikations-Workflows zu automatisieren.

So fügen sich MATLAB und Simulink in CI/CD-Workflows ein

CI hilft Teams, Probleme früher zu erkennen, indem bei jeder Änderung Modellprüfungen, Simulationen, Testreihen (einschließlich MATLAB Test und Simulink Test) sowie die Codegenerierung ausgeführt werden. Dies verringert unerwünschte Überraschungen bei der Integration und schafft einen einheitlichen und wiederholbaren Entwicklungsprozess mit Testergebnissen, Abdeckungsdaten sowie Analyseergebnissen, die zuverlässige Releases ermöglichen.

Ja. Workflows mit Model-Based Design lassen sich direkt auf die Standardphasen von CI/CD abbilden, da Simulationen, Tests (einschließlich SIL und PIL), Überprüfungen und Codegenerierung alle programmgesteuert ausgeführt und wie andere Pipeline-Schritte koordiniert werden können.

Ja. MATLAB und Simulink laufen auf allen CI/CD-Plattformen, darunter Azure DevOps, GitHub Actions, GitLab CI/CD, Jenkins und weiteren. Wir bieten Plug-ins für die meisten großen CI/CD-Plattformen an, damit Sie sofort loslegen können.


Erste Schritte mit CI/CD

Zur Verwendung von MATLAB und Simulink in CI/CD benötigen Sie:

  • ein Versionskontrollsystem
  • ein CI/CD-System
  • ein MATLAB Container-Image (oder eine virtuelle Maschine)
  • eine MATLAB-Lizenz
  • eine Pipeline-Konfiguration

Weitere Informationen finden Sie in unserem Leitfaden zur DevOps-Integration.

Container tragen dazu bei, die Laufzeitumgebung zu standardisieren, Abweichungen zwischen Agents zu reduzieren und die Reproduzierbarkeit zu verbessern, indem Jobs anhand derselben Image-Definition gestartet werden. Verwenden Sie unsere MATLAB-Dockerfile-Referenzarchitektur, um einen Container mit MATLAB und Simulink für Ihr CI/CD-System zu erstellen. Auf einigen CI-Plattformen können Sie virtuelle Maschinen oder persistente Runner als Alternativen zu Containern einsetzen, insbesondere in Nicht-Linux-Umgebungen. Container sind jedoch häufig eine effiziente und effektive Wahl für CI/CD.

Eine typische Pipeline durchläuft die bekannten Phasen Pull, Build, Test, Analyse und Veröffentlichung. Übliche Workflows umfassen Model-Advisor-Prüfungen, simulationsbasierte Tests (einschließlich SIL/PIL, sofern anwendbar), Codegenerierung, statische Analyse und die Erfassung der Abdeckung, wobei jede Phase Artefakte erzeugt, die das CI-System sammelt und anzeigt.

Wir stellen Ihnen mehrere Beispielkonfigurationen für Pipelines zur Verfügung, um Ihnen den Einstieg zu erleichtern:

MATLAB und Simulink sind grundsätzlich erforderlich.

Welche zusätzlichen Produkte Sie benötigen, hängt davon ab, was Sie in der Pipeline automatisieren möchten, also beispielsweise:

Teams, die die Einführung beschleunigen und CI/CD-Pipelines erstellen möchten, können zudem das CI/CD Automation for Simulink Check Support Package verwenden.

Beginnen Sie mit den Aufgaben, die Sie bereits ausführen, wie beispielsweise Modellprüfungen, Simulationen, Tests oder Builds, und machen Sie diese Schritte mithilfe von Skripten wiederholbar. Sobald der Workflow lokal stabil läuft, konfigurieren Sie Ihr CI-System so, dass es dieselben Befehle automatisch ausführt. Anschließend erweitern Sie den Umfang im Laufe der Zeit.

Nein. Die interaktive Entwicklung findet weiterhin in den Desktop-Tools statt. CI ändert, wie Build-, Test- und Verifikationsschritte gebündelt werden, sodass sie nicht-interaktiv und einheitlich über verschiedene Umgebungen hinweg ausgeführt werden können.


Lizenzierung von MATLAB und Simulink in CI/CD

Die beste Möglichkeit, MATLAB in Ihrem CI/CD-System zu lizenzieren, ist die Verwendung eines MATLAB Batch-Tokens. Hinweis: Für den Erhalt eines Batch-Tokens sind unter Umständen zusätzliche MATLAB-Lizenzen erforderlich.


Anpassen Ihrer Build-, Test- und Verifikations-Workflows

Praktisch alles, was sich in MATLAB und Simulink per Skript ausführen lässt, kann auch in CI laufen, darunter Simulationen, Testausführung, Codegenerierung und Rückverfolgbarkeitsberichte. Das MATLAB-Build-Tool und das CI/CD-Automation für Simulink Check Support Package helfen Ihnen dabei, anpassbare und skalierbare CI-Pipelines zu erstellen.

Ja. Viele Kunden automatisieren Codegenerierung und Verifikation in CI-Pipelines, um ihre fortgeschrittenen Arbeitsabläufe zu optimieren. Für den Einsatz von Codegenerierungsprodukten in CI benötigen Sie möglicherweise Client Access Licenses (CALs).


Unterstützung von Governance, Rückverfolgbarkeit und Überprüfung

Ja. CI automatisiert Verifikations-Workflows und erzeugt reproduzierbare Testergebnisse, Berichte, Abdeckungen und Analysebefunde. Diese Verfahren werden häufig in technischen Workflows eingesetzt, die rückverfolgbare und überprüfbare Verifikationsnachweise erfordern, einschließlich Arbeiten, die auf Normen wie DO-178C, IEC 61508 oder ISO 26262 ausgerichtet sind.

Überprüfungen wie der Model Advisor und die statische Analyse mit Polyspace werden als skriptgesteuerte CI-Schritte ausgeführt und veröffentlichen strukturierte Ergebnisse zur teamübergreifenden Prüfung.

CI bewahrt dauerhafte Aufzeichnungen aller Durchläufe auf, die Eingaben, Konfiguration und Verifikationsergebnisse umfassen, welche mit einer bestimmten Änderung verbunden sind.


Planung von Skalierung und Infrastruktur

Pipelines lassen sich skalieren, indem die Arbeit in unabhängige Phasen aufgeteilt und auf mehrere Runner verteilt wird. Dabei werden schnelle Prüfungen von langen Simulationen oder Builds getrennt, um vorhersehbare Zykluszeiten zu gewährleisten.

Ja. Vorbehaltlich der verfügbaren Rechen- und Lizenzressourcen können unabhängige Simulationen, Tests und Builds als separate CI-Jobs ausgeführt werden.


Häufige Fallstricke bei CI/CD

Hier sind einige häufige Ursachen dafür, dass CI-Pipelines ins Stocken geraten:

  • Workflows, Funktionen oder Benutzeroberflächen, die eine Benutzerinteraktion erfordern
  • Warten auf nicht verfügbare Hardware oder nicht verfügbaren Dateisystemzugriff
  • Pipelines, die die CI-Ressourcen überlasten

Bei vielen Teams bleiben Ergebnisse häufig im CI/CD-Protokoll stecken oder auf die generierten Artefakte kann nur innerhalb des CI/CD-System zugegriffen werden. Um Ihre Ergebnisse auch von außerhalb des CI/CD-Systems einsehen zu können, stellen Sie sicher, dass Ihre Pipeline die Ergebnisse veröffentlicht oder in ein Artefakt-Verwaltungssystem hochlädt.

Einige häufige Ursachen sind:

  • Verwendung des falschen Lizenztyps
  • Ungültige Lizenzkonfiguration
  • Ihr CI-System kann nicht auf Ihren Lizenzserver zugreifen

Viele dieser Probleme lassen sich mit einem MATLAB Batch-Token und unserer Anleitung zur Verwendung des Batch-Tokens vermeiden.


Wann Sie sich an MathWorks wenden sollten

Teams wenden sich in der Regel an uns, wenn sie:

  • simulationsintensive Workflows in CI/CD skalieren
  • Model-Based Design in bestehende DevOps-Pipelines integrieren
  • rückverfolgbare Verifikations-Workflows für regulierte Programme einrichten
  • von manuellen Tests auf automatisierte, wiederholbare Pipelines umsteigen
  • Modelle, Tests und generierten Code innerhalb einer einzigen Pipeline aufeinander abstimmen

Wenn diese Herausforderungen Ihrem aktuellen Arbeitsablauf entsprechen, kann ein gezieltes Gespräch dabei helfen, einen Ausgangspunkt zu finden und häufige Fallstricke bei der Einführung zu vermeiden.