SWM-Tutorial 1:
Test-Driven Requirements Management
(Mi, 18.3.)
Harry Sneed, Consultant und Dozent für Software Engineering
In dem halbtägigen Tutorial werden Teilnehmer anhand von Beispielen aus der betrieblichen Praxis erfahren, wie natürsprachliche Anforderungsdokumente, bzw. Lastenhefte, strukturiert, geschrieben und markiert werden. Sie sollten sowohl von Anwendern, Testern, Schätzer und Richtern lesbar als auch von Textverarbeitungsautomaten interpretierbar sein. Mit Textverarbeitungsautomaten werden neben logischen Testfällen Anforderungs-Messwerte und Anforderungsmängel aus dem Textdokument gewonnen. Die logischen Testfälle werden als z. B. Excel-Tabellen ausgegeben, in denen die Hauptattribute der Testfälle die Spalten bilden. Zusätzlich werden sie im XML Format spezifiziert. Die Anforderungsmetrik wird in einem Metrik-Bericht ausgegeben, gegliedert nach Größen-. Komplexitäts- und Qualitätsmaßen. Parallel dazu wird eine XML-Datei erzeugt als Eingabe zum Schätzverfahren. Schließlich erfolgt ein Anforderungsmängelbericht mit Vollständigkeits- Konsistenz-, Struktur und Formulierungsmängeln. Der Mängelbericht dient als Grundlage für die Qualitätssicherung der Anforderungen.
SWM-Tutorial 2:
Ausführbare Spezifikationen mit der Language Workbench MPS
(Mi, 18.3.)
Jens Nerche, Kontext E GmbH
Im Umfeld der agilen Softwareentwicklung sind Behavior Driven Development und ausführbare Spezifikationen verbreitet. Die Anforderungsanalyse und -dokumentation sowie die Definition von Akzeptanzkriterien für die Anforderungen wird verbunden mit der Erstellung von maschinell ausführbaren Testfällen zur Prüfung der Akzeptanzkriterien, um eine Suite automatischer Testszenarien zu erhalten und den manuellen Aufwand auf das explorative Testen beschränken zu können. Dafür wurden Tools wie Cucumber und FitNesse entwickelt, so dass die Akzeptanztests wie Unit Tests ausführbar sind. Dabei fehlt entweder die IDE-Unterstützung oder es werden Interne DSLs verwendet, bei denen die Syntax der Hostsprache limitierend wirkt. Medienbrüche erschweren die Erstellung und das Refactoring der Testfälle. Außerdem sind keine echten, navigierbaren Referenzen vom Code auf die Anforderungen der Spezifikation möglich.
Im Tutorial werden ausführbare Spezifikationen vorgestellt, bei denen diese Limitierungen überwunden wurden. Gherkin und Use Case Formulare werden direkt ausführbar, der Editor bietet den Komfort einer modernen IDE. Die Spezifikationen werden in externen domänenspezifischen Sprachen geschrieben, so dass in der Fachabteilung bekannte Notationen und Textformatierungen verwendet werden können. Die benutzten Tools sind Open Source.