Kurzüberblick zur Standardreihe ISO/IEC/IEEE 29119
Verifikation durch Testen ist eine wichtige Phase im Software-Lebenszyklus. Die Standard-Reihe ISO/IEC/IEEE 29119 gibt international anerkannte Empfehlungen zum Thema Softwaretesten. Die beschriebenen Prozesse, Methoden und Techniken können von jedem Entwickler oder Verifikationsteam angewendet werden.
Anbieter zum Thema

Die Intention der ISO 29119 Standardreihe ist es, einen international anerkannten Standard für das Testen von Software zu definieren. Diese Standardreihe ist zur Verwendung von jeder Organisation für jede Art von Softwaretesten entworfen worden. Dieser Beitrag gibt einen Überblick über die Standardreihe.
Die Standardreihe ISO 29119 besteht im Wesentlichen aus fünf Teilen (siehe auch Bild oben) : Teil 1 zu Konzepten und Definitionen, Teil 2 zu Testprozessen, Teil 3 zu Testdokumentation, Teil 4 zu Testtechniken, Teil 5 zu keyword-getriebenem Testing. Teile 2, 3 und 4 sind normativ. Eine Organisation kann eine sogenannte „Full Conformance“ erreichen, indem sie eine vollständige Erfüllung aller Anforderungen nachweist. Für eine „Tailored Conformance“ reicht die Erfüllung einer definierten Anzahl der Anforderungen.
Teil 1 – Konzepte und Definitionen
Der Teil 1 ist informativ und enthält Konzepte und Definitionen der Standardreihe. Er bietet ausführliche Definitionen zum Bereich Softwaretesten. Einige Begriffe, wie z.B. „Error Guessing“ (siehe ISO 29119-1, 4.14), stimmen mit der Begriffswelt der Basisstandardreihe IEC 61508 überein. Andere Definitionen, wie z.B. die eines „Test Environment Readiness Report“ (siehe ISO 29119-1, 4.61), spiegeln die detaillierte Betrachtung des Themas Softwaretest wider und sind so in Standards zur Funktionalen Sicherheit nicht zu finden. Spezielle Security Aspekte des Softwaretestens werden im Standard in den entsprechenden Teilen berücksichtigt. Eines der Konzepte der Standardreihe ist die Fokussierung auf das Testen als Verifikations- / Validierungs-Aktivität. Bild 1 zeigt die Hierarchie der unterstützten Verifikations- und Validierungs-Aktivitäten.
Teil 2 – Test-Prozesse
In diesem Teil werden die Testaktivitäten in verschiedene Ebenen gruppiert und Empfehlungen zu den notwendigen Prozessen gegeben. Organisatorische Testprozesse umfassen Firmenspezifische Prozesse und Strategien zum Thema Softwaretesten. In den Test Management Prozessen stehen Planung, Überwachung und Fertigstellung im Fokus. Zum Beispiel sind hier der Erfahrungsaustausch am Ende des Testens („Lessons learned“) und dessen Organisation ein Thema.
Dynamische Testprozesse befassen sich mit Design, Aufbau und Durchführung von Tests. Es werden auch Empfehlungen zur Behandlung von Abweichungen, d.h. fehlerhaften Testergebnissen, gegeben. Test Design und Implementierung wird in folgende Unteraktivitäten aufgeteilt:
- Identify Feature Sets (TD1)
- Derive Test Conditions (TD2)
- Derive Test Coverage Items (TD3)
- Derive Test Cases (TD4)
- Assemble Test Sets (TD5)
- Derive Test Procedures (TD6)
Die Herangehensweise zu TD2, TD3 und TD4 ist Inhalt von Teil 4 der ISO 29119.
Teil 3 – Testdokumentation
Die Anforderungen und entsprechende Beispiele zu der notwendigen Dokumentation werden im Teil 3 aufgelistet. Dieser Teil gibt eine detaillierte Beschreibung der Inhalte, die eine gute Ergänzung zu anderen Standards, wie z.B. ISO 26262, darstellt. Als Beispiel hier die Definition eines „Schedule“ (siehe ISO 29119-3, 6.2.10), der Teil des Testplans ist. Mögliche beispielhafte Implementationen dieses „Schedule“ für den Test sind im Anhang F, ISO 29119-3, zu finden. In Bild 3 ist ein Beispiel einer Testfallbeschreibung aus dem Standard ISO 29119-3, Anhang J, gezeigt. Anhand dieser Beispiele bekommt man einen guten Eindruck, wie die entsprechende Dokumentation aufgebaut werden sollte.
Teil 4 – Testtechniken
Im Teil 4 werden die entsprechende Ableitung der Testbedingungen (TD2), Testing Coverage (TD3) und Testfälle (TD4) für verschieden Test-Techniken vorgestellt. Die Test-Techniken gliedern sich in drei verschiedene Gruppen.
Die Spezifikations-Basierten Techniken umfassen z.B. Äquivalenzklassenbildung, Boundary Value Analyse, Szenario-Testen und anderes. Unter Struktur-basiertem Testen fallen Anweisungs-, Zweig- und MC/DC-Überdeckungstest, genau wie Datenfluss Tests. Die letzte Gruppe ist das erfahrungsbasierte Testdesign, also das sogenannte „Error Guessing“.
Teil 5 – Keywordgetriebenes Testing
Im informativen Teil 5 wird ein Keyword-basierter Ansatz zum Erstellen von Testfällen vorgestellt. Dieser Ansatz wurde bisher in den Standards zur Funktionalen Sicherheit in dieser Form noch nicht berücksichtigt.
Zusammenfassung zur Standardreihe ISO 29119
Die Standardreihe ISO 29119 ist eine sinnvolle Ergänzung zu den bisher vorhandenen Standards. Jeder Test-Entwickler findet in diesem Standard in strukturierter Form Techniken, die vielfältig einsetzbar sind. Besonders Teil 3 ist durch die vielen Beispiele sehr hilfreich, um Testdokumentation zu erstellen, die auch den Anforderungen der Standards zur Funktionalen Sicherheit und Cyber Security genügt.
:quality(80)/images.vogel.de/vogelonline/bdb/1388500/1388581/original.jpg)
Funktionale Sicherheit mit IEC 61508: Systematische Fehler mit Struktur und Prozessen eindämmen
:quality(80)/images.vogel.de/vogelonline/bdb/1802200/1802272/original.jpg)
CERT vs. MISRA vs. ISO/IEC 17961
Der richtige Coding-Standard für sichere Embedded Software
:quality(80)/images.vogel.de/vogelonline/bdb/1349100/1349155/original.jpg)
Nachweisbare Tests für funktionale Sicherheit auf Serienhardware durchführen
* Die Autorin: Gudrun Neumann studierte Informatik an der Technischen Universität München und schloss das Studium als Diplom-Informatikerin Univ. (Dipl.-Inform. Univ.) im Jahr 1990 ab. Seit 2010 ist sie als Product Manager Functional Safety Software bei der SGS-TÜV Saar tätig und ist dort verantwortlich für die Durchführung von Analysen und Beurteilungen von komplexen Systemen, z.B. Qualifizierung von Software Tools. 2012 wurde sie Team Leiterin des Software Teams.
(ID:45290700)