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 Code Prover Server
Nachweis der Abwesenheit von Laufzeitfehlern in Software.
Polyspace Bug Finder
Identifizieren Sie Softwarefehler mittels statischer Analyse.
Polyspace Test
Entwicklung, Verwaltung und Durchführung von Tests für C und C++ Code in Embedded Systems.
Polyspace Bug Finder Server
Erkennung von Softwarefehlern mithilfe statischer Analysen auf Servercomputern.
Polyspace Client for Ada
Nachweis der Abwesenheit von Laufzeitfehlern im Quellcode.
Polyspace Code Prover
Nachweis der Abwesenheit von Laufzeitfehlern in Software.
Polyspace Server for Ada
Code auf Computer-Clustern verifizieren und Metriken veröffentlichen.