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

54 Chapter 2 How details can be also be descriptive You should ask further how questions to find out if there are any more descriptive how details. You are typically looking for methods and status descriptions. A suitably rephrased how question might be: In what ways can a CUSTOMER order a PRODUCT? to which the stakeholders might respond: Using a credit card or a purchase order. We’ll call that PAYMENT METHOD. Multi-verb evolving events can have multiple transaction ID and/or descriptive how details; one for each verb. In Chapter 5, transaction ID hows are modeled as degenerate dimensions within fact tables. In Chapter 9, more descriptive hows are modeled as separate how dimensions. Event Granularity Event granularity is the combination of event details that guarantee uniqueness Transaction IDs (how details) can be used to define granularity Granular details are marked with the code GD Each event story must be uniquely identifiable (otherwise there would be no way to identify duplicate errors). Therefore you must have enough details about an event so that each example story can be distinguished from all others by some combina- tion of its values. This combination of detail is called the event granularity. Discov- ering the event granularity is the job of the repeat story theme. If every detail in the repeat story matches the typical story you do not have enough details to define the granularity. In most cases, event granularity can be defined by a combination of who, what, when, and where details, but occasionally details stubbornly refuse to be unique through most of the 7Ws. While highly unlikely, perhaps the same customer really can order the same product at the same time at the same price from the same salesperson for delivery on the same date to the same location. In cases like this, the operational source system will have created a transaction identifier — such as Order ID (a how detail) — that can be used to differentiate these event instances. After you have discovered the event granularity you document it by adding the short code GD (granular detail) to the column type of each granular detail that in combination defines the granularity. Figure 2-12 shows that the order event granu- larity is defined by a combination of ORDER ID and PRODUCT. This would equate to order line items in the operational system. GDn : Granular Detail (or Dimension). A detail that singularly or in combination with others defines the granularity/uniqueness of an event. Alternative combinations are numbered; e.g., GD1 and GD2 denote two alternative granular details groups.