My first Publication Agile-Data-Warehouse-Design-eBook | Page 113
92
Chapter 3
Minor Events
Not every event is a
significant business
process
Occasionally, you will discover events that do not seem to have enough details or
occur frequently enough to represent significant business processes in their own
right; they seem more like dimensions. For example, imagine the answer to your
next “Who does what?” event discovery question is:
Customer moves (to a new) address.
Minor events have
few details. They
often represent
external activity
You model several event stories and end up with the CUSTOMER MOVES event
table in Figure 3-18. This is a perfectly acceptable event, with a subject-verb-object
main clause, containing a who subject (CUSTOMER), an active verb (“moves”), a
where object (ADDRESS), and a when detail (MOVE DATE) but that’s all. Despite
asking all the 7Ws questions, it lacks any other who, what, why, how, or how many
details. Why customers move, how much it costs them, or who helps them are
unknowns because the event is external to Pomegranate’s business. In BEAM ✲
terms CUSTOMER MOVES is a minor event (despite being quite a major event for
the customer). Minor events represent activities that are not always interesting or
detailed enough for standalone analysis. But the data values arising from them are
important for correctly labeling, grouping, and filtering the other, far more inter-
esting, major events of the organization.
Figure 3-18
Minor CUSTOMER
MOVE event
HV Attributes: Dimension-Only Minor Events
Minor events can be
modeled as HV
attributes if they
occur infrequently
If the verb provided by the stakeholders can easily be replaced with “has” without
losing important information, this often indicates that the subject and object can
be attributes of the same dimension. For example, “customer moves to address on
move date” can be replaced with “customer has address on effective date” if the act
of moving, itself, is unimportant and all that stakeholders care about is a history of
customer locations. A customer dimension can model simple “has” events as HV
attributes.
If the subject and the object of an event both describe the same thing (e.g.,
customers) and there are no other details except when, you can handle the event
object as an HV attribute of the subject dimension, as long as the change repre-
sented by the event does not occur too often. Daily or monthly change would
make it a rapidly changing dimension—better handled as an event.