Statische Codeanalyse

Die Statische Codeanalyse der Axivion Suite zur Qualitätssicherung Ihrer Software

Die Axivion Suite verkörpert die neue Generation der statischen Codeanalyse. Unsere statische Codeanalyse überprüft Ihre Softwareprojekte auf Stilverstöße nach MISRA, AUTOSAR C++14, CERT oder C Secure Coding – auch viele Regeln aus der CWE können geprüft werden. Metrikverstöße werden Ihnen genauso angezeigt und dokumentiert wie Verletzungen von Codierrichtlinien. Potentielle Laufzeitfehler werden über die Defekt-Analyse aufgespürt. Redundanter und duplizierter Code wird von der Klon-Analyse gemanaged.

Bereits mehrere Tausend Nutzer weltweit vertrauen auf die Axivion Suite und prüfen Ihren Code mit unserem State-of-the-Art-Tool zur statischen Codeanalyse für C und C++.

Dieses Bild symbolisiert die verschiedenen Codierrichtlinien, die mit der Axivion Suite eingehalten werden können: MISRA, AUTOSAR C++14, CERT, C Secure Coding, ISO/IEC TS 17961, Kundenspezifikationen

Codierrichtlinien: MISRA, CERT C, CERT C++, AUTOSAR C++14, CWE, C Secure Coding (ISO/IEC TS 17961), Kundenspezifikationen

Die Axivion Suite garantiert Ihnen die 100-prozentige Abdeckung der automatisiert prüfbaren Regeln von MISRA C:2004, C:2012 (inkl. Amendment 1 Security Rules und Amendment 2) und C++:2008 und von AUTOSAR C++14 (17.03, 17.10, 18.03, 18.10 und 19.03). Zusätzlich deckt sie viele der entscheidbaren Regeln von CERT C und CERT C++ und ISO/IEC TS 17961 (C Secure Coding Checker) ab. Viele Regeln aus der CWE, die sich direkt auf Aspekte der statischen Analyse beziehen, können geprüft werden. Für Regeln, die ein weitergehendes Sicherheits-Design als Bewertungsgrundlage erfordern, lassen sich kundenspezifische Prüfungen erstellen. Die Codierrichtlinien werden mit einer sehr hohen Performance in Ihrer Umgebung geprüft, sodass Sie die Vorteile eines kontinuierlichen und automatischen Code Reviews unmittelbar nutzen können.
Selbst für eingebettete Systeme sind nicht alle enthaltenen Regeln entscheidbar. Deshalb sind False Positives möglich, die Ihnen unnötigen Arbeitsaufwand bereiten. Axivion hilft Ihnen, die Anzahl dieser False Positives möglichst gering zu halten, beispielsweise durch Konfigurationsmöglichkeiten. Eine Erweiterung um Ihre eigenen Codierrichtlinien ist jederzeit möglich.

Mehr erfahren
Da die Axivion Suite Regelsätze für viele bekannte Softwaremetriken enthält, werden in diesem Unterpunkt die bekannten Quader zu verschiedenen hohen Türme dargestellt.

Metriken

Die statische Codeanalyse der Axivion Suite bildet die Basis für viele bekannte Software-Metriken. Dazu zählen unter anderem einfache Metriken, die auf Zeilen basieren (Lines of Code einer Datei oder Funktion). Weitere Metriken fußen auf Kontrollfluss-Eigenschaften wie beispielsweise die Verschachtelungstiefe einer Funktion (Nesting) oder die zyklomatische Komplexität einer Funktion nach McCabe. Auch Token basierte Metriken wie die altbekannten Halstead-Metriken sind im Standardregelwerk enthalten. Die Axivion Suite umfasst auch die in der Automobilindustrie häufig verwendeten HIS-Metriken.
Die mitgelieferten Metriken lassen sich mittels API um Ihre spezifischen Softwaremetriken jederzeit ergänzen.
Mit Hilfe der Metriken lassen sich Hotspots im Code für Refactoring-Maßnahmen identifizieren, zum Beispiel überkomplexe oder überlange Funktionen. Die Schwellenwerte lassen sich pro Metrik spezifisch anpassen.
Da in der Praxis oft generierter Code Schwellenwerte übersteigt, die für handgeschriebenen Code sinnvoll sind, können Sie festlegen, welcher Code als generiert angesehen werden soll.

Mehr erfahren
Das Bild zur Defekt-Analyse der Axivion Suite stellt falsch parkende, stilisierte Autos auf einem Parkplatz dar welche Fehler im Source Code symbolisieren.

Defekt-Analyse

Überprüfen Sie Ihren Source Code auf mögliche Laufzeitfehler mit der statischen Codeanalyse der Axivion Suite. Unsere Analysen enthalten skalierbare Daten- und Kontrollflussprüfungen, mit deren Hilfe Fehler wie Out-of-bounds-Zugriffe, Nullpointer-Exceptions oder Division by Zero frühzeitig erkannt werden können. Programmfehler, die bereits vor dem Testen erkannt werden, erzeugen durch eine frühe Behebung geringere Folgekosten. Durch die Defekt-Analyse werden Entwickler frühzeitig auf Randsituationen im Programmablauf aufmerksam gemacht, die während der Entwicklung oft nicht bedacht werden. Der Code wird dadurch robuster.

Mehr erfahren

Good to know: Die Ergebnisse der in der Axivion Suite enthaltenen statischen Codeanalyse unterstützen und entlasten Sie bei der kontinuierlichen entwicklungsbegleitenden Qualitätssicherung von in den Programmiersprachen C und C++ erstellter Software. Durch die Automatisierung der Qualitätsprüfungen können sich die Entwickler auf die Aufgaben konzentrieren, bei denen menschliche Intelligenz und Kreativität gefragt sind. Repetitive Aufgaben lassen sich so an eine Maschine übergeben und von dieser wiederholbar, vollständig und ermüdungsfrei erledigen lassen.
Damit komplementiert der Einsatz der statischen Analyse mit der Axivion Suite den Einsatz klassischer dynamischer Analysen. Die leicht zu automatisierende statische Codeanalyse ist ein Eckpfeiler für Ihr CI-basiertes Quality-Gate.