Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
My slides are / will be available for you at:
Introducing Agile Business
Intelligence Sustainably:
Implement the Right Bui...
Welcome & Overview of Workshop Schedule (14:25 – 14:30)
What is Business Intelligence? (14:30 – 15:10)
Introduction to the...
Raphael Branger, Senior BI Solution Architect, IT-Logix AG, Switzerland
Working in Business Intelligence & Data Warehousin...
What is Business Intelligence?
Grab some Post-its
Per note write down one key word or sentence of what you associate with BI & DWH
Does your company use ...
A typical BI asset
What do we need to build and
run this little dashboard app?
9
Per group of three or four, take 2
empty canvas sheets.
Take the pictures and try to stick them
to the appropriate place o...
11
DWH
Integration
Data
Data Mart 1
Data Mart 2
Data Mart 3
Reports
Analysis
Dashboards
BI Strategy
Organisation & Process...
Agile BI Building Blocks
14
IT-LOGIX AGILE BI BUILDING BLOCKS (V2.0 EN)
Agility
Amount of
upfront design needed
Basic
Infrastructure
Basic Patterns...
Take the overview sheet with the
numbered AgileBI Building Blocks.
Take one of the available building block
detail sheets....
BI specific User Stories
Implement Vertical Slices in Order to Prioritize.
Let’s have a look at two approaches regarding how to implement a BI syst...
From Feature To User Story
Feature 1 User Stories
User Stories have a «a
priori» maximum duration –
e.g. 1 or 2 days. Why?...
Testing the User Story
Feature 1 User Stories
BI Application
DWH
Layer
▪ Direct within application
▪ Query in Excel
▪ Quer...
DWH
Gather together in teams of two to four
people.
Take the excercise sheet handed out.
Exercise 3 «BI User Stories»
20
F...
Feature (following the regular User Story schema):
As a TDWI Backoffice employee, I need to see the number of registered p...
Feature (following the regular User Story schema):
As a TDWI Backoffice employee, I need to see the number of registered p...
Feature (following the regular User Story schema):
As a TDWI Backoffice employee, I need to see the number of registered p...
BI specific Testing
Intra-System-Tests
Where do we test? (1/2)
Each system component is tested on its own.
Staging Data
Warehouse
Reports
Sour...
Where do we test (2/2)
An external test tool acts independant from the system and its properties (and eventually errors).
...
Test Approaches
Manually in combination with checklists & forms
Classical test automation solutions to test the
GUI, perfo...
Frist Time vs. Regression
First Time Tests
Regression Tests
Manual Testing
Automated Testing
Information Products
(e.g. reports, dashboards etc.)
Test the structure based on
metadata
Test the data based on
testdata ...
Information Products
(e.g. reports, dashboards etc.)
Test the structure based on
metadata
Test the data based on
testdata ...
Tables in the different layers
(Source, Staging, DWH, Data
Mart, …)
Test the structure based on
metadata (DB schema)
Test ...
Test cases…
… contain one or more test objects (e.g. a report, measure, data set)
… need one or more reference objects
......
Alternative 1: There is a test source system on which any test cases can be simulated.
Alternative 2: Take the production ...
How big is the amount of test data?
Detail
Analysis
Modelling &
ETL Code
BI
Application
Full Data
Testing
1 day – 1 week 1...
Testing is a crucial success factor of every BI / DWH system.
Testing should be a «built-in» part of every BI / DWH archit...
Retrospektive
Write down your lesson’s learned – what do you take with you? (Timebox 3 minutes)
Share lessons learned (Timebox 10 minute...
References und Literature
With friendly support from:
IT-Logix Team (http://www.it-logix.ch)
BiGeval Team (http://www.bige...
Blogs and Webpages around Data Warehouse Automation
TDWI E-Book Data Warehouse Automation: https://cdn2.hubspot.net/hubfs/...
«Traditional projects start with requirements
and end with data.
Data Warehousing projects start with data and
end with re...
Agile Testing Days 2017 Introducing AgileBI Sustainably
Upcoming SlideShare
Loading in …5
×

Agile Testing Days 2017 Introducing AgileBI Sustainably

215 views

Published on

"We now do Agile BI too” is often heard in todays BI community. But can you really "create" agile in Business Intelligence projects? This presentation shows that Agile BI doesn't necessarily start with the introduction of an iterative project approach. An organisation is well advised to establish first the necessary foundations in regards to organisation, business and technology in order to become capable of an iterative, incremental project approach in the BI domain. In this session you learn which building blocks you need to consider. In addition you will see what a meaningful sequence to these building blocks is. Selected aspects like test automation, BI specific design patterns as well as the Disciplined Agile Framework will be explained in more and practical details.

Published in: Data & Analytics
  • Be the first to comment

Agile Testing Days 2017 Introducing AgileBI Sustainably

  1. 1. My slides are / will be available for you at: Introducing Agile Business Intelligence Sustainably: Implement the Right Building Blocks in the Right Order Raphael Branger, IT-Logix AG Presentation: http://bit.ly/2zBpSvz Exercises: http://bit.ly/2hvVVGF
  2. 2. Welcome & Overview of Workshop Schedule (14:25 – 14:30) What is Business Intelligence? (14:30 – 15:10) Introduction to the Agile BI Building Blocks (15:10 – 15:40) Break (15:40 – 16:10) Building Block details (16:10 – 17:10) User Stories BI-specific Testing Retrospective (17:10 – 17:25) Agenda 3
  3. 3. Raphael Branger, Senior BI Solution Architect, IT-Logix AG, Switzerland Working in Business Intelligence & Data Warehousing since 2002 Looking at «Agile» in the context of BI since 2010 Actively contributing to the community… http://rbranger.wordpress.com/ (English) http://blog.it-logix.ch/author/raphael-branger/ (German) Regular conference engagements Follow me on Twitter: @rbranger Member of… TDWI www.tdwi.eu/ & https://tdwi.org Disciplined Agile Consortium http://www.disciplinedagileconsortium.org/ Scrum Breakfast Club http://scrumbreakfast.club/ International Business Communication Standards (IBCS) Association http://www.ibcs-a.org About me 6
  4. 4. What is Business Intelligence?
  5. 5. Grab some Post-its Per note write down one key word or sentence of what you associate with BI & DWH Does your company use BI & DWH? Are you yourself an end user / developer etc. working with the BI & DWH system? Any good or bad experience with BI & DWH systems? … After a few minutes, we will start to collect the notes and hear each ones short explanation. What are your associations with Business Intelligence & Data Warehousing?
  6. 6. A typical BI asset What do we need to build and run this little dashboard app? 9
  7. 7. Per group of three or four, take 2 empty canvas sheets. Take the pictures and try to stick them to the appropriate place on one of the canvas. Take the text blocks and try to stick them to the appropriate place on the second canvas. Timebox: 10 mins Afterwards we’ll take some time to discuss the BI overview together. Exercise 1 «BI Overview»
  8. 8. 11 DWH Integration Data Data Mart 1 Data Mart 2 Data Mart 3 Reports Analysis Dashboards BI Strategy Organisation & Processes Data Technical Metadata Business Metadata Information Market BI Strategy Vision Mission Objectives Partial Strategies BIStrategy Management Development Operations Governance Inception Construction Transition Process Metadata BI Application internal external Source Systems User Internal Users External Users Customers IT Strategy Customers Business Strategy Data Science & AI Data Lake Predictions Ad-hoc Operations
  9. 9. Agile BI Building Blocks
  10. 10. 14 IT-LOGIX AGILE BI BUILDING BLOCKS (V2.0 EN) Agility Amount of upfront design needed Basic Infrastructure Basic Patterns & Standards Agile Mindset & Organisation Agile Infrastructure & Patterns Gulf Chasm «Tweaked» Waterfall «Timeboxed» Iterations «Lean» Development Legend Processes & Organi- sation Develop- ment Methods Techno- logies Values & Principles © by Raphael Branger, IT-Logix AG, www.it-logix.ch Continuous Delivery
  11. 11. Take the overview sheet with the numbered AgileBI Building Blocks. Take one of the available building block detail sheets. Study the page and think about which building block number is yours. Once it is your turn, stick your page near the corresponding block on the wall. We’ll briefly discuss the building block. Exercise 2 «Agile BI Building Blocks» 15
  12. 12. BI specific User Stories
  13. 13. Implement Vertical Slices in Order to Prioritize. Let’s have a look at two approaches regarding how to implement a BI system: Only a vertical slicing of the implementation (aka Features) allows for ongoing (re-) priorization of requirements. Topic 1 Topic 1 Feature 1 Feature 2 Feature 3 10% 40% 70% 100% Cumulative Progress Cumulative Progress 50% 61% 100% Connectivity DWH Data Mart BI App 5% 25% 50% 10% 40% 70%
  14. 14. From Feature To User Story Feature 1 User Stories User Stories have a «a priori» maximum duration – e.g. 1 or 2 days. Why? We force ourselves to a more frequent and shorter feedback cycle. Short user stories are the foundation to answer the question if the project progresses / «flows» as desired or not. RTS = Runnable & Tested Stories are the real progress indicator in a project! BI Application DWH Connectivity & Infrastructure Layer ▪ Report with monthly layout ▪ Report with weekly layout ▪ Report with variable measure selection ▪ … ▪ 1 fact table with a non-monetary measure (e.g. quantity) + time dimension + product dimension (without hierarchy) ▪ Additional measure ▪ Extend product dimension with a hierarchy ▪ … ▪ Setup Middleware ▪ Manual import ▪ Automated import ▪ … BI Application Epics DWH Epics Connectivity & Infrastructure Epics
  15. 15. Testing the User Story Feature 1 User Stories BI Application DWH Layer ▪ Direct within application ▪ Query in Excel ▪ Query in Excel ▪ Query in database tool, e.g.SQL Server Mgt. Studio BI Application Epics DWH Epics Connectivity & Infrastructure EpicsConnectivity & Infrastructure
  16. 16. DWH Gather together in teams of two to four people. Take the excercise sheet handed out. Exercise 3 «BI User Stories» 20 FactEventParticipant RegisterDate EventID ParticipantID NoShow (Y/N) (Count participants) DimEvent EventDate Country City Venue Address Location (Geo) Max. Participants DimDate_Register DateValue DimParticipant Name Member Category Roundtable Registration System (Web Service or CSV export) TDWI Membership System (SQL Server) Define at least three user stories. Remember the User Story should be small enough to be implmented in 1 single day. Timebox 10 minutes. DWH Automation Tool Feature 1
  17. 17. Feature (following the regular User Story schema): As a TDWI Backoffice employee, I need to see the number of registered participants for a Roundtable event so that I can organize the logistics for this event. Connectivity Epic (following the FDD schema) (<action> the <result> <by|for|of|to> <object>) Extract the event and participant data of the web based Roundtable Registration System to a CSV file. Connectivity User Story (following the FDD schema): Manually export the event and participant data for all events to a CSV file. Schedule and Save to FTP server the event and participant data for all events to a CSV file (on the FTP server) Download the event and participant data for all events to a local folder (on the DWH server) Load the event and participant data for all events to a load table (1:1 copy with the DWH Automation tool) in the DWH database. Possible User Stories (Connectivity & Infrastructure) 21
  18. 18. Feature (following the regular User Story schema): As a TDWI Backoffice employee, I need to see the number of registered participants for a Roundtable event so that I can organize the logistics for this event. DWH Epic (following the FDD schema) (<action> the <result> <by|for|of|to> <object>) Model and load the event and participant data of the web based Roundtable Registration System to the DWH and Data Mart. DWH User Story (following the FDD schema): Model and (full) load the event master data (without Location / Geo info, not historized) to DimEvent on the DWH layer. Model and (full) load the participant master data (without Member Category, not historized) to DimParticipant on the DWH layer. Model and (full) load the event registration transaction data to FactEventParticipant on the DWH layer. Refactor the existing load implementation to allow for incremental loads. Create and develop the data mart for FactEventParticipant, DimEvent and DimParticipant with «Number of Participants» as its first measure. Possible User Stories (DWH) 22
  19. 19. Feature (following the regular User Story schema): As a TDWI Backoffice employee, I need to see the number of registered participants for a Roundtable event so that I can organize the logistics for this event. BI Application Epic (following the regular User Story schema) As a TDWI Backoffice employee, I need a BI application to see the number of registered participants for a Roundtable event so that I can organize the catering for this event. BI Application User Story (following the regular User Story schema): As a TDWI Backoffice employee I need to see the number of registered participants for the next Roundtable in a selected location so that I can organize the catering for this event. As a TDWI Backoffice employee I need to see the percentage of «No-Shows» for the past 10 roundtables in a selected location so that I can optimize the catering for upcoming events. As a TDWI Backoffice employee, I need to be alerted if the number of participants for the next Roundtable in any location is at 90% of the maximum capacity so that I can check if a larger room is available. Possible User Stories (BI Application) 23
  20. 20. BI specific Testing
  21. 21. Intra-System-Tests Where do we test? (1/2) Each system component is tested on its own. Staging Data Warehouse Reports Source System ETL Marts Cubes Semantic Layer Testing Testing TestingTesting Testing Testing
  22. 22. Where do we test (2/2) An external test tool acts independant from the system and its properties (and eventually errors). Staging Data Warehouse Reports Source System ETL Marts Cubes Semantic Layer Testing Inter-System-Tests
  23. 23. Test Approaches Manually in combination with checklists & forms Classical test automation solutions to test the GUI, performance etc. How do we test? Functional  specific software “functions” Start client software Login to BI system Edit report Non-Functional  more quality oriented features like Performance Usability (Security)
  24. 24. Frist Time vs. Regression First Time Tests Regression Tests Manual Testing Automated Testing
  25. 25. Information Products (e.g. reports, dashboards etc.) Test the structure based on metadata Test the data based on testdata and the information product Test the layout by comparing a reference layout with the information product Testing per Architecture Layer - Frontend Manual Cell based comparison
  26. 26. Information Products (e.g. reports, dashboards etc.) Test the structure based on metadata Test the data based on testdata and the information product Test the layout by comparing a reference layout with the information product Testing per Architecture Layer - Frontend Manual Automated BI vendor specific Generic (PDF, XLS, XML…) Cell based comparison Optical comparison
  27. 27. Tables in the different layers (Source, Staging, DWH, Data Mart, …) Test the structure based on metadata (DB schema) Test the data based on comparison data and actual values Testing the performance Testing per Architecture Layer - Backend Manual Automatisiert DWH specific toolsCell based comparison SQL based comparison Source: https://bigeval.com/en/data-warehouse-etl-testing/
  28. 28. Test cases… … contain one or more test objects (e.g. a report, measure, data set) … need one or more reference objects ... presuppose a congruent data foundation for reference and test objects, that means the data is either stable or develops itself further synchronously. Stable: Define a data set which isn’t changed anymore, e.g. a closed time period. Dynamic: Comparison data is refreshed regularly. Test Case Design
  29. 29. Alternative 1: There is a test source system on which any test cases can be simulated. Alternative 2: Take the production source system Alternative 3: Fictitious source data are generated in the DWH, e.g. on the stage layer. Testing with test data – where to take it from?
  30. 30. How big is the amount of test data? Detail Analysis Modelling & ETL Code BI Application Full Data Testing 1 day – 1 week 1 day – 1 week 1 day – 1 week 1 day – 1 week Product Owner Define test data set Unit Testing with test data set Integration Testing with full data set Connectivity & DWH Stories BI Application stories Feature 1
  31. 31. Testing is a crucial success factor of every BI / DWH system. Testing should be a «built-in» part of every BI / DWH architecture. The more tests you have, the more meaningful is test automation. Data based testing is not exactly the same as testing «classical» GUI oriented software: Adapt where possible, be creative where necessary. There are BI specific testing tools. BI specific testing: For you to take away:
  32. 32. Retrospektive
  33. 33. Write down your lesson’s learned – what do you take with you? (Timebox 3 minutes) Share lessons learned (Timebox 10 minutes) Retrospective 37
  34. 34. References und Literature With friendly support from: IT-Logix Team (http://www.it-logix.ch) BiGeval Team (http://www.bigeval.com) Wherescape Team (http://www.wherescape.com) Tricentis Team (http://www.tricentis.com) GB&Smith Team (http://www.gbandsmith.com) Scott Ambler (http://www.disciplinedagiledelivery.com) Lawrence Corr (http://www.modelstorming.com) Peter Stevens (https://scrumbreakfast.club) Maturity Model Inspiration: Belshee Arlo: Agile Engineering Fluency http://arlobelshee.github.io/AgileEngineeringFluency/Stages_of_practice_map .html Literature: Branger Raphael, Bausteine für agile und nachhaltige BI, BI Spektrum, 5. Ausgabe 2015, SIGS DATACOM http://www.tdwi.eu/fileadmin/user_upload/zeitschriften//2015/05/brang er_BIS_05_2015_dzer.pdf Collier Ken, Agile Analytics, Addison-Wesley, 2012 Corr Lawrence, Stagnitto Jim: Agile Data Warehouse Design: Collaborative Dimensional Modeling, from Whiteboard to Star Schema, DecisionOne Press, 2011 Hughes Ralph: Agile Data Warehousing Project Management: Business Intelligence Systems Using Scrum, Morgan Kaufmann, 2012 Ambler Scott W., Lines Mark: Disciplined Agile Delivery: A Practitioner's Guide to Agile Software Delivery in the Enterprise, IBM Press, 2012 Ambler Scott W., Sadalage Pramod J.: Refactoring Databases: Evolutionary Database Design, Addison-Wesley Professional, 2006 Krawatzeck Robert, Zimmer Michael, Trahasch Stephan, Gansor Tom: Agile BI ist in der Praxis angekommen, in: BI-SPEKTRUM 04/2014 Memorandum für Agile Business Intelligence: http://www.tdwi.eu/wissen/agile-bi/memorandum/ Oliver Cramer, Data Warehouse Automation, 32. TDWI Roundtable in Zürich, 2015 Agile in a nutshell: http://blog.crisp.se/2016/10/09/miakolmodin/poster- on-agile-in-a-nutshell-with-a-spice-of-lean
  35. 35. Blogs and Webpages around Data Warehouse Automation TDWI E-Book Data Warehouse Automation: https://cdn2.hubspot.net/hubfs/461944/downloads/Analyst_Reports/TDWI_ebook_Accelerating_Business.pdf Barry Devlin: BI, Built to Order, On-demand: Automating data warehouse delivery: http://www.9sight.com/2015/01/wp-built-to-order/ Oliver Cramer: Prinzipien der Data Warehouse Automation und grober Marktüberblick: http://ddvug.de/wp-content/uploads/4_Tagung_der_DDVUG_Prinzipien_der_Data_Warehouse_Automation_Handout.pdf Eckerson Group: Data Warehouse Automation Tools: https://www.wherescape.com/media/1791/eckerson-group-dw-automation-tools-report.pdf What is Data Warehouse Automation: https://www.wherescape.com/products-services/what-is-data-warehouse-automation/ WhereScape RED Product Information: https://www.wherescape.com/products-services/wherescape-red/ WhereScape 3D Product Information: https://www.wherescape.com/media/1590/wherescape-3d-data-sheet.pdf 39
  36. 36. «Traditional projects start with requirements and end with data. Data Warehousing projects start with data and end with requirements.» Bill Inmon Raphael Branger, Senior Solution Architect & Partner rbranger@it-logix.ch Follow us: @rbranger / @itlogixag DE: http://blog.it-logix.ch/author/raphael-branger EN: http://rbranger.wordpress.com

×