Static Analysis

Statische Analyse mit

Static Analysis

Statische Analyse mit

Unübertroffen exakt: Source Code Analyse mit QA-MISRA

Softwarefehler, Fehler in der Nutzung der Sprache, Inkonsistenzen, Undefined und Unspecified Behavior, verletzte Coding Standards und Schwachstellen in der Sicherheit – das alles findet die statische Source Code Analyse und stellt sie übersichtlich dar.

Softwarefehler frühzeitig erkennen – Kosten senken

QA-MISRA findet Softwarefehler so früh wie möglich im Entwicklungsprozess. Wer Softwarefehler beheben kann, wenn sie entstehen, senkt seine Entwicklungskosten.

Mehr als 900 potenzielle Source Code Probleme erkennt QA-MISRA bereits heute. Die statische Analyse mit QA-MISRA findet gefährliche Strukturen und identifiziert Probleme mit Sicherheit, Wartbarkeit und Portabilität Ihrer Software.

Sicherer Code mit vorhersagbarem Verhalten

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. Deshalb zeigt die statische Analyse mit QA-MISRA auch Probleme, die oft und leicht von Entwicklern und Compilern übersehen werden. Die Prüfung geschieht vollautomatisch. So sparen Entwickler wertvolle Zeit mit Suchen von Problemen, die keine technischen Fehler im eigentlichen Sinne sind.

Überwachen Sie Ihre Codebasis – umfassende, konfigurierbare Berichte

Ein umfassendes Reporting hilft Ihnen, Probleme zu finden. Mehr noch: es zeigt Ihnen, wo Sie genauer hinschauen sollten. Und Sie sehen, in welchen Bereichen noch Programmierarbeit auf Sie wartet.

Compliance Report
Zeigt Ihnen die Bereiche, an denen noch gearbeitet werden muss, um ein höheres Compliance-Level zu erreichen.

Classification Report
Die von QA-MISRA erkannten Regelverstöße werden von den Usern klassifiziert und im Classification Report gelistet.

Metrics Report
Stellt die Metriken-Daten als Text, HTML und CSV Dateien zur Verfügung.

Constraint Violations

Falscher Gebrauch der Programmiersprache? QA-MISRA entdeckt eine Vielzahl an Fällen, in denen die Syntax zwar korrekt, der Code selbst aber semantisch falsch, unspezifiziert oder undefiniert ist. In einigen dieser Fälle würde der Compiler stoppen, weil sie bekannt sind. QA-MISRA erkennt aber auch eine Reihe von Fehlern, bei denen die Kompilierung nicht gestoppt werden würde.

Analysen über mehrere Module

QA-MISRA identifiziert nicht-regelkonformes Verhalten, welches ein Linker nicht auflösen kann. Erkannt werden Rekursionen sowie widersprüchliche Deklarationen und Definitionen von externen Objekten und Funktionen im gesamten Projekt.

Garantierte Portabilität – Konsistenz über alle Plattformen

Code konsistent halten – und zwar über Compiler und Plattformen hinweg. Das schafft QA-MISRA. QA-MISRA erkennt ISO-Limitierungen, Spracherweiterungen und Verhalten, das durch die Implementierung definiert ist.

Konversionen

QA-MISRA ermittelt implizite Konversionen zwischen Dateitypen, sei es bei der Verknüpfung, dem Vergleich, der Integral Promotion, der Default Argument Promotion oder bei Function Returns.

Redundanzen

QA-MISRA spürt nicht genutzte Variablen, Funktionen und Parameter auf, genauso wie Bedingungen, bei denen das Ergebnis unveränderlich (immer wahr oder immer falsch) ist.

Statements and Operationen

QA-MISRA ermittelt verdächtige Vergleichs-Operationen einschließlich der Verwendung von nicht korrekten Typen. Und das Programm findet Konstruktionen, die zwar erlaubt, aber wahrscheinlich irreführend oder schwer zu verstehen und warten sind.

Namenskonventionen

QA-MISRA fördert die Verwendung von einheitlichen Benennungen, die durch Regular Expressions spezifiziert werden. Alle Identifier-Merkmale können überprüft werden.