Polyspace Server for Ada est un moteur d’analyse statique exhaustive qui prouve l’absence d’erreurs d'overflow, de division par zéro, de dépassement de tableaux et certaines autres erreurs run-time dans du code Ada83 et Ada95. Il réalise une analyse interprocédurale de tous les flux de contrôle et de données possibles, y compris du code multithreadé, pour identifier chaque opération comme étant toujours sûre, toujours erronée, inaccessible ou vulnérable. Polyspace Server for Ada identifie les segments de code qui sont exempts d’erreurs run-time, avérés défaillants, inaccessibles ou non prouvés.
Vous pouvez exécuter Polyspace Server for Ada sur une machine de type serveur et l’intégrer à des systèmes de compilation et d’intégration continue pour la vérification automatisée avec des outils tels que Jenkins®. Les résultats d’analyse peuvent être revues dans Polyspace Client for Ada ou publiés sur Polyspace Access, où les erreurs peuvent être triées et résolues.
Prouver l’absence d’erreurs run-time critiques
Vérifiez exhaustivement que chaque opération run-time du code Ada83 ou Ada95 est correcte. Identifiez les instructions qui ne généreront jamais d’erreur run-time, quelles que soient les conditions du run-time. Analysez les vulnérabilités run-time identifiées avec le support du suivi des événements, des plages de valeur de variable et des arbres d’appels. Polyspace Server for Ada utilise des méthodes formelles pour détecter des erreurs qui échappent aux autres types de test. Analysez tous les chemins du code avec toutes les entrées possibles sans exécuter le code.
Automatiser et intégrer dans la DevOps
Polyspace Server for Ada supporte les pratiques modernes de développement logiciel en analysant le code intégré dans le cadre des workflows et outils DevOps existants. Il fonctionne également avec les outils d’intégration continue les plus courants, tels que Jenkins et Bamboo®.
Améliorer le design du logiciel et la compréhension du code
Examinez les flux de contrôle et de données du logiciel, et consultez les informations sur les plages associées aux variables et aux opérateurs.
Optimiser le logiciel pour de meilleures performances
Supprimez le code défensif en identifiant les opérations sûres et sécurisées, comme la division par zéro. Détectez les branches de code qui ne sont accessibles par aucun chemin d'exécution ainsi que les erreurs de logique et de structure du programme, pour les supprimer et ainsi réduire l'empreinte mémoire.
Analyser l'utilisation des variables globales
Réduisez le temps consacré au débuggage des opérations de lecture/écriture sur des variables globales, notamment les variables communes à plusieurs tâches ou threads. Identifiez le flux de contrôle et de données menant à une situation d'accès concurrent aux données avec le graphique des accès concurrents. Identifiez les variables globales inutilisées pour optimiser le code.
Test statique de sécurité des applications
Prouvez que l’application est exempte de vulnérabilités critiques de sécurité en testant exhaustivement les instructions ADA potentiellement vulnérables telles que les accès mémoire, les dépassements de mémoire tampon ou les dépassements numériques. 20 règles de vulnérabilité CWE sont supportées. Exploitez les résultats générés par Polyspace Server for Ada pour compléter ou remplacer le fuzzing et vous concentrer sur les opérations sources de vulnérabilités.
Améliorer et compléter les tests de robustesse et les tests fonctionnels
Utilisez Polyspace Client for Ada pour améliorer les tests de robustesse en vous concentrant sur les instructions dangereuses telles que la division par zéro ou les overflows. Exploitez les résultats de Polyspace Server for Ada pour créer et gérer les tests de limites et de partition, tout en tirant parti des analyses des flux de contrôle et de données, ainsi que des plages calculées pour les paramètres des fonctions et les variables globales.
Gérer des projets d'analyse statique et contrôler leur qualité
Organisez vos projets d'analyse statique de code Ada pour aider vos équipes de développement et simplifier les workflows avec Polyspace Access. Utilisez les informations affichées sur les tableaux de bord pour surveiller la qualité logicielle, l'état des projets, le nombre de défauts détectés et les métriques de code.
Ressources liées au produit :
Famille de produits Polyspace
Les produits Polyspace sécurisent les codes critiques en testant et en contrôlant la qualité du software tout au long du cycle de développement.
Polyspace Access
Identifier les défauts de codage, revoir les résultats de l'analyse statique et contrôler les métriques de qualité logicielle.
Polyspace Copilot
Assistant IA optimisé pour Polyspace.
Polyspace Test
Développer, gérer et exécuter des tests sur le code C et C++ de vos systèmes embarqués.
Polyspace as You Code
Identifiez les violations des normes de codage et les vulnérabilités logicielles dans votre IDE.
Polyspace Test Server
Exécutez des tests et analysez la couverture structurelle du code C/C++ sur les serveurs d'automatisation.
Polyspace Code Prover Server
Vérifiez de manière continue et exhaustive les instructions de code C et C++ critiques dans les pipelines CI.
Polyspace Bug Finder
Vérifiez les règles de codage, les normes de sécurité et les métriques du code, et trouvez les bugs.
Polyspace Client for Ada
Vérifiez de manière exhaustive les unités critiques des instructions Ada à l'aide de méthodes formelles.
Polyspace Bug Finder Server
Identifiez les défauts software et appliquez les règles de codage dans vos pipelines CI.
Polyspace Server for Ada
Vérifiez de manière continue et exhaustive les instructions de code Ada critiques dans les pipelines CI.
Polyspace Code Prover
Vérifiez de manière exhaustive les instructions C et C++ les plus critiques à l'aide de méthodes formelles.
FAQ sur Polyspace Server for Ada
Polyspace Server for Ada est un moteur d'analyse statique qui s'exécute sur des systèmes serveurs pour prouver l'absence d'erreurs d'exécution critiques et fournir des vues architecturales, telles que les graphes d'appels et l'utilisation des données globales, dans du code Ada83 et Ada95, dans le cadre de workflows d'intégration continue.
Il utilise une analyse statique basée sur des méthodes formelles pour explorer tous les chemins d'exécution et toutes les entrées dans du code Ada83 et Ada95, sans l'exécuter.
Il aide à améliorer la sécurité du logiciel en prouvant l'absence de vulnérabilités critiques telles que les dépassements de tampon, les accès mémoire invalides et les dépassements de capacité numériques, sur l'ensemble des chemins d'exécution et des entrées, sans exécuter le code.
Polyspace Client for Ada s'utilise de façon interactive via une interface utilisateur de bureau et est limité à l'analyse d'un seul fichier, tandis que Polyspace Server for Ada est optimisé pour l'analyse automatisée dans des workflows d'intégration continue (CI).
Oui. Il s'intègre aux pipelines d'intégration continue pour prendre en charge l'analyse statique automatisée dans les workflows DevOps.
Polyspace Server for Ada peut s'exécuter sur des serveurs d'automatisation sur site ou dans le cloud, y compris dans des déploiements conteneurisés.
Polyspace Server for Ada publie les résultats d'analyse sur Polyspace Access pour la revue et le triage des résultats en équipe.