Call for Papers

Automatisierung von anforderungsbasiertem Testen ( Vortrag )

Von der testbaren Anforderung zum Orakel

Referent: Dr. Ralf Gerlich, Dr. Rainer Gerlich BSSE System and Software Engineering
Vortragsreihe: Test & Qualität 1
Zeit: 06.12.18 10:35-11:15
Co-Referenten: Co-Autor: Dr. Rainer Gerlich Dr. Rainer Gerlich, BSSE verfügt über mehr als 35-jährige Erfahrung im industriellen Software Engineering, davon mehr als 30 Jahre in der Raumfahrt, Schwerpunkte sind Automation im Lifecycle, Process Improvement, Verifikation und Validierung.

Zielgruppe

Tester

Themenbereiche

Anforderungen definieren und verfolgen, Test & Qualitätssicherung, anderes Themengebiet

Schwerpunkt

Methode

Voraussetzungen

Expertenwissen

Kurzfassung

Der Nachweis zur Erfüllung von Anforderungen auf der Basis von Funktionstests ist wegen des Anteils an manuellen Tätigkeiten aufwändig. Selbst bei automatischer Testdaten- und Testskripterzeugung verbleiben immer noch die Zuordnung der Daten zu Anforderungen und die Bewertung, ob eine Anforderung erfüllt ist oder nicht. Mit der Formalisierung von Anforderungen kann auch diese letzte manuelle Tätigkeit automatisiert werden. „Formalisierung“ heißt, „maschinen-lesbar“, aber so verständliche wie möglich. Als Ansatz wurde eine Orakeldarstellung in der Form „Voraussetzung ? Ergebnis“ gewählt: Wenn die Voraussetzung erfüllt ist, muss das erwartete Ergebnis vorliegen. Auf dieser Basis kann ein Werkzeug, das automatisch Tests – beginnend bei der Testdatengenerierung – ausführt, automatisch auf die (Nicht-)Erfüllung schließen. Aufgrund der hohen Anzahl an Testdaten können auch Gegenbeispiele gefunden werden. Das Potenzial sowie Herausforderungen werden an Beispielen erläutert.

Gliederung

1. Überblick über gegenwärtige Praxis der Spezifikation und deren Verifkation mit Unit Tests
2. Überblick über Testautomation beginnend bei der Testdatengenerierung
3. Orakel-Ansatz zur Automatisierung von anforderungsbasiertem, automatischen Testen
4. Herausforderungen bei der Definition von Orakeln
5. Beispiele
6. Ausblick
------------------------------
Zu 1)
Anforderungen auf Textbasis, manuelle Ableitung von Testfällen aus Anforderungen, Testfälle beschränkt auf beabsichtigte Funktionalität
Zu 2)
Beschreibung des Ansatzes zur Testautomatisierung beginned mit der Testdatengenerierung, Möglichkeiten, bspw. Testen auf Robustheit
Zu 3)
Beschreibung des Orakelansatzes und Umsetzung im Rahmen der Testautomatisierung
Zu 4)
Bisherige Erfahrungen, Fehlerquellen
Zu 5)
Beispiele für verschiedene Orakeltypen, Automatisierung des Trackings zu höheren Anforderungsebenen
Zu 6)
Diskussion zur Nutzerakzeptanz

Nutzen und Besonderheiten

Die Teilnehmer erhalten Information über den Nutzen, der durch formalisierte Anforderungen bei der Verifikation im Rahmen von vollständiger Testautomation entsteht: weniger Aufwand, schnellerer Überblick über nicht verifizierte / verifizierbare Anforderungen und deren Ursache, Finden von Gegenbeispielen auf einer realen Plattform, funktionsübergreifende Prüfung und Anwendung von Anforderungen, automatische Zuordnung von Anforderungen zu Funktionen. Der dargestellte mögliche Nutzen sollte motivieren, Anforderungen auf der untersten Ebene („Low-Level Requirements“) ausreichend zu formalisieren: weniger manueller Aufwand, schnelles Feedback zur Verifikation der Anforderungen, Wiederholbarkeit bei Änderung an der Software ohne manuelle Eingriffe. Die Teilnehmer erhalten auch Hinweise, was bei der Definition und Implementierung von Orakeln zu beachten ist, um korrekte Ergebnisse zu erhalten.

Über den Referenten

Dr. rer.nat. Dipl.-Inf. Ralf Gerlich begann vor 20 Jahren mit der professionellen Softwareentwicklung im Raumfahrtumfeld, zunächst mit Schwerpunkt Systemprogrammierung. Inzwischen beschäftigt er sich hauptsächlich mit Methoden der Softwareverifikation in allen Ebenen der Softwareentwicklung (konstruktiv, organisatorisch und analytisch), sowohl manuell als auch werkzeuggestützt und vollautomatisch. Dabei gilt sein Interesse sowohl der theoretisch-mathematischen als auch der praktisch-pragmatische