Post on 18-Dec-2014
description
Testen van Datawarehouses en Informa2e Kan het 2x zo snel, 2x zo goedkoop en 2x zo volledig?
Jeroen Blankendaal
Tim Koomen Priscilla Rogh
Norbert Mahieu
Hand Washing Informatie je key asset
Business of ICT probleem ?
De cijfers kloppen niet!
Ja, dat lag aan het
bronsysteem!
Wie controleert de datawarehouse / ETL specialist?
Data kwaliteit is een echt probleem
• 63% heeM geen idee wat data kwaliteit ze kost • 33% verloren een klant of een opportunity als gevolg van het ontbreken
van data • 30% verloren business door verkeerd behandelen van data • 30% van de bedrijfsopbrengsten gaat verloren door proces falen en mis
informa2e • 17% heeM geen plannen om een data kwaliteit ini2a2ef te starten • 4% waarderen hun data kwaliteit als zeer goed
88% Van de bedrijven ziet data als een strategisch bezit
Bron: Vanson Bourne; Larry English; The State of Data Quality Today
MAAR
Testen van Datawarehouses
De vragen die we vanavond willen beantwoorden: • Waarom DWH testen? • Wat is de visie van Kadenza op DWH testen? • Hoe kunnen we geautoma2seerd DWH testen? • Hoe denken jullie over DWH testen?
Waarom DWH testen?
8
Testen van datawarehousing
Tim Koomen Kadenza 2012
Testing datawarehousing Seite 9
Start
Datawarehouses: business as usual?
TMapNext en datawarehouses
Einde
Testing datawarehousing
Datawarehousing
} … ondersteunt het besluitvormingsproces
Business
Intelligence
Data-ware- house
Brongegevens
Extractie, Transformatie, Load
Distributie
Queries, Online Analytical Processing and Data Mining
Datamarts
Meta- data
10
Testing datawarehousing
Doel van testen?
} Informeren over kwaliteit en risico’s } Zo snel mogelijk vinden van de belangrijkste
fouten tegen de laagste kosten! } Anderen in staat stellen de productkwaliteit te
verbeteren } Voorkomen van fouten
11
Testing datawarehousing
Vraag…
Welke specifieke (product)
risico’s zouden er zijn …?
12
Testing datawarehousing
Misschien zijn er geen risico’s, want... } De verkoper zegt dat zijn DWH/BI-oplossing perfect geschikt is
voor onze organisatie ... } De leverancier van het pakket heeft alle fouten er al uitgehaald ... } Het agile team zorgt overal voor ... } Er komt vrijwel geen maatwerk aan te pas ... } De vertegenwoordiger van de eindgebruikers weet precies wat ze
willen hebben ... } De oplossing zal zonder probleem werken op onze infrastructuur ... } De oplossing is erg gebruikersvriendelijk, training is niet nodig ... } Problemen kunnen we razendsnel herstellen door wat parameters
te wijzigen ... } Eenmaal in productie kunnen we snel nieuwe releases leveren...
13
Testing datawarehousing
Of toch wel …?
} Vervuiling en verkeerde interpretatie brongegevens?
} Transformatie en aggregatie grote hoeveelheden gegevens?
} Correcte uitkomsten? } Performance (batches, rapportages)? } Onbevoegde toegang tot informatie? } Actualisering brongegevens? } Bruikbaar resultaat?
Echter:
No risk, no test!!
14
Testing datawarehousing
Of toch wel!
15
Testing datawarehousing
Risico beheersing
} Datawarehouse/BI, zowel in implementatie als beheer, verschilt van (maatwerk)software
} Mythe: “Datawarehouse/BI is een laag-risico oplossing”
} Onderschatting van veel (andere) risico’s
16
Risico maatregel: Testen
Testing datawarehousing Seite 17
Start
Einde
Datawarehouses: business as usual?
TMapNext en datawarehouses
Testing datawarehousing
TMap® Next
18
Testing datawarehousing
BDTM Stappen
19
Testing datawarehousing
PRA: van business naar IT
Business IT
testdoelen
kenmerken / testdoel
deelobjecten / kenmerk
risico-‐indica2e per deelobject/kenmerk
te testen systeem
business processen, user requirements, kri2sche succesfactoren, wijzigingsvoorstellen of (af te dekken) risico’s
func2onaliteit, performance, bruikbaarheid, beveiliging
deelsystemen (funct.), online, batch (perf.) gebruikersschermen (bruikb.), applica2e, infra (beveil.)
20
Faalkans
Hoog Midden Laag
Schade Hoog A B B
Midden B B C
Laag C C C
Testing datawarehousing
PRA: betrokkenen
Risico
Frequentie van gebruik
Foutkans
Schade
*
*• (Eind)gebruikers • Product owner • Functioneel en
operationeel beheer • Project manager • (Opdrachtgever)
Faalkans
21
Voorbeelden: • Business/inform.analisten • Architecten • BI-consultants • Ontwikkelaars/testers • DBA • QA • Test manager • Projectmanager
Testing datawarehousing
Verschillen
Enkele mogelijke verschillen DWH/BI met een conventioneel systeem } Omvang database (historische data) } Aantal externe gegevensbronnen } Gebruik1: beslissingsondersteunend, analyse } Gebruik2: periodieke gegevensinvoer, veel
lees-acties } Agile ontwikkeling is vanzelfsprekend door
hoge noodzaak gebruikersinbreng
22
Testing datawarehousing
Betrouwbaarheid van brongegevens
} Lege velden } Speciale velden (99-99-9999) } Duplicaten (Janssen en Jansen) } Meerdere waardes in veld (“Dhr. J. Jansen”) } Onbekende codes } Meerdere codes met zelfde betekenis (M/V en 1/2) } Inconsistente aggregatie (verkoop/week of /maand)
Business Intelligence
Data ware house
Brongegevens
Extractie, Transformatie, Load
Distributie
Queries, Online Analytical Processing and Data Mining
Datamarts
Meta data
23
Testing datawarehousing
ETL proces
} Synchronisatie } Groot aantal conversies } Met aggregatie moeilijk om correctheid te
controleren } Updaten van DWH-data } Regressie is een zorg! (agile ontwikkeling +
veranderingen in bronsystemen)
Business Intelligence
Data ware house
Brongegevens
Extractie, Transformatie, Load
Distributie
Queries, Online Analytical Processing and Data Mining
Datamarts
Meta data
24
Testing datawarehousing
Rapportage proces
} Autorisaties } Performance } Bruikbaarheid
Business Intelligence
Data ware house
Brongegevens
Extractie, Transformatie, Load
Distributie
Queries, Online Analytical Processing and Data Mining
Datamarts
Meta data
25
Testing datawarehousing
Kwaliteitsattributen
Meer (+) of minder (-) risico? + Bruikbaarheid (= rapportages geschikt voor
business) + Functionaliteit (maatwerk) + Beveiliging + Beheerbaarheid + Performance ? Gebruikersvriendelijkheid - Functionaliteit (pakket)
26
Testing datawarehousing
Eindresultaat PRA
Kenmerk/ deelobject
PRA-Risico klasse
Argumentatie
Functionaliteit
- Datakwaliteit Medium …
- ETL Hoog …
- Rapportages 1-6 Hoog …
- Rapportages 6-20 Laag …
Bruikbaarheid
- Rapportages 1-6 Medium …
- Rapportages 6-20 Medium …
Performance
- ETL Medium …
- Rapportages Hoog …
Security Laag
Beheerbaarheid Laag
27
Testing datawarehousing
Testsoorten …
28
Realisa2e
Technisch ontwerp
Func2oneel ontwerp
Require-‐ ments
BehoeMes, verwach2ngen Produc2e
Accepta2e-‐ tests
Systeemtest
Unit-‐ tests
Testing datawarehousing
Teststrategie Master Test Plan Kenmerk/ deelobject PRA-RK Unit
Test (scrum)
Systeem Test (scrum)
GAT Toelichting
Functionaliteit
- Datakwaliteit Medium � �� � Queries op prod.geg’s
- ETL Hoog ��� � � Incl. aut. regressietest
- Rapportages 1-6 Hoog �� �� �� …
- Rapportages 6-20 Laag � �
Bruikbaarheid
- Rapportages 1-6 Medium ��� …
- Rapportages 6-20 Medium � …
Performance
- ETL Medium � …
- Rapportages Hoog �� …
Security Laag �� � …
Beheerbaarheid Laag � …
PRA 29
Test strategie
Testing datawarehousing
Testvormen
} Datakwaliteit-test } ETL-test } Rapportage-tests } Load & stresstest } Gebruikersacceptatietest } Regressietest
30
Testing datawarehousing
TMap® Next
31
Testing datawarehousing
TMap Faseringsmodel
Beheer
Planning
Voorbereiding Specificatie Uitvoering Afronding
Inrichting en beheer infrastructuur 32
Testing datawarehousing
TMap® Next
Volgende presentatie!
33
Testing datawarehousing Seite 34
Testen van datawarehouses/BI verschilt van conventionele IT systemen: - Specifieke risico’s, zoals betrouwbaarheid brongegevens en autorisaties Basis is gestructureerd,
professioneel en risico-gebaseerd testen
Flexibele testhouding noodzakelijk
Samenvatting
Dankuwel!
Testing datawarehousing
Vragen ...
35
E. info@timkoomen.nl
M. +31 (0)6 34139260
I. www.timkoomen.nl
Copyright Tim Koomen Testmanagement en -advies
Visie op DWH testen
Ontwerp Dashboard Rapport
Bron ontslui2ng
Data Integra2e
Data Warehouse
Informa2e model
BI Tool
Visie op DWH testen
Uitgangspunt
Het Test Maturity Model
Ini2al
Managed
Defined
Management & Measurement
Op2miza2on
Vraag 3. Testen DWH: Op welke wijze is/wordt het datawarehouse van de klant getest?
Kadenza enquête – Hoe DWH Testen?
Vraag 5. Betrouwbaarheid van de complete BI-‐ en datawarehouseomgeving van klant: Kun je een uitspraak doen over de betrouwbaarheid van de complete BI-‐en datawarehouseomgeving van de klant?
Kadenza enquête – Betrouwbaarheid DWH omgevingen?
TestLoods©
Testloods©
De TestLoods methode is gebaseerd op de Systeemtest binnen de TMap methode. De TestLoods tool legt testgevallen van bedrijfsprocessen vast, voert de testen uit, legt testresultaten en doorloop2jden vast per testsoort, testonderwerp en tesejds2p.
“Met het gebruik van TestLoods zijn we nu in staat garan8es af te geven over de kwaliteit en auditeerbaarheid van ons Solvency II Data Warehouse” Chris2na Boonzaaijer – Manager Solvency II Aegon
Risico Analyse
Kwaliteitsafribuut o.b.v. ISO25010 • Func2onaliteit (bruikbaarheid, juistheid, relevan2e, volledigheid, transparan2e, auditeerbaarheid, reproduceerbaarheid)
• Betrouwbaarheid (beschikbaarheid, foutbestendigheid, herstelbaarheid, beveiliging)
• Efficiën2e (middelbeslag, performance) • Onderhoudbaarheid (beheerbaarheid, herbruikbaarheid)
Testgevallen
Hoe test je een DWH?
DWH Testproces
Verzamelen metadata
Aanpassen Template Library
Genereren testscripts
Uitvoeren testscripts
Vastleggen testresultaat
2 3 4 5 6
Testbasis -‐ requirements
1
1. Testbasis - Requirements
Wat is de testbasis voor een datawarehouse?
• Requirements: • Verzamelen bij de stakeholders • Business requirements: why? • User requirements: what? • System requirements: How?
• Risico’s: • In kaart brengen • Produkt-‐risico analyse
• Accepta2ecriteria helder: • Verzamelen bij de stakeholders • Datakwaliteit in datawarehouse • Output van datawarehouse (fact & dimension tables) • ….
Risico’s Require-‐ ments
Accepta2e criteria
Master testplan
Detail Testplan
Wat is de testbasis voor een datawarehouse?
Ondergetekende(n) verklaart/verklaren dat hij/zij kennis heeft(hebben) genomen van de inhoud van de onderstaande documenten
en de daarin beschreven functionaliteiten en/of oplossingsrichtingen accepteren
TestLoods©
2. Aanpassen Template Library
Test templates
Test categorieën
Testgevallen
Templates!
Standaard templates
Custom templates
80% 20%
Ontwerp Dashboard Rapport
Bron ontslui2ng
Data Integra2e
Data Warehouse
Informa2e model
BI Tool
3. Verzamelen metadata
Metadata van een datawarehouse
Metadata zijn gegevens die de karakteris2eken van bepaalde gegevens beschrijven. Het zijn dus eigenlijk data over data.
Metadata van een datawarehouse: - Tabelnamen (SRC, STG, DWH, DM) - Attribuutnamen met datatype - Joins tussen tabellen - Business calculaties (IF … THEN …. ELSE ….) - Unieke test-sql-script nummer - Gebruikte template / handmatig - Testscript categorie - Unieke test-sql-script naam
Testscript 0035: unieke waardentest • Gemiddelde temp Celcius • Template: count_afribute_value.sql
Bronnen voor metadata
• Func2oneel ontwerp • Mapping sheets • Use cases en/of • User stories • Database dic2onary • Datamodellen (bijv. PowerDesigner)
Enquête Resultaten
Vraag 1. Metadata DWH: In welke vorm legt de klant haar beschrijvingen voor het datawarehouse vast? Hierbij moet je o.a. denken aan: interface specifica2e, mapping sheets, transforma2eregels, tabelstructuur DWH lagen, business defini2es.
Importeren metadata
4. Genereren testscripts
Combineren metadata en templates
+ =
templates metadata testscripts
5. Uitvoeren testscripts
Uitvoeren testscripts
6. Test resultaten
Test resultaten
Test resultaten: overall dashboard
Test resultaten: administrator dashboard
Release 1.0: - Testrun: 25 Feb 2011 - Betrouwbaarheid 58%
Release 3.1: - Testrun: 27 Nov 2012 - Betrouwbaarheid 94%
Test resultaten: compare testruns
Betrouwbaarheid gestegen met 36,4%
Release 1.0: - Testrun: 25 Feb 2011 - Betrouwbaarheid 58%
Release 3.1: - Testrun: 27 Nov 2012 - Betrouwbaarheid 94%
Test resultaten: dataquality dashboard
Domain value checks
Detec2ng outliers
Referen2ële Integriteit
(missings/ NA)
Func2onele testen
datakwaliteit
Datakwaliteit
Trend in datakwaliteit
DWH Testproces: evalueren testresultaten
Verzamelen metadata
Aanpassen Template Library
Genereren testscripts
Uitvoeren testscripts
Vastleggen testresultaat
2 3 4 5 6
Testbasis -‐ requirements
1
Test resultaten: Top-‐100 verschillen
Evalueren bevindingen
Op weg naar een volgend niveau
Het Test Maturity Model
Ini2al
Managed
Defined
Management & Measurement
Op2miza2on
Afronding
Key features TestLoods
• Transparan8e : testresultaat en “onder zeespiegel” • Gestructureerd testen : fysieke applica2e, 100% ST, templates
• Herhaalbaarheid : project, release, change, sprint • Schaalbaarheid : klein beginnen, …. • Volledigheid : testscriptcategorieën • Auditeerbaarheid : gefundeerde betrouwbaarheid
Voorbeeld uit de prak2jk: datamodel check
KOERS_TAB gedefinieerd als NUMBER(16,10)
Waarde beleggingen = aantal units * currencyrate
CURRENCYRATE gedefinieerd als NUMBER(17,2)
Dus 0.6959 opgeslagen als 0.7 en 0.3888 opgeslagen als 0.39
Best prac2ces
Do’s: • Maak gestructureerd testen onderdeel van release/change proces • Promo2e “Overall Dashboard”: KPI voor klantorganisa2e en/of stuurgroep • Maak gebruik van naamgeving conven2es en ontwikkelstandaarden • Scheduling na iedere DWH-‐run: maak testen en de ETL-‐run axankelijk van elkaar • Bij geconstateerde verschillen: focus als 1e op blockings & cri2cals • Zorg dat ETL fouten worden bijgewerkt in documenta2e (FO’s en TO’s) • release management synchroon met release datawarehouse (rollback) Dont’s: • Maak niet voor iedere business calcula2e een testscript • Bouw niet alle ETL mappings na
De toekomst van datawarehouse testen!
hfp://www.kadenza.nl/dwhtes2ng
Vragen?
Addendum
Enquête Resultaten
Vraag 1. Metadata DWH: In welke vorm legt de klant haar beschrijvingen voor het datawarehouse vast? Hierbij moet je o.a. denken aan: interface specifica2e, mapping sheets, transforma2eregels, tabelstructuur DWH lagen, business defini2es.
Enquête Resultaten
Vraag 2. Metadata BI: In welke vorm legt de klant haar beschrijvingen voor haar BI-‐omgeving vast? Hierbij moet je o.a. denken aan: seman2sche laag (universe/framework/catalog), transforma2eregels, business defini2es, rapportage-‐wensen/eisen, formaat en lay-‐out van rapportages
Enquête Resultaten
Vraag 3. Testen DWH: Op welke wijze is/wordt het datawarehouse van de klant getest?
Enquête Resultaten
Vraag 4. Testen BI: Op welke wijze is/wordt de BI-‐omgeving van de klant getest?
Enquête Resultaten
Vraag 5. Betrouwbaarheid van de complete BI-‐ en datawarehouseomgeving van klant: Kun je een uitspraak doen over de betrouwbaarheid van de complete BI-‐en datawarehouseomgeving van de klant?
Enquête Resultaten
Vraag 6.: Indien je JA bij vraag 6 hebt geantwoord, kun je argumenten aangeven waarop dit percentage is gebaseerd?