My first Publication Agile-Data-Warehouse-Design-eBook | Page 61
40
Chapter 2
You start by asking
for a typical event
story
Ask for different
stories to explore
value ranges
Use relative time
descriptions to
document
ETL urgency
and DW history
requirements
Typical Stories
Each event table should start with a typical event story that contains com-
mon/normal/representative values for each detail. For who data this could be a
frequent CUSTOMER. For what details this might be a popular PRODUCT.
Similarly, for how many details you are looking for average values that match the
other typical values. To fill out this example story you simply ask the stakeholders
for typical values for each detail.
Different Stories
Following the typical example event you ask the stakeholders for another example
with different values for each detail. If you ask for two different examples you can
use them to discover the range of values that the data warehouse will have to
represent. This is particularly important for when details because they indicate how
much history will be required and how urgently the data must be loaded into the
data warehouse.
For when details, use relative time descriptions such as Today, Yesterday, This
Month, and 5 Years Ago to capture the most recent and earliest values so that the
event stories remain relevant long after the model is completed. If the latest when is
Yesterday, then you know that the data warehouse will demand a daily refresh for
this particular business process. In Figure 2-6, the fourth and fifth example events
show that the data warehouse will need to support 10 years of history for this
event, and that a daily refresh policy is required.
If the latest when event story is Today, the data warehouse will need to be refreshed
more urgently than daily — perhaps in near real-time. Because this will significantly
complicate the ETL processing and increase development costs, you should con-
firm that this is a vital requirement with budgetary approval. If it is, you need to
find out if Today means “an hour ago” or “10 minutes ago”.
Look for old and
new values as well
as high and low
Ask for a repeat
story to find out
what makes an
event story unique
For who and what details, ask for old and new values — representing customers who
have become inactive versus brand-new customers, or products that have been
discontinued versus those just released.
Repeat Stories
Once you have collected a few different examples you ask for a repeat story — one
that is as similar as possible to the typical story (the first row) — so you can discover
what makes each event story unique. You do this by asking whether the typical
values can appear again in the same combination; for example, you might ask:
Can this CUSTOMER order this PRODUCT
again on the same day?