Agile BI in der Praxis Agiles Testen Andreas Ballenthin, Solution Architect OPITZ CONSULTING Deutschland GmbH Agile World 2014 München, 01.07.2014 Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 1 Agenda 1. 2. 3. 4. 5. 6. 7. 8. Vorstellung OPITZ CONSULTING Agile BI und BI-Referenzarchitektur Test & Entwicklung Testvorbereitung Deployment Automatisierte Backendtests Automatisierte Frontendtests Testauswertung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 2 1 Vorstellung OPITZ CONSULTING Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 3 Mission Märkte Wir entwickeln gemeinsam mit allen Branchen Lösungen, die dazu führen, dass sich diese Organisationen besser entwickeln als ihr Wettbewerb. Branchenübergreifend Über 600 Kunden Unsere Dienstleistung erfolgt partnerschaftlich und ist auf eine langjährige Zusammenarbeit angelegt. 29% Handel / Logistik / Dienstleistungen 29% Industrie / Versorger / Telekommunikation 42% Öffentliche Auftraggeber / Banken und Versicherungen / Vereine und Verbände Leistungsangebot Eckdaten Business IT Alignment Business Information Management Business Process Management Anwendungsentwicklung SOA und System-Integration IT-Infrastruktur-Management Gründung 1990 400 Mitarbeiter 8 Standorte Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 4 2 Agile BI und Referenzarchitektur Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 5 Das heutige Thema AGILE BI Agile BI in der Praxis – Agiles Testen AGILE BI © OPITZ CONSULTING GmbH 2014 Seite 6 Agile BI ist nicht Standard TDWI 2011 Thema ist völlig neu wird kontrovers diskutiert Projektbeginn Februar 2012 DOAG Konferenz 2012 – Agile BI in der Praxis Erfahrungsbericht aus Projekterfolgen Skepsis 2 Vorträge und 1 Unconference-Slot zu Agile BI DOAG Konferenz 2013 – Agile BI in der Praxis – Agiles Testen Erfahrungsbericht aus Projekterfolgen Wenige Kunden folgen den Ansätzen, diese arbeiten jedoch erfolgreich Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 7 BI-Referenzarchitektur Gansor, T. / Totok, A. / Stock, S.: Von der Strategie zum Business Intelligence Competency Center (BICC), Konzeption – Betrieb – Praxis. München 2010 Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 8 Die Architektur muss Agilität zulassen Komplexe Architekturen Komplexe multidimensionale Modelle (fachlich, technisch) Kennzahlen basieren auf großer Menge an Quelldaten nicht einfach, schon frühzeitig Ergebnisse zu erhalten Große Auswirkungen bei Anpassungen z.B. Einbau einer fehlenden Dimension ist schnell mit hohem Aufwand verbunden Komplexe und vielfältige Werkzeuge, Herstellersuiten Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 9 3 Test & Entwicklung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 10 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 11 Testen fängt mit der Architektur an Dimensionen Fakten Preparation Area Calculation Area Core (3NF) Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 12 Testgetriebene Entwicklung - TDD Testfall entwickeln / erweitern erfolgreich Ausführung des Testfalls schlägt fehl Implementierung des Codes Fehler so früh wie möglich erkennen Testfall und Code werden von verschiedenen Teammitgliedern entwickelt Auch: Fachliche Schärfung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 13 Typischer Backend-Testfall SQL*Plus und einfache Shellscripts Testfallregistrierung Was soll getestet werden? Testfall = recht einfaches PL/SQL Testprotokolltabelle zum Persistieren von Ergebnissen Ergebnis Aussagekräftige Fehlerbeschreibung 01010_DDL 01020_DDL 01030_DDL 01060_DDL 01010_DDL S E S S R 11.03.2013 07:47:46 11.03.2013 07:47:55 11.03.2013 07:48:02 11.03.2013 07:48:09 11.03.2013 07:48:09 Agile BI in der Praxis – Agiles Testen 0 fehlende Kommentare 1 fehlende Kommentare 0 Fehler gefunden 0 nicht aktuelle Matviews © OPITZ CONSULTING GmbH 2014 Seite 14 Typischer Backend-Testfall @dblogin_informatica_&1..sql declare v_testfall varchar2(10) := '01050_DM'; v_result varchar2(1) := 'E'; v_notes varchar2(255) := NULL; begin result_testfall (v_testfall,'R',v_notes); select case when count(*)=0 then 'S' else 'E' end, count(*)||' Unterschiede' into v_result, v_notes from (<testfallspezifisches SQL>); cdwhtest.result_testfall (v_testfall,v_result,v_notes); exception when others then result_testfall (v_testfall,v_result,'Exception'); end; Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 15 Testfälle hängen am Taskboard! • . Einen Testfall übernehmen wird sicht- und erlebbar! Definition neuer und zu ändernder Testfälle im Planning II Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 16 Testfallkategorien Berichte Datenabgleiche End-to-End Semantischer Layer Dimensionen Fakten Preparation Area Calculation Area Datenabgleiche innerhalb einer Schicht Datenabgleiche zwischen 2 Schichten Core (3NF) Staging Area Datenquellen Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 17 Werkzeuge und Stilmittel – Testfallkategorien Datenabgleiche innerhalb einer Schicht Kontextprüfberichte Datenabgleiche zwischen den Schichten Kennzahlentests Datenabgleiche End-to-End Performancetests Synchronisation von ETL und Test Anwenderberichte Prüfungen auf das Data Dictionary Test BO-Universum Inhalte von Fehlertabellen Auswertung Repositories Bereitstellen synthetischer Daten Prüfung von Datenmigrationen Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 18 4 Testvorbereitung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 19 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 20 Was testen wir heute? Welche Verarbeitungen? Es können nicht alle Verarbeitungen täglich laufen Wann? In welchen Umfang? Test NetzNetzabgleich abgleich Deployment 19:00 01:00 20:00 23:30 Call Data Records 03:00 02:00 Test Call Data Records Agile BI in der Praxis – Agiles Testen 03:15 06:30 Vertragsmanagement 08:00 Test Vertragsmanagement © OPITZ CONSULTING GmbH 2014 Seite 21 Wer testet denn heute? Es gibt Spezialisten und rechte Hände Die Testverantwortlichen werden im Planning II bestimmt. Testvorbereitungen A K J M C B T D Konfiguration Cron-Jobs Parameteränderungen Auswahl zu verarbeitender Files, Anonymisierung dieser Files Testnachbereitungen Testprotokolle sichten Arbeit vorbereiten und verteilen Testverantwortlichen übernehmen nicht die Gesamtverantwortung! Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 22 5 Deployment Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 23 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 24 Anforderungen an automatisierte Deployments Obligatorisch Deploymentergebnis muss richtig sein Vollständigkeit, Korrektheit, Nachvollziehbarkeit vollständig automatisiert keinerlei manuelle Eingriffe = innerhalb eines Testplans Fehlerausschließende Bestückung des Deployments Letztes erfolgreich getestetes Paket muss auslieferbar sein Optional Deltadeployment Ausschluss von Objekten Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 25 Automatisches Deployment – DB-Inhalte Neuentwicklungen und Modifikationen müssen auf dem Testsystem verfügbar sein Tabellen Views, Packages Parametern zur Steuerung der ETL-Prozesse setzen Berechtigungen OC Schemaverwaltung + Oracle Bordmittel Basierend auf Ant und PL/SQL Stellt Sollzustand aus Istzustand des Zielsystems her DDL DML DCL Kann Datenmigrationen durchführen Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 26 Automatisiertes Deployment – DDL, DCL, Datenmigrationen Schemaverwaltung Objektskripte Schemaverwaltungssteuertabellen Entwicklung Test Abnahme Produktion DB-Schema (DWH_SA…) DB-Schema (DWH_SA…) DB-Schema (DWH_SA…) DB-Schema (DWH_SA…) Schemaverwaltungspackage Schemaverwaltungspackage Schemaverwaltungspackage Schemaverwaltungspackage deltarelevante Objektskripte Mindestens täglich Schemaverwaltung (Ant-Scripte, Subversion) Agile BI in der Praxis – Agiles Testen Mindestens pro Mindestens pro Release Release © OPITZ CONSULTING GmbH 2014 Seite 27 Automatisiertes Deployment – Informatica Entwicklung Informatica Client Informatica Repository Test Abnahme Produktion Informatica Repository Informatica Repository Informatica Repository pmprep ObjectImport pmprep ObjectImport pmprep ObjectImport Objektliste pmrep ExecuteQuery pmrep ObjectExport Subversion Mindestens täglich Agile BI in der Praxis – Agiles Testen Mindestens pro Mindestens pro Release Release © OPITZ CONSULTING GmbH 2014 Seite 28 Automatisiertes Deployment – Business Objects Entwicklung Business Objects Client Business Objects Repository Test Abnahme Produktion Business Objects Repository Business Objects Repository Business Objects Repository lcm.jar action=import lcm.jar action=import lcm.jar action=import Objektliste per Objektbeschreibung .properties lcm.jar action=export Mindestens täglich sFTP-Server Agile BI in der Praxis – Agiles Testen Mindestens pro Mindestens pro Release Release © OPITZ CONSULTING GmbH 2014 Seite 29 6 Automatisierte Backendtests Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 30 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 31 Werkzeuge und Stilmittel – Test-Suite Entwicklung Test ETL-Repository ETL-Entwickler-Clients Testserver ETL-Verarbeitung Deployment (DDL,ETL) ETL-Repository Testplan Testfall 1 Testfall N DWH-DB Testfallverarbeitung DWH-DB SVN DB-Entwickler-Clients Testfallentwicklung (TDD) Agile BI in der Praxis – Agiles Testen Protokollversand Protokollierung Baselinedumps DWH-DB-Host © OPITZ CONSULTING GmbH 2014 Seite 32 Werkzeuge und Stilmittel – Baselinedumps Sprintwechsel Baselinedumps exportieren Produktivstellung Installation Abnahmeumgebung Iterative Entwicklung Tag 1 Produktivstellungssimulation Nächtliche Testläufe Baselinedumps importieren Iterative Entwicklung Tag N Nächtliche Testläufe Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 33 7 Automatisierte Frontendtests Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 34 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 35 Werkzeuge und Stilmittel – BO-Test-Suite Linux Windows Testserver DB-Server Kundennetz Backendtestplan BO-Server Betreibernetz Filesemaphor WinSCP BO BOSystemereignis BO-“Testplan“ Protokollversand BO-Auditing Ausführung BOReports Exportfiles DB-Directory Exportfiles (xlsx) Testprotokollierung WinSCP Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 36 7 Testauswertung Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 37 Der tägliche Testzyklus TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 38 Testauswertung Alle Testprotokolle sollen 08:30 Uhr vorliegen Beide Testverantwortliche Prüfen Verarbeitungen Sondieren die Testprotokolle und bringen die Ergebnisse ins Daily ein Starten ggf. Testpläne oder Testfälle neu Übernehmen nicht die Gesamtverantwortung! 01010_DDL 01020_DDL 01030_DDL 01060_DDL 01010_DDL S E S S R 11.03.2013 07:47:46 11.03.2013 07:47:55 11.03.2013 07:48:02 11.03.2013 07:48:09 11.03.2013 07:48:09 Agile BI in der Praxis – Agiles Testen 0 fehlende Kommentare 1 fehlende Kommentare 0 Fehler gefunden 0 nicht aktuelle Matviews © OPITZ CONSULTING GmbH 2014 Seite 39 Der tägliche Testzyklus - Zusammenfassung TDD Testauswertung Testvorbereitung Frontendtests Deployment Verarbeitung 1..N Test Verarbeitung 1..N Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 40 Kontakt Andreas Ballenthin OPITZ CONSULTING Deutschland GmbH [email protected] +49 2261 6001 0 youtube.com/opitzconsulting @OC_WIRE slideshare.net/opitzconsulting xing.com/net/opitzconsulting Agile BI in der Praxis – Agiles Testen © OPITZ CONSULTING GmbH 2014 Seite 41