Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970...

18

Transcript of Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970...

Page 1: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral
Page 2: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Agile BI: how it works & how to do it

Tom Breur [email protected]

IRM DW & BI Conference Europe London, 6 November 2012

Page 3: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Some “Agile BI” books

www.xlntconsulting.com 3

Page 4: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

4

History of development methods

2000 1990 1980 1970 1960

Brooks (1975) “The Mythical Man Month”

Boehm (1986) “A Spiral model of Software Development and Enhancement”

Martin (1991) “Rapid Application Development”

Jackson (1975) “Principles of Program Design”

1994: DSDM Consortium launched

1997: term eXtreme Programming (XP) ‘invented’

2001: term ‘Agile’ adopted

From “code and fix” to more structured, methodical approaches to software development

Beck (2000) “Extreme Programming Explained”

Unstructured Prescriptive methods Structured methods

2010

1996: Scrum ‘invented’

Poppendieck (2003) “Lean Software Development”

Anderson (2010) “Kanban”

Cockburn (2004) “Crystal Clear” Royce (1970) “Managing the Development of Large Software Systems”

www.xlntconsulting.com

Page 5: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Why try Agile?  “Big Bang” data warehouse delivery never

‘worked’, because:  Results take too long  Requirements are too ambiguous & volatile  Business needs change, BI needs to come

along (quickly!)  BI requirements are intrinsically unstable

 Information products trigger change requests: new data ⇒ insights ⇒ new requirements

www.xlntconsulting.com 5

Page 6: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

BI: means and ends uncertainty Means uncertainty   How do we get there?   Lack of “design patterns”   Data integration fraught

with data quality issues   Lack of Master Data

Management   Lack of Meta Data   No agreement on how to

conform dimensions

Ends uncertainty   Where are we going to?   Requirements are difficult

to pin down   Diverse end-user groups   Ambiguous business

case(s)   Scope is unclear   Data warehouses are

never “done”

www.xlntconsulting.com 6

Page 7: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Concurrent development (1)  Waterfall: you can avoid mistakes/rework

by getting good requirements upfront  The most costly mistakes arise from

forgetting important elements early on  Detailed planning (BDUF) requires:

 early (ill informed) decisions  uses more time  leading to less tangible products to resolve

ambiguity 7 www.xlntconsulting.com → vicious cycle

Page 8: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Concurrent development (2)  Agile: decide at “last responsible moment”

 decisions that haven’t been made, don’t ever need to be reverted

 No “free lunch” – deferring decisions requires:  anticipating likely change  coordination/collaboration within team  close contact with customers

8 www.xlntconsulting.com

Page 9: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Data warehouse automation DWH automation can take on several forms:  Standardized processes, templates, etc.  ETL/DDL generation

 Staging  hub (for 3-tiered DWH architectures)  data marts

 Maintenance  version control  documenting “as built” design

9 www.xlntconsulting.com

Page 10: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Slide 10

Inmon ⇔ Kimball (1) 3-tiered 2-tiered

www.xlntconsulting.com

Page 11: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Inmon ⇔ Kimball (2) Problems with Inmon   Uncovering the ‘correct’

3NF model requires scarce business expertise

  Unclear where 3NF model boundaries begin and end

  Model redesigns trigger a cascading nightmare of parent-child key updates

Problems with Kimball   Smallest unit of delivery

is a Star   Incremental growth adds

prohibitive overhead

  Dimensional structure is very rigid → not conducive to expansion or change

  Conforming dimensions is hard, in particular without access to data

www.xlntconsulting.com 11

Page 12: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

3NF ⇔ Dimensional (1)

www.xlntconsulting.com 12

Page 13: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

3NF ⇔ Dimensional (2)

www.xlntconsulting.com 13

see: Kimball design tip # 149 http://www.kimballgroup.com/2012/10/02/design-tip-149-facing-the-re-keying-crisis/

this problem gets (much!) worse with multiple parent-child levels

Page 14: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Hyper normalized model

www.xlntconsulting.com 14

business keys, context attributes (history), and relations, all have their own tables

appending “Supplier data” to the model (or any other new source), is guaranteed to be contained as a “local” problem (=extension) in the data model because business keys, context attributes (history), and relations all have their own tables

Page 15: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

3-tiered DWH architecture

Legacy

OLTP

ERP

LOG files

External

ETL Staging

Area

Data Warehouse

ODS

Datamart 1

Datamart 2

Datamart n

Business Intelligence Applications

Metadata

3 NF hyper

normalized dimensional 15 www.xlntconsulting.com

Page 16: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Horses for courses  3NF

 quickly & accurately capture transaction data  easy to get data in

 Hyper normalized  integrate historical data  capture all data, all the time

 Dimensional  present & analyze data  easy to get data out

www.xlntconsulting.com 16

Page 17: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Legacy

OLTP

ERP

LOG files

External

ETL Staging

Area

Data Warehouse

ODS

Datamart 1

Datamart 2

Datamart n

Business Intelligence Applications

Metadata Back room Data Warehouse Architecture

Front room Business Intelligence Architecture

Backroom ⇔ Frontroom

17 www.xlntconsulting.com

Page 18: Agile BI - WordPress.com...Some “Agile BI” books 3 4 History of development methods 1960 1970 1980 1990 2000 Brooks (1975) “The Mythical Man Month” Boehm (1986) “A Spiral

Conclusion  “Agile” changes (project) management &

engineering practices (design patterns)  DWH automation drives down cycle time  Employ concurrent development & reduce

increment size (to arbitrarily small chunks)  Special purpose (DWH) modeling

paradigm (hyper normalization) “fits” best with Agile

www.xlntconsulting.com 18