Sicherheitsgerichtete Software testen

Sicherheitsgerichtete Software testen

Der Bedarf an sicherheitsgerichteten Softwaresystemen wächst. Damit kommen auf Systemhersteller neue Herausforderungen zu, bevor sie eine SIL-Baugruppe mit Firmware auf den Markt bringen dürfen. Beim Unternehmen NewTec zeigt die Erfahrung: Für eine Entwicklung nach IEC61508 ist die Nachweisführung von Aktivitäten im Bereich der Software-Verifikation und -Validierung von besonderer Bedeutung. Hier stehen Entscheider und Testingenieure häufig vor dem Problem der Abschätzung der Aufwände für das Testen im Allgemeinen, und dem Einfluss von normgerechten Testprozessen auf ihre Organisation im Besonderen.

Fehlerkorrekturen in frühen Entwicklungsphasen betreffen i.d.R. nur 'Papier' wie z.B. die Richtigstellung eines Spezifikationsfehlers im Pflichtenheft. Bleiben derartige Mängel unentdeckt, besteht das Risiko der Fehlerfortpflanzung in untergeordnete Systemteile hinein.

Fehlerkorrekturen in frühen Entwicklungsphasen betreffen i.d.R. nur ‚Papier‘ wie z.B. die Richtigstellung eines Spezifikationsfehlers im Pflichtenheft. Bleiben derartige Mängel unentdeckt, besteht das Risiko der Fehlerfortpflanzung in untergeordnete Systemteile hinein. „Logische Fehler werden weiter gedacht.“ Man nennt diesen Vorgang auch Multiplikation eines Fehlers. Entsprechend steigt der Korrekturaufwand. (Bild: NewTec GmbH)


Testen wird häufig als lästige Nebensache angesehen und vernachlässigt. Obwohl jeder weiß, wie wichtig Testen ist, wird dem Entwicklungsfortschritt im Zweifel meist Vorrang gewährt. Besonders, wenn anspruchsvolle Budget- und Zeitrandbedingungen das Projekt begleiten. Wenn die Stellschraube ‚Verifikation und Validierung‘ gelockert wird um den Projektplan zu halten, werden Sie bei sicherheitsgerichteten Entwicklungen jedoch garantiert scheitern. Und je intensiver Sie darüber nachdenken, desto klarer sollte Ihnen werden, dass nur Projektierungen, welche die Aufwände für das Testen von Beginn an berücksichtigen, diese Situation vermeiden.
Software Development LifeCycle nach IEC61508 (V-Modell) (Bild: NewTec GmbH)

Software Development LifeCycle nach IEC61508 (V-Modell) (Bild: NewTec GmbH)

Softwaretesten spaltet sich in zwei Handlungsfelder auf

  • • Entwicklungsbegleitendes Verifizieren von Arbeitsprodukten (Entwicklungsdokumentation), einzelnen Software-Artefakten oder von integrierten Komponenten. Hierbei wird überprüft, ob die Ergebnisse einer Entwicklungsphase mit den Vorgaben an diese Phase übereinstimmen. Die Verifikation zielt darauf ab, Planabweichungen bzw. Fehler so früh wie möglich festzustellen, wodurch Korrekturen an Arbeitsprodukten mit geringsten Folgekosten vorgenommen werden können (siehe Bild 2).
  • • Finales Validieren des Entwicklungsprodukts. Es erfolgt ein Abgleich gegen die ursprünglichen Anforderungen und zugewiesenen Sicherheitsfunktionen. Hierbei wird nachgewiesen, dass die Software spezifikationskonform, zuverlässig und sicher in ihrer Zielumgebung innerhalb des festlegten Anwendungsbereichs arbeitet.

Herausforderungen im Softwaretesten

Obwohl der Nutzen von Verifikation und die Notwendigkeit der Validierung offenkundig sind, fehlen häufig Fachwissen und Managementskills zur normgerechten Planung, Organisation und Umsetzung dieser beiden Handlungsfelder im Projekt. Testengineering und Testmanagement sind im Fall von sicherheitsgerichteten Softwareentwicklungen hochspezialisierte Disziplinen, die besondere Fertigkeiten und Fähigkeiten voraussetzen. Beispielsweise muß der Methodenbaukasten der Verifikation richtig verstanden und angewendet werden können. Hierzu zählen Review-Verfahren und statische Analyse-Verfahren im linken Ast des V-Modells, sowie dynamische White-box und Black-box Verfahren im rechten Ast des V-Modells. Neben dem Wissen über methodische Testfallentwurfstechniken muss überdies der Umgang mit Testwerkzeugen und dessen Integration in die Entwicklungsumgebung beherrscht werden. Schließlich legt noch die Strategie des Testmanagers fest, wie die normativen Testanforderungen aus der IEC61508 (sog. Highly Recommended Methods) umgesetzt und dokumentiert werden. Wer an dieser Stelle seine Testerfahrung realistisch einschätzt und bei Bedarf auf externe Expertise zurückgreift ist gut beraten. NewTec als führender Entwickler für sicherheitsgerichtete Systeme ist überzeugt: Die richtige Investitionsentscheidung in qualifizierte Testwerkzeuge und Testautomatisierung, eine umsichtige wie risikobasierte Teststrategie, die richtige Auswahl und der praxisgerechte Umgang mit Testverfahren sowie die schlanke Testdokumentation mit datenbankgestützter Rückverfolgbarkeit können im Projekt bares Geld sparen.

Seiten: 1 2Auf einer Seite lesen

NewTec GmbH System-Entwicklung und Beratung
www.newtec.de

Das könnte Sie auch Interessieren