Polyspace Server for Ada ist eine fundierte statische Analyse-Engine, die die Abwesenheit von Überlauf, Division durch Null, Zugriffen außerhalb von Array-Grenzwerten und bestimmten anderen Laufzeitfehlern in Ada83- und Ada95-Code nachweist. Die Engine analysiert alle potenziellen Steuer- und Datenflüsse zwischen Prozeduren, darunter Multithreading-Code, um für alle Vorgänge festzustellen, ob sie immer sicher, immer fehlerhaft, unerreichbar oder mit Schwachstellen behaftet sind. Polyspace Server for Ada identifiziert Codesegmente, die keine Laufzeitfehler haben, nachweislich fehlschlagen werden, unerreichbar oder unbewiesen sind.
Polyspace Server for Ada kann auf einem Computer der Serverklasse ausgeführt sowie mithilfe von Tools wie Jenkins® in Build- und kontinuierliche Integrationssysteme zur automatischen Verifizierung integriert werden. Die Analyseergebnisse lassen sich mithilfe des Polyspace Client for Ada überprüfen oder zur Vorsortierung und Behebung in Polyspace Access veröffentlichen.
Nachweis der Abwesenheit kritischer Laufzeitfehler
Überprüfen Sie alle Ada83- oder Ada95-Codevorgänge ausführlich auf Laufzeitkorrektheit. Ermitteln Sie Anweisungen, bei denen es unabhängig von den Laufzeitbedingungen niemals zu einem Laufzeitfehler kommt. Analysieren Sie Laufzeitschwachstellen mit der Unterstützung von Event-Traces, Variablenwertebereichen und Aufrufbäumen, die mit den Ergebnissen zusammen hängen. Polyspace Server for Ada verwendet formale Methoden, um Fehler zu finden, die anderen Testmethoden entgehen. Analysieren Sie alle Codepfade hinsichtlich aller potenziellen Eingaben, ohne Code ausführen zu müssen.
Automatisieren und in DevOps integrieren
Unterstützt moderne Softwareentwicklungsmethoden durch die Analyse von integriertem, bereits in DevOps-Workflows und -Tools vorhandenem Code. Polyspace Server for Ada funktioniert mit gängigen Tools zur kontinuierlichen Integration wie Jenkins und Bamboo®.
Verbesserung des Softwareentwurfs und Codeverständnisses
Untersuchen Sie den Steuer- und Datenfluss durch die Software und zeigen Sie Wertebereichsinformationen zu Variablen und Operatoren an.
Leistungsbezogene Optimierung von Software
Entfernen Sie defensiven Code durch Ermittlung von sicheren Operationen wie Division durch Null. Finden und entfernen Sie Codezweige, die von keinem Ausführungspfad erreichbar sind, sowie Fehler in der Logik und der Programmstruktur, um Speicherplatz zu sparen.
Analyse der Verwendung globaler Variablen
Beschleunigen Sie das Debugging von Lese-/Schreibvorgängen mit globalen Variablen, einschließlich solchen, die von mehreren Tasks oder Threads genutzt werden. Vollziehen Sie mit dem Graphen zum zeitgleichen Zugriff den Steuer- und Datenfluss zu einem Data Race nach. Identifizieren Sie ungenutzte globale Variablen, um so den Code zu optimieren.
Statische Anwendungssicherheitstests
Weisen Sie nach, dass die Anwendung keine kritischen Sicherheitsschwachstellen aufweist, indem Sie potenziell schwachstellenbehaftete Ada-Anweisungen umfassend auf Faktoren wie Speicherzugriff, Pufferüberlauf oder numerischen Überlauf testen. Unterstützung von 20 CWE-Schwachstellenregeln. Nutzen Sie die von Polyspace Server for Ada gelieferten Ergebnisse, um Fuzzing-Tests zu ergänzen oder zu ersetzen und sich stattdessen auf schwachstellenbehaftete Vorgänge zu konzentrieren.
Verbesserung und Ergänzung von Robustheits- und Funktionalitätstests
Verwenden Sie Polyspace Server for Ada, um Robustheitstests durch Konzentration der Tests auf als unsicher bewiesene Anweisungen wie Division durch Null oder Überläufe zu verbessern. Nutzen Sie die Ergebnisse des Polyspace Server for Ada zur Erstellung und Pflege von Rand- und Partitionstests, indem Sie die Steuer- und Datenflussanalyse sowie berechnete Wertebereiche von Funktionsparametern und globalen Variablen einsetzen.
Verwaltung statischer Analyseprojekte und Überwachung der Projektqualität
Organisieren Sie Ihre statischen Ada-Codeanalyseprojekte, um Entwicklungsteams und Workflows mit PolySpace Access zu unterstützen. Nutzen Sie die Informationen auf den Dashboards zur Überwachung der Softwarequalität, des Projektstatus, der Fehlerzahl und der Codemetriken.
Produktressourcen:
Polyspace-Produktfamilie
Polyspace-Produkte machen kritischen Code sicher und geschützt, indem die Softwarequalität während des gesamten Entwicklungslebenszyklus getestet und überwacht wird.
Polyspace Access
Erkennen Sie Codierfehler, überprüfen Sie die Ergebnisse statischer Analysen und überwachen Sie Softwarequalitätsmetriken.
Polyspace Copilot
Ein für Polyspace optimierter KI-Assistent.
Polyspace Test
Entwicklung, Verwaltung und Durchführung von Tests für C und C++ Code in Embedded Systems.
Polyspace as You Code
Erkennen Sie Software-Schwachstellen und Verstöße gegen Codierungsstandards über Ihre IDE.
Polyspace Test Server
Führen Sie Tests und Analysen der strukturellen Abdeckung von C/C++ Code auf Automatisierungsservern aus.
Polyspace Code Prover Server
Verifizieren Sie laufend und umfassend kritische Anweisungen in C und C++ Code in CI-Pipelines.
Polyspace Bug Finder
Überprüfen Sie Programmierregeln, Sicherheitsstandards und Codemetriken und finden Sie Bugs.
Polyspace Client for Ada
Erstellen Sie mithilfe formaler Methoden umfassende Verifikationen für Ada-Anweisungseinheiten.
Polyspace Bug Finder Server
Ermitteln Sie Softwarefehler und setzen Sie Programmierregeln in Ihren CI-Pipelines durch.
Polyspace Server for Ada
Erstellen Sie laufende und umfassende Verifikationen für kritische Ada-Codeanweisungen in CI-Pipelines.
Polyspace Code Prover
Erstellen Sie mithilfe formaler Methoden umfassende Verifikationen für besonders kritische C und C++ Anweisungen.
Polyspace Server for Ada – Häufig gestellte Fragen
Polyspace Server for Ada ist eine auf Servern laufende Engine für statische Analysen, die im Rahmen von CI-Workflows das Fehlen kritischer Laufzeitfehler nachweist und Architekturansichten wie Aufrufgraphen und die Nutzung globaler Daten im Ada83- und Ada95‑Code bereitstellt.
Es verwendet eine auf formalen Methoden basierende statische Analyse, um alle Ausführungspfade und Eingaben im Ada83- und Ada95‑Code zu untersuchen, ohne diesen auszuführen.
Es trägt zur Verbesserung der Softwaresicherheit bei, indem es das Fehlen kritischer Schwachstellen wie Pufferüberläufe, ungültige Speicherzugriffe und numerische Überläufe über alle Ausführungspfade und Eingaben hinweg nachweist, ohne den Code auszuführen.
Polyspace Client for Ada wird interaktiv über eine Desktop‑Oberfläche verwendet und ist auf die Analyse einzelner Dateien beschränkt, während Polyspace Server for Ada für automatisierte Integrationsanalysen in CI-Workflows optimiert ist.
Ja, es lässt sich in Continuous‑Integration‑Pipelines integrieren, um automatisierte statische Analysen in DevOps‑Workflows zu unterstützen.
Polyspace Server for Ada kann auf lokalen oder Cloud‑Automatisierungsservern betrieben werden, einschließlich containerisierter Bereitstellungen.
Polyspace Server for Ada veröffentlicht Analyseergebnisse an Polyspace Access für die teambasierte Überprüfung und Triage.