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?