Sicherheitskritische Software und die EN 50128 Norm

Die EN 50128 Norm  enthält klare Anforderungen an sichere Programmiertechniken, wie Modularität und komponenten-, struktur- und objektorientierte Programmierung. Zudem fordert sie den Einsatz von Modellierungs- und Programmierungsstandards sowie Sprachen-Subsets wie MISRA C. Für das Sicherheitsintegritätslevel (SIL) 3 und 4 sind diese Programmierungsstandards sogar obligatorisch. Hier bieten statische Analysetools wertvollen Support, denn sie eignen sich sehr gut zur Umsetzung strenger Codier-Standards, unabhängig davon ob es sich dabei um gängige wie MISRA C oder um kundenspezifische Versionen handelt.

 Tatsächlich schreibt die EN 50128 Norm die Nutzung statischer Analysetoolsunter Verwendung eines flexiblen Satzes von Programmierungsstandards, Steuerfluss- und Datenfluss-Analyseregeln vor, und empfiehlt sie dringend für SIL 1 bis 4. Interessanterweise heißt es in dieser Norm: „Nutzen Sie das inter-prozedurale Steuerflussanalyse-Modul, um eingesetzte Variablen vor deren Initialisierung, Pufferüberläufe, Speicherlecks usw. zu finden. Damit ist klar, dass die statische Analyse einen wichtigen Bestandteil jedes Instrumentariums für die Entwicklung sicherheitsrelevanter Software darstellt.

Grammatech
Grammatech

Die Tabelle veranschaulicht, wie spezifische Anforderungen von EN 50128  von statischen Analysetools erfüllt werden sowie ihren zugehörigen Empfehlungsgrad. Die Verweise beziehen sich auf einzelnen Klauseln in EN 50128.

Zusätzlich zur Konformität ist die Dokumentation zu ihrem Nachweis ein wichtiger Bestandteil der Erfüllung der Anforderungen von EN 50128. Automatisierte Softwaretools, einschließlich statischer Analyse, unterstützen den Zertifizierungsaufwand mithilfe von Berichtsfunktionen. Zusätzlich zu den weiteren Vorteilen wie Risikominimierung und einer kürzeren Entwicklungszeit erzielen sie eine schnellere Time-to-Market und Kosteneinsparungen.

Ein nach EN 50128 zertifiziertes Tool ist CodeSonar, dessen Funktionsumfang und Entwicklungsprozess von der SGS-TÜV Saar GmbH geprüft wurde, die auch bestätigt, dass es die Anforderungen für den Einsatz zur Entwicklung sicherheitsrelevanter Software erfüllt. Warum ist das wichtig? Werkzeuge zum Entwickeln von sicherheitsrelevanter Software müssen dokumentiert, und ihre Ergebnisse analysiert werden. Den Zertifizierungsvorgang mit zertifizierten Tools zu unterstützen verringert Risiko, Kosten und Zeit. Demgegenüber erfordern nicht zertifizierte Tools weitere Prüfungen durch die Zertifizierungsstellen – und führen gegebenenfalls zu höherem Aufwand und Risiko für das Entwicklungsteam.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.