My first Publication Agile-Data-Warehouse-Design-eBook | Page 117

96 Chapter 4 Modeling Multiple Events With Agility Agile designers might be tempted to limit the modeling scope per release This can result in silo data marts that are unable to support cross- process analysis Deploying an agile data warehouse that will eventually handle the multiple busi- ness events required for enterprise BI is especially challenging. To meet the agile principles of early and frequent delivery of valuable working software, agile design- ers may be tempted to limit their modeling scope per release in terms of business processes and/or stakeholder departments. Unfortunately this can quickly lead to the silo data mart anti-pattern, of Figure 4-1. With a tightly-controlled initial scope, BI users can receive their agile data marts early and obtain valuable insight from them individually on a department by department basis. So far so good, but when users want to step up to cross- department, cross-process analysis they find they cannot make the necessary comparisons due to incompatible or missing descriptions and measures. Rebuild- ing each data mart from scratch is unthinkable so data is re-extracted from the source systems so that each department can look at it “their way”. The cost of this extra work and the inconsistent or conflicting answers that emanate from these “multiple versions of the truth” drive BI stakeholders crazy! Figure 4-1 Silo data marts that cannot be shared: a data warehouse anti-pattern With too limited a scope data warehouse design incurs heavy technical debt Traditional BDUF does not match agile BI requirements Silo data marts are examples of technical debt. Agile software development inten- tionally takes on technical debt when “just barely good enough” code is released. This makes good sense when the business value of early working software out- weighs the interest on the debt: the extra effort involved in refactoring the code in future iterations. However, for DW/BI projects, the cost of servicing high interest technical debt: refactoring terabytes of incorrectly represented historical data, can be ruinously high. The especially high interest of database technical debt could be argued as a good reason for taking a traditional, non-agile, approach to data requirements gathering and data warehouse design itself and postponing agile practices for ETL and BI