Hauptinhalt

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Polyspace-Produkte und Softwareentwicklungs-Workflows

Die Produkte der Polyspace®-Gruppe bieten eine einheitliche Lösung für die Verwaltung, Messung und Überwachung der C/C++ Codequalität während des gesamten Software-Entwicklungszyklus.

Die Produkte für die statische Analyse, Polyspace Bug Finder™ und Polyspace Code Prover™, überprüfen C/C++ Code auf Laufzeitfehler, Verstöße gegen Codierungsstandards, Sicherheitslücken und andere Probleme:

  • Polyspace Code Prover kann alle möglichen Ausführungspfade eines Programms abdecken und den Datenfluss entlang dieser Pfade nach bestimmten mathematischen Regeln verfolgen. Die umfassende Kontrolle und Datenflussanalyse kann dynamische Tests ergänzen und potenzielle Laufzeitfehler aufdecken, die bei regulären Robustheitstests möglicherweise nicht gefunden würden.

  • Polyspace Bug Finder kann ein Programm auf offensichtliche Fehler, Sicherheitslücken, Verstöße gegen Codierungsstandards und andere Probleme überprüfen, die möglicherweise zu Laufzeitfehlern oder unerwarteten Ergebnissen führen.

Das Produkt für dynamische Tests, Polyspace Test™, bietet Tools für die Entwicklung, Verwaltung und Ausführung von Unit- und Integrationstests für C- und C++ Code in eingebetteten Systemen. Mithilfe von Polyspace Test können Sie Tests mithilfe einer C/C++ xUnit-basierten API oder in einer grafischen Benutzeroberfläche erstellen, die Tests auf Host-Computern oder eingebetteten Zielen ausführen, die Testausführung automatisieren und Tests zur Rückverfolgbarkeit mit Anforderungen verknüpfen. Sie können die Vollständigkeit Ihrer Tests auch durch die Berechnung von Codeabdeckungsmetriken überprüfen und automatisch Tests generieren, um die manuelle Testerstellung zu ergänzen.

Verwendung von Polyspace-Produkten in der Software-Entwicklung

Die Polyspace-Produktreihe unterstützt alle Phasen der Software-Entwicklung:

  • Vor Übermittlung des Codes:

    Entwickler können Polyspace für Desktop oder IDE-orientierte Produkte ausführen, um ihren Code während der Entwicklung oder unmittelbar vor der Übermittlung zu überprüfen und so vordefinierte Qualitätsziele zu erreichen.

    Die Produkte können in IDEs wie Visual Studio Code, Visual Studio® oder Eclipse™ integriert oder während der Kompilierung mit Skripten ausgeführt werden. Die Analyseergebnisse können in den IDEs oder in der grafischen Benutzeroberfläche der Desktop-Produkte überprüft werden.

    Polyspace bietet die folgenden Produkte für den Desktop-Einsatz. Diese Produkte sind für die Ausführung in vollständigen Projekten oder kleineren Codemodulen (bis zu einer einzelnen Quelldatei) vorgesehen.

    • Polyspace Bug Finder zur Überprüfung des Code auf semantische Fehler, die ein Compiler nicht erkennen kann (z. B. die Verwendung von = anstelle von ==), Nebenläufigkeitsprobleme, Sicherheitslücken und andere Fehler im C und C++ Quellcode.

    • Polyspace Code Prover zur Durchführung einer wesentlich gründlicheren Überprüfung und zur Sicherstellung des Nichtvorhandenseins von Überläufen, Divisionen durch null, Array-Zugriffen außerhalb des Bereichs und anderer Laufzeitfehler im C und C++ Quellcode.

    • Polyspace Test zum Erstellen und Ausführen von C/C++ Tests auf Ihrem Host-Computer oder einem eingebetteten Zielsystem.

  • Nach Übermittlung des Codes:

    Die Polyspace-Serverprodukte können automatisch auf neu festgeschriebenem Code als Build-Schritt in einem kontinuierlichen Integrationsprozess ausgeführt werden (mithilfe von Tools wie Jenkins®). Die Analyse wird auf einem Server ausgeführt und die Ergebnisse werden zur gemeinsamen Überprüfung in eine Webschnittstelle hochgeladen.

    Polyspace bietet die folgenden Produkte für den Einsatz auf Servern:

    • Polyspace Bug Finder Server™ zur automatischen Ausführung des Bug Finder auf einem Server und zum Hochladen der Ergebnisse zur Überprüfung an eine Webschnittstelle, und Polyspace Access™ zur Überprüfung der hochgeladenen Ergebnisse.

    • Polyspace Code Prover Server zur automatischen Ausführung des Code Prover auf einem Server und zum Hochladen der Ergebnisse zur Überprüfung an eine Webschnittstelle, und Polyspace Access zur Überprüfung der hochgeladenen Ergebnisse.

    • Polyspace Test zur automatischen Ausführung von Tests auf einem Server und zum Hochladen der Ergebnisse zur Überprüfung an eine Webschnittstelle, und Polyspace Access zur Überprüfung der hochgeladenen Testergebnisse.

