The metric dictionary
Every metric gets one definition, one owner and one place where it is calculated. Until what 'active customer' means is written down, each team invents its own version and the reports diverge.
- Definition, calculation location and owner are recorded together
- Definition changes are versioned and announced
- One name is never given to two calculations
- The dictionary is reachable from the reporting interface
A governed data model
When queries connect straight to source tables, every report carries its own business rules. A shared model keeps join and filter logic in one place so report authors do not rediscover the rules.
- Business rules live in the model, not in the report
- Authorization is applied at the model layer
- A model change shows which reports it affects
- A source change is applied in one place
Designing for the user
An executive, an analyst and a field user arrive at the same dashboard with different questions. Dashboards are designed from the user's question, and each metric carries the threshold at which the number is bad.
- Every metric carries a target or a threshold
- Drill-down is one click away
- Mobile use is designed rather than shrunk
- Unused dashboards are retired on a periodic review
When the data was last refreshed belongs on the dashboard. A user who does not know which moment a number belongs to will distrust even a correct one — and a slow dashboard is abandoned quickly.
- Last refresh time is visible on the dashboard
- Load failures are surfaced to the user
- A load-time target is set and monitored
- Historic figures do not change retroactively