intermediate 2 min answer

Two dashboards disagree about revenue. What mechanism would have prevented it, and what would not?

bi-governancesemantic-layercertificationdefinitionstrust
Show the full answer Hide the answer

What is being tested

Whether you distinguish mechanisms that are executed from mechanisms that are merely documented.

What would have prevented it

A semantic layer implementing one certified definition. The definition exists as versioned, tested code that every dashboard and query consumes.

This is the mechanism that makes the definition binding rather than advisory: if the only way to get the number is to call the shared definition, divergence becomes impossible rather than discouraged.

A named owner for each certified metric, stating inclusions, exclusions, the date basis and the timezone — because the disagreement is almost never technical. It is that "revenue" was defined independently twice, with different treatment of returns, discounts, cancellations, or which date applies.

Certified versus exploratory tiers, labelled in the tools. Analysts must be free to compute things their own way; the failure is an exploratory number reaching a board pack unnoticed. Labelling addresses that without slowing anyone down.

Lineage, so "where did each number come from" has a mechanical answer in minutes.

Declared grain on fact tables, because fan-out double-counting is the most common technical cause and it produces plausible-looking wrong numbers that survive review.

What would not have prevented it

A catalogue documenting both definitions — it has documented the problem.

A review board approving new metrics — friction proportional to volume, producing shadow spreadsheets rather than compliance.

Renaming one of them — two numbers with different names and no stated relationship is still two numbers in a board pack.

Restricting analyst access — which relocates the analysis into tools with no governance at all.

The general principle

Governance must be enforced at runtime, not documented. A definition in a wiki describes an intention; one in a semantic layer describes what happens.

And the balance matters: no governance produces an untrusted swamp; heavy governance produces shadow pipelines built to avoid it. Target the lightest mechanism that makes the right thing easier than the wrong thing.