BR_26_Flecken_Opitz_Agile BI in der Praxis

Werbung
Agile BI in der Praxis
Agiles Testen
Thomas Flecken
Consultant
OPITZ CONSULTING Deutschland GmbH
Oracle DWH Konferenz
Kassel, 20.03.2013
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 1
Agenda
1.
Vorstellung OPITZ CONSULTING
1.1 Die Denkfabrik im Grünen
2.
Voraussetzungen für automatisiertes Testen
3.
Automatisches Deployment
4.
Werkzeuge und Stilmittel
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 2
1
Vorstellung OPITZ CONSULTING
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 3
Vorstellung OPITZ CONSULTING
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%
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
 9 Standorte
Agile BI in der Praxis – Agiles Testen
29%
Handel / Logistik /
Dienstleistungen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 4
1.1 Die Denkfabrik im Grünen
Mit ganzheitlichen Lösungen und in verantwortungsvoller Zusammenarbeit
zur nachhaltigen Wertschöpfung Ihrer IT-Projekte
www.denkfabrik-im-gruenen.de
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 5
2
Voraussetzungen für
automatisiertes Testen
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 6
Anzahl Funktionalitäten
Automatisierte Tests sind Pflicht!
50
45
40
35
30
25
20
15
10
5
0
Alte Funktionalitäten
(Regressionstests)
Neue Funktionalitäten
S1 S2 S3 S4 S5 S6 S7 S8 S9 S10
Sprint
Aufwand für Regressionstests steigt stetig
Testabdeckung darf nicht Zufall überlassen bleiben
Testautomatisierung ist Pflicht!
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 7
Voraussetzungen für automatisiertes Testen
 Systemlandschaft
 Zentraler Testserver
 DB-Instanzen
 ETL-Tool
 Team





Generalisten
Keine dedizierten Entwickler und Tester
Rollen wechseln pro Task bzw. Sprint
Einsatz von Pair-Programming
Administrative Kontrolle über Systemlandschaft
 DBA-Rolle
 IPC-Administrator
 Nicht: OS-User oracle, root
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 8
TDD – Testgetriebene Entwicklung
Entwicklung /
Erweiterung des
Testfalls
erfolgreich
Ausführung des
Testfalls
schlägt fehl
Implementierung des
Codes
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 9
TDD – Testgetriebene Entwicklung
 Erhöhte Testabdeckung
 Dokumentation
 Funktionsumfang des Codes
 Mögliche Fehlersituationen
 Grey-Box-Tests
 Kombination von Black-Box- und White-Box-Tests
 Software enthält ausschließlich getesteten Code
 Exploratives Testen rundet das Vorgehen ab
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 10
3
Automatisches Deployment
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 11
Automatisches Deployment – Allgemein
 Separate Deployments der Komponenten
 DB
 ETL
 Zeitpunkte für Deployments
 Als Bestandteil der täglichen Testläufe
 Untertägige Deployments aufgrund iterativer Entwicklung und Test
 Wiederholbarkeit von Deployments
 ETL-Prozesse und Datenbankstrukturen passen zusammen
 Entwickler checken nur auslieferbare bzw. testreife
Komponenten ein
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 12
Automatisches Deployment – DB-Inhalte
 Neuentwicklungen und Modifikationen müssen auf dem
