Der Blätterkatalog benötigt Javascript.
Bitte aktivieren Sie Javascript in Ihren Browser-Einstellungen.
The Blätterkatalog requires Javascript.
Please activate Javascript in your browser settings.
10 Elektronik automot ive EmbEddEd-SyStEmE sehr positiv Die Möglichkeit sich auf die neuen Probleme zu konzentrieren die mit den jüngsten Code-Änderungen verbunden sind verbesserte die Produktivität der Entwickler sichtbar reduzierte die Frustration im Zusammenhang mit dem obligatorischen Prozess der Programmierrichtlinien und erhöhte die Akzeptanz der Technik Entfernen von unerwünschten Ergebnissen mit Unterdrückungen Verzicht Es gibt zwei Arten von Situationen in denen Entwickler Ergebnisse der statischen Code-Analyse ausblenden möchten ohne das Problem zu beheben Im ersten Fall stellt ein gemeldeter Fehler eine falsche Diagnose des Tools dar Im zweiten Fall handelt es sich um ein echtes Problem das von den Entwicklern jedoch als etwas erkannt wird das sicher ignoriert werden kann In beiden Situationen soll das vorhandene Problem aus den zukünftigen Berichten eliminiert werden sodass es keine Zeit für die Analyse verbraucht Entscheidend ist dass der Prozess der Entfernung unerwünschter Befunde der statischen Code-Analyse dokumentiert wird insbesondere bei sicherheitskritischen Projekten die das Einhalten von Programmierrichtlinien verlangen Der Vorgang des Eliminierens unerwünschter Befunde aus zukünftigen Berichten wird als Unterdrückung bezeichnet ebenso wie die zu diesem Zweck erstellten Datensätze Der MISRA-Programmierstandard beschreibt diesen Prozess in der Norm MISRA Compliance 2020 [2] genau Unerwünschte Verstöße gegen die Programmierrichtlinie wenn nicht eine Fehlmeldung des Tools werden als „Abweichung“ behandelt und verlangen das Erstellen und Speichern einer zusätzlichen Dokumentation für die Code-Compliance-Audits Deren Erstellung bedeutet einen Verwaltungsaufwand für den Entwicklungsprozess Noch problematischer ist es diese Informationen effektiv an alle relevanten Zweige im Quellcode weiterzugeben um doppelten Aufwand der Entwickler für die Erstellung der Unterdrückungs-Abweichungs-Dokumentation zu vermeiden Für die Speicherung und Anwendung von Unterdrückungen gibt es verschiedene Strategien Im externen System gespeicherte Unterdrückungsmetadaten Ausgangspunkt ist dass die Verletzung durch eine Reihe von Eigenschaften eindeutig identifiziert wird z B Quelldateipfad Funktionsname Prüf-ID der statischen Code-Analyse und Verletzungsmeldung Mit diesen Eigenschaften wird eine Kennung erstellt und in der externen Datenbank zusammen mit zusätzlichen Informationen über den Unterdrückungsgrund gespeichert Die Datenbank wird bei den nachfolgenden Code-Scans abgefragt und bereits unterdrückte Befunde nicht mehr gemeldet Einige der Lösungen unterstützen die automatische Weitergabe der Befunde an alle relevanten Zweige im SCM-System Source Code Management Als Vorteil trennt diese Strategie die Unterdrückungsinformationen vom Quellcode wodurch werkzeugspezifische Kommentare im Code nicht mehr benötigt werden Der größte Nachteil ist die eingeschränkte Sichtbarkeit der Unterdrückungsinformationen was Quellcode-Audits erschwert und es nicht ermöglicht Compliance-Anforderungen „as the Code“ einzuhalten Außerdem verlangt der Prozess der automatischen Anwendung von Unterdrückungen auf andere Zweige eine zusätzliche manuelle Überprüfung Speichern der Unterdrückungsinformationen als Kommentar in der Quelldatei Durch das Hinzufügen von Kommentaren zu den Zeilen mit den Ergebnissen der statischen Analyse entfällt die Notwendigkeit den Ort des Ergebnisses mithilfe zusätzlicher Ergebnisattribute zu identifizieren Bild 3 Wird die statische Analyse auf dem Code ausgeführt der Unterdrückungsanmerkungen enthält extrahiert das Tool Unterdrückungsinformationen aus dem Code und wendet sie auf identifizierte Probleme an Dieser Ansatz verbessert die Sichtbarkeit des Unterdrückungsprozesses deutlich Bei der Überprüfung des Codes sind alle relevanten Informationen direkt im Kontext des Quellcodes sichtbar auf den sie zutreffen Außerdem ist der Vorgang des Abgleichs von Unterdrückungsdaten mit bestimmten Verstößen vereinfacht und weniger fehleranfällig da der Kommentar eng an die Stelle im Code gebunden ist an der das Problem auftaucht Der Nachteil ist dass der Quellcode mit den Kommentaren „verschmutzt“ werden muss die nicht mit der Funktion des Quellcodes zusammenhängen In streng regulierten Projekten die z Bdem DO-178C-Standard folgen kann das Bearbeiten der Datei zum Hinzufügen von Unterdrückungskommentaren höchst unerwünscht sein da durch die Code-Änderung die Zertifizierung ungültig wird und eine erneute Prüfung erfolgen muss Beide Methoden zur Eliminierung unerwünschter Ergebnisse der statischen Analyse haben Vorund Nachteile Abhängig von der Situation kann jede Methode für die Entwicklungsteams schwierig zu implementieren sein In der Studie hat Parasoft einen dritten Ansatz zur Verwaltung von Unterdrückungen prototypisch entwickelt der die Vorteile beider Methoden kombiniert Bild 3 Beispiel für Unterdrückungsinformationen die in Form eines Kommentars direkt zum Quellcode hinzugefügt wurden Bild Parasoft