FINARIS Produktpräsentation Modellbasierte Testautomatisierung von Back-End-Systemen Hans-Peter Möller (DekaBank) Werner Märkl (FINARIS GmbH)
2 Agenda Seite Einleitung 3 Modellbasiertes Testen in der Datenverarbeitung 8 Regelwerke 13 Vorgehen bei der Testautomatisierung 18 Zusammenfassung und Diskussion 21
3 Agenda Seite Einleitung 3 Modellbasiertes Testen in der Datenverarbeitung 8 Regelwerke 13 Vorgehen bei der Testautomatisierung 18 Zusammenfassung und Diskussion 21
4 Modellierung technischer Systeme Anforderungen Modellbasiertes Testen Konstruktion Verifikation Konstruktionsplan Idealisierung & Abstraktion Abstraktes Modell Modellaufbau Systemaufbau Deduktion Technisches System Simulationsmodell Übereinstimmung mit den Anforderungen? Experiment am System Systemdaten Validierung Modelldaten Experiment am Modell
5 Konsequenzen aus Modellbasiertem Test Modelle ermöglichen einen sehr hohen Grad an Testautomatisierung Modellbasiertes Testen spart Zeit und Kosten Die Software-Qualität wird positiv beeinflusst; sie hängt ab von: der Qualität des Testfallportfolios der erreichten Testabdeckung der Fehlerquote der Qualität der Anforderungen Fehler in den Anforderungen führen auch bei MBT zu hohen Folgekosten Empfehlung: Testen der Anforderungen, dann parallel Entwicklung und MBT
6 Validierung der Anforderungen Modellbasiertes Prototyping Verifikation Anforderungen Idealisierung & Abstraktion Abstraktes Modell Modellaufbau Deduktion Ideal: Abnahme des abstrakten Modells durch Fachabteilung Simulationsmodell Experiment am Modell Validierung: - manuell: durch Fachmann / Fachfrau - automatisiert: Plausibilisierungs-Checks Modelldaten
7 Motivation für Modellbasiertes Prototyping (MBP) Testen bedeutet das Messen von SW-Qualitätsmerkmalen gegenüber den Anforderungen Eine Software ohne Fehler kann von schlechter Qualität sein, wenn die Anforderungen lückenhaft, inkonsistent oder falsch sind MBP hilft der Fachabteilung, Anforderungen zu definieren, die das gewollte fachliche Modell besser abbilden, die Notwendigkeit von Change Requests stark reduzieren, seitens der IT schneller und fehlerfreier umsetzbar sind.
8 Agenda Seite Einleitung 3 Modellbasiertes Testen in der Datenverarbeitung 8 Regelwerke 13 Vorgehen bei der Testautomatisierung 18 Zusammenfassung und Diskussion 21
9 Modellbasiertes Testen nach Modellbasiertem Prototyping Anforderungen Abstraktes Modell (validiert) Konstruktion Modellbasiertes Testen Verifikation Konstruktionsplan Systemaufbau Abstraktes Modell (validiert) Deduktion Modellaufbau Technisches System Simulationsmodell Übereinstimmung mit den Anforderungen? Experiment am System Systemdaten Validierung Modelldaten Experiment am Modell
10 Konsequenzen aus MBT nach MBP Qualität der Anforderungen steigt signifikant Weniger Change Requests Schnellere Umsetzung in der IT Weniger Fehler in der Implementierungsphase Fehler schneller identifizierbar Kürzere Release-Zyklen
11 Back-End Systeme: Schematische Darstellung Input I 1, I 2,,I N Prüfling.EXE (System under Test) O 1, O 2,,O M Output Aufrufparameter P 1,P 2,P P Beispiele für Back-End Systeme Berechnungs-/Steuerungssysteme Reportingsysteme Datenbewirtschaftung (ETL) Services (REST, SOA, etc.) Schnittstellen Migrationen
12 Back-End Systeme: Funktionale Darstellung Input I 1, I 2,,I N f 1 (I 1, I 2,,I N, P 1, P 2,,P P ) = O 1... O 1, O 2,,O M Output f M (I 1, I 2,,I N, P 1, P 2,,P P ) = O M Aufrufparameter P 1,P 2,P P Für diese Funktionenschar suchen wir eine geeignete Darstellung für das abstrakte Modell. Feststellung Die Berechnungsergebnisse O 1 -O M ergeben sich funktional aus Eingangsdaten und Parametern. Ansonsten wären die Ergebnisse nicht deterministisch!
13 Agenda Seite Einleitung 3 Modellbasiertes Testen in der Datenverarbeitung 8 Regelwerke 13 Vorgehen bei der Testautomatisierung 18 Zusammenfassung und Diskussion 21
14 RapidRep-Regelwerke: Darstellung für abstrakte Modelle Funktionale Abbildung Regeln der Form: Wenn Dann jede Regel hat einen eindeutigen Identifier (RULE_ID) Auswertung gemäß Wasserfall-Prinzip (die erste zutreffende Regel zieht) Aussehen der Regelwerke folgt dem natürlichen Verwendungszweck unmittelbare Auswertbarkeit im Simulationsmodell Funktionale Dekomposition Verschachtelung von Regelwerken f(g(x), h(j(z))) Reihenfolge der Anwendung (parallel / sequentiell) wichtig Medium: Excel Arbeitsmappen weitverbreitet und bekannt flexibel transportabel universell
Komplexität Modellbasierte Testautomatisierung von Back-End-Systemen 15 Klassifikation von RapidRep-Regelwerken gering hoch ETL Schnittstellen Migrationen Abgeltungsteuer: JStB, EA, ZIV Überprüfung der Datenqualität Testdatenselektionfür Testfälle Embargoprüfung Basel II: erlaubte Sicherheiten Abgeltungsteuer: Musterzuordnung Die Regeln sind sowohl für den Fachbereich als auch die IT verständlich und eindeutig. Basel II: Product Mapping Basel III: Haircuts technisch Art der Modellierung fachlich Alle Anforderungen, die sich auf Werte und Attribute beziehen, können in Regeln ausgedrückt werden!
16 Beispiel für ein fachliches RapidRep-Regelwerk: Basel II Produkt Mapping Basel II erforderte ca. 40 Regelwerke á 100 Regeln. Die Fachabteilung konnte die Regeln selber aufstellen und modifizieren.
17 Beispiel für ein technisches RapidRep-Regelwerk: Jahresendreporting für Abgeltungsteuer Das Jahresendreporting der deutschen Abgeltungsteuer erforderte ca. 180 Regeln. Für das Aufstellen der Regeln benötigte man gute Kenntnisse über den Datenhaushalt. Die Fachabteilung konnte diese Regeln nur zusammen mit der IT erstellen und abnehmen.
18 Agenda Seite Einleitung 3 Modellbasiertes Testen in der Datenverarbeitung 8 Regelwerke 13 Vorgehen bei der Testautomatisierung 18 Zusammenfassung und Diskussion 21
19 Phasen im Testprozess Phase II Aufbau technisches System Abnahme Expertenteam (aus IT- und Fachabteilung) Regelwerke Phase I Modellaufbau und Validierung Umsetzung in der IT Feedback aus Rapid Prototyping Referenzimplementierung produktionsnaher Testdatenbestand IST Phase III automatisierte Verifikation Kommunikation der Ergebnisse mit einem Test- und Defektmanagementsystem SOLL
20 Prozessüberblick Testautomatisierung MBT I 1, I 2,,I N Prüfling.EXE (System under Test) IST O 1, O 2,,O M Aufrufparameter P 1,P 2,P P Tool für regelbasierte Testautomatisierung SOLL Vergleich... O 1, O 2,,O M Testmanagement Fehlermanagement, z.b. HP ALM Abstraktes Modell (validiert) RapidRep Regelwerk(e)
21 Agenda Seite Einleitung 3 Modellbasiertes Testen in der Datenverarbeitung 8 Regelwerke 13 Vorgehen bei der Testautomatisierung 18 Zusammenfassung und Diskussion 21
Modellbasiertes Testen Modellbasierte Testautomatisierung von Back-End-Systemen 22 Vorteile Die Prozesse und Ergebnisse sind 100% transparent und nachvollziehbar. IT- und Fachabteilungen können über RapidRep-Regelwerke effizient, kompakt und eineindeutig kommunizieren. Modelle ermöglichen Rapid Prototyping und somit eine frühzeitige Qualitätssicherung der Anforderungen. Der hohe Grad an Automatisierung erhöht die Testmenge, die -frequenz und die Testzyklen werden insgesamt kürzer. Herausforderungen Teamplay über Abteilungsgrenzen hinweg Frühzeitige Akzekptanz durch schnelle, fehlerfreie Ergebnisse schaffen MBT erhöht die Testqualität und senkt gleichzeitig die Kosten!
23 Literatur [1] FINARIS Financial Software Partner GmbH: Die RapidRep Test Suite, Frankfurt am Main 2012. [2] Muthukrishnan, Govind: The advantages of model-based testing for financial services firms, in: Testing Experience No. 17 (March 2012), S. 88 89. [3] Neto, Arilo Dias et al.: Improving Evidence about Software Technologies: A Look at Model-Based Testing, in: IEEE Software 25 (2008) 3, pp. 10 13. [4] Schieferdecker, Ina: Model-Based Testing, in: IEEE Software 29 (2012) 1, pp. 14 18. [5] Roßner, Thomas et al.: Basiswissen Modellbasierter Test, dpunkt.verlag, Heidelberg, 2010. [6] Broy, M.: Software Quality: From Requirements to Architecture, Wien 2013.