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.