I get the following question very often. What are the best practices for creating an enterprise reporting policy as to when to use what reporting tool/application? Alas, as with everything else in business intelligence, the answer is not that easy. The old days of developers versus power users versus casual users are gone. The world is way more complex these days. In order to create such a policy, you need to consider the following dimensions:

  •  Report/analysis type
    • Historical (what happened)
    • Operational (what is happening now)
    • Analytical (why did it happen)
    • Predictive (what might happen)
    • Prescriptive (what should I do about it)
    • Exploratory (what’s out there that I don’t know about)
  • Interaction types
    • Looking at static report output only
    • Lightly interacting with canned reports (sorting, filtering)
    • Fully interacting with canned reports (pivoting, drilling)
    • Assembling existing report, visualizations, and metrics into customized dashboards
    • Full report authoring capabilities
  • User types
    • Internal
    • External (customers, partners)
  • Data latency
    • Real time
    • Near-real time
    • Batch
  • Report latency, as in need the report:
    • Now
    • Tomorrow
    • In a few days
    • In a few weeks
  • Decision types
    • Strategic (a few complex decisions/reports per month)
    • Tactical (many less-complex decisions/reports per month)
    • Operational (many complex/simple decisions/reports per day)
  • Data sources. In an ideal situation (a single EDW, a single BI platform), this would not be relevant, but in most real situations, it is.
  • Self-produced versus IT-produced based on criteria such as:
    • Report complexity (number of joins, etc.)
    • Resulting report set size
    • Mission criticality of the report
    • External exposure
    • Level of operational risk
    • Individually used versus workgroup shared versus shared across department, LOB, enterprise
  • Report lifespan and usage
    • One time vs permanent
    • Frequent vs infrequent usage
  • Criticality
    • Nice to have vs
    • Mission critical
  • Semantic layer
    • Will it be helpful or
    • Will it introduce extra complexity

You will then need to come up with an 10-dimensional (or more) matrix (good luck 🙂 ), where at each intersection you need to indicate first and second choice for a specific BI tool/app best fit to address each use case. Did I miss any dimensions? Also, when and if you come up with something like this, or even as you are experimenting with prototypes, I’d love to see them and comment.