Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

20
SUBIEKTYWNA RETROSPEKCJA PROJEKTU BARTŁOMIEJ NIKIEL Testowanie EDW czyli Projekt Piekło

description

Prezentacja Bartłomieja Nikiela wygłoszona na V KraQA, 22.09.2014

Transcript of Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Page 1: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

SUBIEKTYWNA RETROSPEKCJA

PROJEKTU

BARTŁOMIEJ NIKIEL

Testowanie EDW czyli Projekt Piekło

Page 2: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Big Data a EDW

Big data – termin stosowany do opisu zestawu danych których rozmar jest poza możliwościami powszechnie stosowanych narzędzi do przechwytywania, zarządzania i przetwarzania danych w określonym czasie

Hurtownia baz danych - jest jedną wielką kolekcją ‘minihurtowni danych’ reprezentujacych historyczne dane z różnych działań firmy.

Kluczową rolą jest szybkość działania, niezawodność i możliwość połączenia danych w dowolny sposób aby mieć jak najszersze możliwości analizy danych w hurtowni w historycznym okresie pracy firmy

Page 3: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Czym jest EDW

Enterprise Data Warehouse – hurtownia baz danych

Zbiór zintegrowanych, nieulotnych i ukierunkowanych danych pod konkretny model biznesowy (np. ubezpieczeniowy)

„Kopia” danych operacyjnych

A wszystko opiera się na ETL’u...

Page 4: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

ETL?

Extract – Transform – Load

Page 5: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

ETL?

„Wyciągnięcie” danych z wcześniejszego systemu (jego bazy danych)

Transformacja w/w danych w celu dopasowania dla potrzeb operacyjnych a później raportowych

„Wrzucenie” danych do kolejnej w schemacie bazy danych

Page 6: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Schemat tworzenia EDW

Page 7: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Testowanie hurtowni baz danych

Wyidealizowany model V

Page 8: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Tak to wygląda w teorii……Ale….

"Teoria jest wtedy kiedy wszystko wiemy, ale nic nie działa.Praktyka jest wtedy, kiedy wszystko działa, ale nikt nie wie dlaczego.Tutaj łączymy teorię z praktyką - tu nic nie działa i nikt nie wie dlaczego… "

Page 9: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Dlaczego Projekt Piekło?

Wróćmy jeszcze raz do modelu

Functional Design

Business Requirements

Detailed Design

Build

Unit Testing

Intregration Testing

System Testing

Business RequirementsSystem Requirements

Deployment PlanPerformance Requirement

Interface Design

Software ComponentsDesign

Testing againstDetailed Design

Integration acrossall designs

Testing BusinessRequirements

User AcceptanceTesting

Page 10: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Testy jednostkowe x3 ( x8 )

W teorii przez programistów….ale:

Zrobienie „manualnie” kopii bazy wejściowej + edycja ETL’a w celu sprawdzenia poprawności jego działania na poszczególnych komponentach ( per numer / kwota)…

Sprawdzenie poprawności transformacji danych po ETL’u

~ 3 miesiące

Page 11: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Testy integracyjne….. x…?

Aplikacja wejsciowa (zbierająca dane) – Staging – ODS – DDS – Aplikacja raportująca

- testy przejscia

Podejście Top – Down (numery, kwoty, firmy, zgloszenia, daty.... )

Page 12: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Testy Regresyjne ...x .... ?

Po każdym releasie testy regresyjne których nie można było zautomatyzować – za duże zmiany po każdym releasie

Czas trwania: 1-2 tyg po każdym releasie

Page 13: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Testy systemowe

PrzekształceniaSprawdzenie rozbicia danychWeryfikacja wszystkich istniejących

(mających istnieć ) tabel i ich relacji z innymi tabelami

End to End – wprowadzenie danych do Aplikacji – sprawdzenie wyników w DDS’ie

~2 miesiące

Page 14: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

UAT

Wszystko działa pięknie! ………….Ale………….

Page 15: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

SCD

Slowly Changing Dimension – Clue EDW

Type 0 – brak zmian podczas ETL’a

Type 1 – nadpisanie danych bez przetrzymywania historii zmian

Type 2 – stworzenie nowego rekordu z flagą ‘aktualny’ oraz wpisanie starego rekordu do historii zmian (łącznie z datą zmiany i wcześniejszą wartością)

~1.5 miesiąca

Page 16: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Raporty z Qlikview

Page 17: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Kolejny zestaw testów

FunkcjonalneEnd – to – EndWydajnościoweRegresyjne...

+/- 1 miesiąc

Page 18: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Dlaczego Projekt Piekło?

Zmienność specyfikacji Wymagania klienta pod względem testowaniaZagrożenia – znajomość rynkuSCDOczekiwania na releasyTest plan ?Estymacja czasu testowania vs ramy czasowe

od klienta+/- 6 miesięcy

Page 19: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel

Jak rozwiązać w/w problemy?

Rady?Sugestie?

Page 20: Testowanie EDW czyli projekt piekło - Bartłomiej Nikiel