QA-MISRA New

Das Tool für alle Standards

QA-MISRA New

Das Tool für alle Standards

Automatisierte Einhaltung von Programmierstandards

Alle C/C++ Standards in einem Tool

Mit QA-MISRA erwarten Sie keine versteckten Kosten, z. B. für Sprachvarianten, Zusatzmodule zur Konformität o. Ä. Sie brauchen nur diese eine Lösung um Ihren C/C++-Source Code automatisch auf die Einhaltung aller gängigen internationalen Sicherheitsstandards zu prüfen.

Mit QA-MISRA automatisierte Einhaltung von:

MISRA C

2012 (incl. Amendments 1,2 &3) und 2023 – Programmierrichtlinien für C

AUTOSAR C++14

C++ für Adaptive Autosar

JSF AV C++

C++-Programmierstandard für JSFF-35 Flugzeug-Programm

CWE 4.7

Common Weakness Enumeration für C/C++

MISRA C++

2008 und 2023 – Programmierrichtlinien für C++

HIS Metriken

Hersteller Initiative Software

CERT C/C++

2016 – C/C++ Security Programmierrichtlinien für C/C++

ISO TS 17961

2013 – Security Programmierrichtlinien für C

Compliance Matrices

Die folgenden Dokumente liefern vollständige ‚Compliance Matrices‘ aller Programmierstandards und klassifizieren den Unterstützungsgrad durch QA-MISRA für jede einzelne Regel:

Warum Programmierstandards?

  • Reduzieren Sie die Kosten für die Einhaltung von Programmierstandards
    Alle sicherheitskritischen Standards empfehlen oder schreiben den Einsatz statischer Analysewerkzeuge vor, um die Einhaltung bewährter Verfahren für eine sichere Programmierung zu gewährleisten. Internationale Programmierstandards für die funktionale Sicherheit wie MISRA und AUTOSAR, sowie Security Standards wie CERT und CWE, gehören heute zu den de-facto Standards. QA-MISRA automatisiert die statische Analyse von C/C++-Code, die auf die Einhaltung all dieser Programmierstandards ausgerichtet ist – und das in nur einem einzigen Werkzeug! Die Zertifizierung von statischen Analysewerkzeugen kann eine große Kostenbelastung für die Standardeinhaltung darstellen. QA-MISRA wurde vom SGS-TÜV SAAR geprüft und zertifiziert. Das kostenfreie QA-MISRA Zertifizierungs-Kit hilft Ihnen, Ihre Software einfacher zu zertifizieren. Ein ‚Qualification Support Kit‘ ist ebenfalls verfügbar.
  • Softwarefehler frühzeitig erkennen
    Je früher Softwarefehler im Entwicklungsprozess erkannt und eliminiert werden, desto kostengünstiger ist es für Sie; und am günstigsten ist es, wenn Fehler gar nicht erst entstehen. 900 potenzielle Source Code Probleme erkennt QA-MISRA bereits heute. Die statische Analyse mit QA-MISRA findet gefährliche Strukturen und zeigt frühzeitig Probleme bei Sicherheit, Wartbarkeit und Portabilität. Hier senken Sie zukünftige Kosten. Auch ISO-standardkonforme Software kann sich anders verhalten als erwartet. Denn nicht alles, was später Probleme bereiten kann, ist in ISO-Standards auch als inkorrekt klassifiziert. Die statische Analyse mit QA-MISRA zeigt auch Probleme, die oft und leicht von Entwicklern und Compilern übersehen werden. Die frühzeitige Sicherstellung, dass ihr Code den sicherheitskritischen Standards wie MISRA und AUTOSAR, oder den Security Standards wie CERT und CWE entspricht, bietet Entwicklern eine vollautomatische Prüfung. So sparen Entwickler wertvolle Zeit beim Suchen von Problemen, die keine technischen Fehler im eigentlichen Sinne sind.
  • Verringern Sie das Risiko von Softwarefehlern
    Produktrückrufe, die Gefährdung des Markenimages und des Firmenimages können die Entwicklungskosten einer jeden Anwendung bei weitem übersteigen. Die statische Analyse zur Einhaltung von Programmierstandards – schon bei der Erstellung des Source-Codes – ist die erste Stufe der Softwareüberprüfung, um das Risiko von Fehlern zu verringern. Durch die Verlagerung des Aufwandes für die Verifikation in die früheste Phase des Softwareentwicklungszyklus können Projektlaufzeiten leichter eingehalten werden. Und nicht nur das! Es verringert auch das Risiko von Verzögerungen in der späteren Phase bei der Test- und Systemanalyse, da konforme Komponenten leichter und vorhersehbarer zu integrieren sind. Rechtsstreitigkeiten zur Produkthaftung stellen heute ein zunehmendes Risiko dar. Unternehmen, die sich nicht an die bewährten Praktiken der Branche halten, wie z. B. die Einhaltung von Programmierstandards, können sich bei der Verteidigung nicht auf den „Stand der Technik“ berufen.
  • Schneller am Markt
    Branchenführer haben erkannt, dass ihre Produkte schneller marktreif sein müssen, ohne die Qualität zu gefährden. QA-MISRA unterstützt dabei mit zwei entscheidenden Faktoren:
  • Die statische Analyse muss nicht aufgeschoben werden bis ein komplettes System verfügbar ist, dadurch sind standardkonforme Komponenten einfacher zu testen.
  • Automatisierte Code-Reviews zur Einhaltung von Programmierstandards helfen Entwicklern, Code mit geringeren Fehlerquoten zu produzieren.
  • Schnelle statische Source Code Analyse
    Selbst umfangreiche Softwarepakete analysiert QA-MISRA sehr schnell und detailliert, unabhängig von der Codebasis. Auf Grund der Ausrichtung auf die Einhaltung der Programmierrichtlinien kann QA-MISRA, bereits während der Codegenerierung, von individuellen Komponenten bis hin zu kompletten Systemen angewendet werden. Diese Analysegeschwindigkeit ist besonders wertvoll für Teams, die automatisierte CI/CD-Pipelines einsetzen, um die Compliance-Qualität bei jedem Check-in zu prüfen.
  • Keine ‚false-positives‘ & ‚false-negatives‘
    QA-MISRA erzeugt keine ‚false-positive‘ und keine ‚false-negative‘ Ergebnisse bei syntaktischen Programmierregeln. In Verbindung mit dem ‚Sound Static Analyzer‘ ASTRÉE, werden ebenfalls keine ‚false-negative‘ und nur sehr wenige ‚false-positive‘ Ergebnisse bei semantischen Regeln erzeugt. Keine ‚false-negative‘ Ergebnisse bedeuten mehr Sicherheit, dass die Analyse keine Probleme übersehen hat. Weniger ‚false-positive‘ Ergebnisse bedeuten weniger Aufwand für die Bewertung und das Verwerfen einer falsch gemeldeten Regelverletzung (Alarm).