In der Regel werden die Serverprodukte auf einigen wenigen Build-Servern ausgeführt und überprüfen übermittelten Code im Rahmen der Softwareerstellung und -prüfung. Alle Prüfende (Entwickler, Qualitätssicherungsingenieur oder Entwicklungsleiter) verfügen über eine Polyspace Access-Lizenz zur Überprüfung der hochgeladenen Analyseergebnisse.

Wenn Entwickler Zugriff auf Polyspace Access für die Überprüfung der Ergebnisse nach der Übermittlung im Web haben, können sie außerdem Polyspace as You Code in ihren IDEs für die Analyse vor der Übermittlung installieren. Bei der Installation als IDE-Erweiterung führt Polyspace as You Code eine dateibezogene Analyse ähnlich wie Bug Finder durch und liefert Entwicklern während des Codierens nahezu sofortiges Feedback.

Dieses Diagramm veranschaulicht eine mögliche Bereitstellung von Polyspace-Produkten:

A flow diagram of a typical software development workflow. Polyspace products can be used both prior to submission and after submission.

Wenn Sie sowohl Desktop- als auch Serverprodukte verwenden, kann Ihr Workflow vor der Übermittlung reibungslos in den Workflow nach der Übermittlung übergehen.

Koordinierung der Verwendung von Polyspace vor und nach der Übermittlung

Wenn Sie mehrere Polyspace-Produkte in separaten Phasen Ihres Software-Entwicklungs-Workflows einsetzen, können die späteren Ausführungen von den früheren profitieren und umgekehrt. Insbesondere:

  • Entwickler, die Polyspace as You Code in ihren IDEs verwenden, können Fehler und Verstöße gegen Codierungsstandards, die in einer einzigen Datei gefunden und behoben werden, problemlos beheben. Eine spätere Polyspace Bug Finder Server-Analyse nach der Codeübermittlung zeigt diese Probleme nicht mehr auf.

  • Die Ergebnisse einer Polyspace Bug Finder Server-Analyse können als Ausgangsbasis für Polyspace as You Code-Durchläufe dienen. Entwickler, die das neueste Polyspace Bug Finder Server-Ergebnis als Grundlage für ihre IDE-Ausführungen verwenden, können sich ausschließlich auf Probleme konzentrieren, die sich aus ihren Codeänderungen ergeben.

Polyspace-Produkte für Ada-Code

Polyspace bietet die folgenden Produkte zur Verifizierung von Ada-Code:

  • Polyspace Client™ for Ada zur Überprüfung von Ada-Code auf einem Desktop auf Laufzeitfehler.

  • Polyspace Server for Ada zur Überprüfung von Ada-Code auf einem Server auf Laufzeitfehler.

Sie können entweder das Desktop-Produkt verwenden, um die Analyse auf Ihrem Desktop auszuführen, oder eine Kombination aus Desktop- und Serverprodukten, um die Analyse auf einem Server auszuführen. Die Analyseergebnisse werden zur Überprüfung auf Ihren Desktop heruntergeladen.

Wenn Sie über eine Polyspace Code Prover Access-Lizenz verfügen und die Webschnittstelle von Polyspace Code Prover Access eingerichtet haben, können Sie jedes einzelne Ada-Ergebnis aus den Ada-Desktop-Produkten zur gemeinsamen Überprüfung in die Webschnittstelle hochladen.

Siehe auch https://www.mathworks.com/products/polyspace-ada.html.

Siehe auch

Themen