Testsystem verfügbar sein:
 Tabellenstrukturen und Views
 Packages und Prozeduren
 Setzen von Parametern zur Steuerung der ETL-Prozesse
 OC Schemaverwaltung + Oracle Bordmittel
 Basierend auf Ant und PL/SQL
 Stellt den Sollzustand des Zielsystems her
 DDL
 DML
 DCL
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 13
Automatisiertes Deployment – DDL, DCL,
Datenmigrationen
OC 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
Mindestens
täglich
Pro Release
Pro Release
deltarelevante
Objektskripte
Schemaverwaltung
(Ant-Scripte,
Subversion)
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 14
Automatisches Deployment – ETL-Prozesse
 Neue Programmteile im Entwicklungsrepository
 Sources, Targets
 Mapplets, Mappings
 Worklets, Workflows
 Repository-Query bestimmt Inhalt des Deploymentpaketes
 Deployment-Workflows
 Auf Entwicklungs- und Testumgebung
 Erleichtern das Monitoring
 Nutzung von Informatica-Kommandozeilentools
 Reduziert den Aufwand und die Fehleranfälligkeit
 Signifikant höhere Performance beim Deployment
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 15
Automatisiertes Deployment – Informatica
Entwicklung
Informatica
Client
Informatica
Repository
Test
Abnahme
Produktion
Informatica
Repository
Informatica
Repository
Informatica
Repository
pmprep
ObjectImport
pmprep
ObjectImport
pmprep
ObjectImport
Mindestens
täglich
Pro Release
Pro Release
Objektliste
pmrep ExecuteQuery
pmrep
ObjectExport
Subversion
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 16
4
Werkzeuge und Stilmittel
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 17
Werkzeuge und Stilmittel – Test-Suite
Entwicklung
Test
ETL-Repository
ETL-Entwickler-Clients
ETL-Verarbeitung
Testserver
Deployment (DDL,ETL)
ETL-Repository
Testplan
Testfall 1
Testfall N
DWH-DB
Testfallverarbeitung
DWH-DB
Subversion
DB-Entwickler-Clients
Testfallentwicklung (TDD)
Agile BI in der Praxis – Agiles Testen
Protokollierung
Protokollversand
DWH-DB-Host
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 18
Werkzeuge und Stilmittel – Baselinedumps
Baselinedumps
exportieren
Nach Produktivsetzung eines
neuen Softwareoder Datenstandes
Iterative Entwicklung
TDD
Baselinedumps
importieren
Agile BI in der Praxis – Agiles Testen
Nächtliche Testläufe
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 19
Werkzeuge und Stilmittel – Testfallkategorien
Datenabgleiche innerhalb einer Schicht
Datenabgleiche zwischen den Schichten
Datenabgleiche End-to-End
Einhaltung von Konventionen
Prüfungen auf das Data Dictionary
Inhalte von Fehlertabellen
Bereitstellen synthetischer Daten
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 20
Werkzeuge und Stilmittel – Testfallkomponenten
Registrierung
sqlplus /nolog @register_testfall 01010_DDL $1
Aufruf
sqlplus /nolog @01010_DDL.sql $1
Source Code
select case when count(*)=0 then 'S' else 'E' end,count(*)||' fehlende Kommentare'
into v_result,v_notes
from ( select 1
from all_col_comments c
inner join all_tables t
on c.owner=t.owner
and c.table_name=t.table_name
where t.owner like 'DWH%’);
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 21
Werkzeuge und Stilmittel – Testergebnisse
 Testprotokolltabelle zum Persistieren von Ergebnissen
 S für Success: Testfall konnte keinen Fehler feststellen
 E für Error: Testfall hat Abweichungen festgestellt
 R für Registered: Testfall wurde nicht ausgeführt oder lief
syntaktisch falsch
01010_DDL
01020_DDL
01030_DDL
01060_DDL
S
E
S
S
11.03.2013 07:47:46
11.03.2013 07:47:55
11.03.2013 07:48:02
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 Deutschland GmbH 2013
Seite 22
Anreichern mit synthetischen Testdaten
Quellsysteme
Synthetische Testdaten
Staging
Core
Datamart
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 23
Löschen synthetischer Testdaten
 Dediziert per SQL
 Exakte Abgrenzung muss möglich sein
 Berechnete Aggregate nicht rücksetzbar
 Importieren des Baselinedumps
 Versetzt die DB in einen genau definierten Zustand
 Bisher geladenen Deltas gehen verloren
 Nutzen der Flashback-Table-Funktion
 flashback table to scn
 flashback table to timestamp
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 24
Werkzeuge und Stilmittel – Testpläne
 Aufteilung in logische Gruppen
 DB- und ETL-Deployment
 Protokollierung
 Quellsysteme
 Testgruppen beliebig zu- bzw. abschaltbar
 Erleichtert das Zusammenstellen des Testplanes
 Festlegung durch Testoperator
 Rolle wechselt pro Sprint
 Verantwortlich für Fokus und Umfang
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 25
Fazit
 Voraussetzungen
müssen geschaffen werden
 Systeme
 Teamaufstellung
 TDD
 Investition rentiert sich
 Erhöhte Softwarequalität in der Praxis
 Frühes Erkennen von Fehlern (Entwicklung und Regression)
 Aufzeigen und Dokumentieren von Datenqualitätsproblemen
 Hohe Testabdeckung
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 26
Kontakt
Thomas Flecken
OPITZ CONSULTING Deutschland GmbH
[email protected]
+49 2261 6001 0
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 27
Agile BI in der Praxis – Agiles Testen
© OPITZ CONSULTING Deutschland GmbH 2013
Seite 28
Herunterladen