Sehen Sie, welche API-Testlösung im GigaOm Radar Report am besten abgeschnitten hat. Holen Sie sich Ihren kostenlosen Analystenbericht >>

Sehen Sie, welche API-Testlösung im GigaOm Radar Report am besten abgeschnitten hat. Holen Sie sich Ihren kostenlosen Analystenbericht >>
Standards für die Entwicklung sicherheitskritischer Software empfehlen den Herstellern, nachzuweisen, dass die von ihnen zur Softwareentwicklung verwendeten Tools keine Probleme verursachen und korrekte, vorhersehbare Ergebnisse liefern.
Der Prozess der Bereitstellung solcher Beweise wird als bezeichnet Werkzeugqualifikation. Obwohl es sich um einen notwendigen Prozess handelt, ist die Tool-Qualifizierung oft eine langwierige und zeitaufwändige Tätigkeit, die viele Organisationen nicht einplanen. Um dies möglichst unkompliziert zu gestalten, sind ausgewählte Tools zertifiziert und werden bereits seit längerem bei der Entwicklung sicherheitskritischer Anwendungen eingesetzt.
Im Fall der Softwareentwicklung für Bordsysteme bietet DO-330, Überlegungen zur Qualifizierung von Softwaretools, Leitlinien zur Toolqualifizierung. Ziel ist es, einen Rahmen für einen Toolqualifizierungs-Lebenszyklus bereitzustellen, der Planung, Verifizierung, Qualitätssicherung und Dokumentation umfasst. Es gibt verschiedene Toolqualifizierungsstufen von 1 bis 5, wobei 5 die am wenigsten strenge ist. Die Stufe basiert auf den möglichen Auswirkungen des Tools auf die Systemsicherheit.
Hier sind einige der wichtigsten Schritte der Werkzeugqualifizierung gemäß DO-330.
Das Endprodukt ist ein Nachweis in Form einer Dokumentation. Der in DO-330 beschriebene Qualifizierungsprozess ist komplex und zeitaufwändig. Parasofts Qualifizierungskits für C/C++test enthalten einen praktischen Tool-Assistenten, der Automatisierung ins Spiel bringt und den Zeit- und Arbeitsaufwand für die Tool-Qualifizierung reduziert.
Die Tool-Qualifizierung muss mit der Tool-Auswahl beginnen, um sicherzustellen, dass Sie ein Entwicklungstool verwenden, das von einer Organisation wie TOV SOD zertifiziert ist. Dadurch wird der Aufwand für die Tool-Qualifizierung erheblich reduziert.
Parasoft C/C++-Test, C/C++-Test CT und DTP sind von TOV SOD für funktionale Sicherheit gemäß IEC, ISO und anderen funktionalen Sicherheitsindustriestandards für hostbasierte und eingebettete Zielanwendungen zertifiziert. Obwohl das Zertifikat für RTCA DO-178C/DO-330 nicht ausreicht, zeigt es das historische Engagement von Parasoft bei der Bereitstellung hochwertiger Produkte.
Um die Tool-Qualifizierungsanforderungen von DO-330 zu erfüllen, ebnet die C/C++-Softwareentwicklung den Weg für eine optimierte Qualifizierung der statischen Analyse, der Komponententests und der Abdeckungsanforderungen für die sicherheitskritischen Standards, indem sie ein Tool-Qualifizierungskit anbietet, das den Tool-Qualifizierungsprozess für jeden Entwicklungshost und/oder jedes Ziel-Ökosystem automatisiert.
Traditionell ist mit der Tool-Qualifizierung ein erheblicher Aufwand an manueller Arbeit, Tests und Dokumentation verbunden, um die Anforderungen eines Zertifizierungsaudits zu erfüllen. Dieser dokumentationsintensive Prozess erfordert jedoch eine manuelle Interpretation und Vervollständigung. Dies ist zeitaufwändig und erhöht den ohnehin schon umfangreichen Testplan und das Budget eines Unternehmens zusätzlich.
Parasoft nutzt seine eigenen Qualifizierung von Tools zur Softwaretestautomatisierung mit Qualifizierungskits, die einen dokumentierten Workflow beinhalten und so den Aufwand drastisch reduzieren.
Für die Qualifizierung von Funktionen, die während der Entwicklung nicht verwendet wurden, sollte kein zusätzlicher Aufwand erforderlich sein. Die Reduzierung des Test-, Berichts- und Dokumentationsumfangs ist eine wichtige Möglichkeit, den Qualifizierungsaufwand zu verringern.
Beispielsweise können Benutzer als Teil des DO-178C/DO-330-Tool-Qualifizierungskits und -prozesses den Parasoft C/C++-Test für die statische Analyse von C/C++-Code auswählen, um dessen Konformität mit dem MISRA C:2023-Standard zu überprüfen. Das Tool wählt dann nur die Teile der Qualifizierungssuite aus, die für diese Funktion erforderlich sind.
Ein einzigartiger Vorteil bei der Qualifizierung von Testautomatisierungstools besteht darin, dass die Tools zur Automatisierung ihrer eigenen Tests verwendet werden können. Die größtmögliche Automatisierung ist der Schlüssel, um den Test so reibungslos wie möglich zu gestalten. Sogar manuelle Tests, die für jedes Entwicklungstool unvermeidlich sind, werden so effizient wie möglich durchgeführt. Es werden Schritt-für-Schritt-Anleitungen bereitgestellt und die Ergebnisse werden als Teil des Qualifizierungsdatensatzes eingegeben und gespeichert.
Parasoft C/C++test sammelt und speichert alle Testergebnisse von jedem Build. Die Tests werden wie bei jedem anderen Projekttyp ausgeführt. Diese Ergebnisse werden in den Teststatus-Assistenten der Parasoft Qualification Kits übernommen, um einen umfassenden Überblick über die Ergebnisse wie die unten gezeigten zu bieten.
Jedes Entwicklungstool hat bekannte Fehler und jeder Anbieter, der Produkte für sicherheitskritische Entwicklungen verkauft, muss diese dokumentieren. Zum Umgang mit bekannten Mängeln gehört mehr als nur deren Dokumentation.
Für die Tool-Qualifizierung ist der Nachweis erforderlich, dass diese Mängel die zur Verifizierung und Validierung verwendeten Ergebnisse nicht beeinträchtigen. Für jeden bekannten Mangel muss der Hersteller eine Behebungsmaßnahme vorlegen und diese zur Zufriedenheit des Zertifizierungsprüfers dokumentieren.
Es ist die Aufgabe des Tool-Anbieters, die Behandlung bekannter Mängel so weit wie möglich zu automatisieren. Schließlich erwartet der Anbieter von seinen Kunden, dass sie sich im Rahmen ihrer Arbeitslast mit Softwarefehlern von Drittanbietern befassen müssen!
Die Parasoft C/C++test-Qualifizierungskits enthalten einen Assistenten zum Automatisieren der Aufzeichnung von Schadensbegrenzungsmaßnahmen für bekannte Defekte, wie im folgenden Beispiel gezeigt.
Das Endergebnis der Tool-Qualifizierung ist Dokumentation – und zwar jede Menge davon. Jeder durchgeführte Test mit Ergebnissen, jeder bekannte Defekt mit Abhilfe, manuelle Testergebnisse und Ausnahmen werden aufgezeichnet und gemeldet. Qualifizierungskits anderer Anbieter können nur aus Dokumentation bestehen, und ohne Automatisierung ist die Dokumentation der Konformität mühsam.
Stattdessen werden mithilfe des Qualification Kits für den C/C++-Test die kritischen Dokumente automatisch als Teil des Workflows generiert.
In jedem dieser Dokumente wird nur die Dokumentation erstellt, die für das verwendete Werkzeug erforderlich ist, da der Umfang der Qualifizierung zu Beginn des Projekts eingegrenzt wurde. Durch Automatisierung und Eingrenzung des Qualifizierungsumfangs reduzieren die Teams den Dokumentationsaufwand erheblich.