My first Publication Agile-Data-Warehouse-Design-eBook | Page 108
Modeling Business Dimensions
Make sure you never ask: “Do you want current values or historic values?” The
answer, which is invariably “current values”, tells you nothing you shouldn’t
already know. Of course stakeholders want current values — that’s a given: they are
incredibly interested in current business events and want those events to be de-
scribed properly using current values just as they are in the operational systems.
You want to discover if attribute history is equally important. It is also highly
misleading to present historic values and current values as an either/or choice: HV
attributes must include current values because current values are the historically
correct descriptions for the most recent events.
87
Ask about historic
values: you know
current values are
important already
Figure 3-15
Modeling
dimensional history
using a change
story
If the answer to your “Do you need historic values?” question is NO, double-check
with the stakeholders that they will only ever care about current values and are
fully aware of the BI limitations they are settling for. The problems of misstated
history and unrepeatable reports caused by CV only attributes are best explained
using examples (see Documenting CV Change Stories shortly), to any stakeholder
making this decision for the first time. Double-check that
For many attributes it is a good idea to treat the stakeholders’ CV answers as
reporting directives rather than storage directives. They, quite rightly, are telling you
how they want their (initial) BI reports to behave: often exactly like existing opera-
tional reports they know (and love), but not how to store information in the data
warehouse — that’s not their role. For all but the largest dimensions and most
volatile attributes it is possible to efficiently store (compliance ready) HV attributes
but provide CV versions by default for reporting purposes. You may need to
history really is
unnecessary before
defining a CV
attribute
provide CV
reporting behavior
initially but store HV
attributes to provide
flexibility in the
future