Welche Regeln zu konfigurieren?

Konfigurierbare Regelsätze
Eine Drill-down-Auswahl und flexible Kombinationen von verschiedenen Standards zu individuellen Regelsätzen ermöglicht die Prüfung jedes Projektes (z. B. Projekte mit C & C++ Code und/oder mit automatisch generiertem und manuell geschriebenem Code) in einem Analyselauf. Diese Regelsätze können ausgewählt und in Konfigurations-Dateien für die Batch-Ausführung auf der Befehlszeile gespeichert werden. Alle Alarmmeldungen und Regelsätze können ausgewählt, interaktiv gefiltert und in der grafischen Benutzeroberfläche (GUI) untersucht werden.

Detaillierte Offline-Berichte
QA-MISRA generiert konfigurierbare Berichte in mehreren offenen Standardformaten für Offline-Compliance-Berichte. Dazu gehören alle Alarmmeldungen auf Quelldateiebene, die in weiteren automatisierten Prozessen verwendet oder automatisch an Offline-Benutzer verteilt werden können.

Wie Sie Programmierstandards einhalten

Kontextbezogene Regelerläuterungen helfen Entwicklern beim Verstehen und Lernen
Für jede erkannte Regelverletzung gibt QA-MISRA detaillierte Alarmerklärungen, um den Aufwand für das Verständnis der Grundursache zu verringern. Alle Alarmmeldungen beziehen sich entweder auf die ursprüngliche Quelldatei (Source-Phase-Checks) oder auf ein einzelnes Vorkommen in der Quelle – auch wenn der ursprüngliche Code in mehreren vorverarbeiteten Dateien enthalten ist (Parsing- and Analysis-Phase-Checks) – so wird die tatsächliche Ursache identifiziert.