Statische Analyse und Dynamischer Test: Von garantiert fehlerfreier Software sind wir auch nach mehreren Jahrzehnten an Software Engineering gefühlt immer noch unendlich weit entfernt. Auch für die nach den höchsten Sicherheitsstandards entwickelte Software kann niemand absolute Fehlerfreiheit garantieren. Alle Funktionalen Sicherheitsstandards erkennen an, dass eine garantiert fehlerfreie Software (mit dem heutigen Stand der Technik) nicht erreichbar ist. Die Maßnahmen in den Standards haben das Ziel die Anzahl der Fehler zu minimieren und auftretende Fehler so rechtzeitig zu erkennen, dass eine schlimmere Fehlerwirkung verhindert wird.
Statische Analyse und Dynamischer Test stellen zwei solche Maßnahmen dar. Insbesondere in sicherheitsrelevanten Systemen wird der Einsatz beider Maßnahmen gefordert, obwohl zum Teil die gleichen Fehler gefunden werden.
Umfängliches Validieren, Verifizieren und Testen ist mit hohen Kosten verbunden. Dies führt in den Meisten Projekten zu einem hohen Druck eine optimierte Teststrategie zu entwickeln.
Eine Voraussetzung für erfolgreiche Testoptimierungsstrategien ist das umfängliche Verständnis von Stärken und Schwächen der statischen und dynamischen Tests und Analysen. Der nachfolgende Beitrag gib einen ersten Überblick über das Thema. Weiterlesen