Requirements Questions for Business Intelligence Projects
What information do users need and why?
Who are the people using this data?
What are the expected outputs to make which decisions?
When should the information be available?
Where is the data for this request stored?
Information - why is the information needed for this request and how will it be used
1. What is the business problem to be solved?
2. What are the business questions answered by deliverable?
3. What is the expected data needed to answer the business question?
Audience - who are the people using this data and how will they use it
1. Who are the users and what are their roles?
2. What KPIs are users expecting to see?
3. What would the users do after they viewed the information?
Medium - what is the expected output of this data and in what form should it be delivered
1. Are users looking for at-a-glance information or wanting to do in-depth data analysis?
2. Does the user want to view the dashboard often or just be alerted to an anomaly?
3. Referencing other reports the department uses, what do they like/dislike about them?
Time - when should this information be available to make which decisions
1. What period do you need to see the information for?
2. Are there time periods that you'd like to compare against?
3. How frequently will this report be referenced and used?
Data – where is the data required for the report stored
1. What is the source data needed to answer business questions?
2. Is the data currently available or will a dataset need to be engineered?
3. How often is this data available?
4. What is the confidence level of data quality?
5. Does the data need to aggregated or individual level?
Information - why is the information needed and how will it be used
1. What is the business problem to be solved?
Don’t start any BI tool project without understanding the problem being solved by the tool. If a tool
doesn’t make a user’s life easier, then there is no reason to build it. The developer must know once
the tool is built what pain point of the user’s life will be alleviated.
2. What are the business questions answered by deliverable?
The business questions are what guide the developer on the views created in a report or dashboard.
A user has a situation with a question and they expect to get an answer from the BI tool. If the
developer doesn’t know what questions to answer, then they can’t create visuals that provide
answers the users need which results in an unused dashboard.
3. What is the expected data needed to answer the business question?
When the developer enters the data discovery phase, they will need a preliminary roadmap of the
source systems that capture the data and how this data moved through the data pipeline. Understanding the movement of data helps them build accurate measures later. If any anomalies
are found through data discovery then the developer will be prepared to educate the requester
about critical data points for analysis that may be incomplete or unavailable. This prevents any
surprises to stakeholders later in the design process and allows for alternative solution planning for
requested data views.
Audience - who are the people using this data and how will they use it
1. Who are the users and what are their roles?
A BI developer wants to understand the audience they are building a solution for. Later in
development a developer will want to know who they need to test usability against. At some point,
they will review those business questions asked earlier and will test their solution to determine if it’s
effective at helping end users do what they want to do.
2. What KPIs are users expecting to see?
This question collects the dimensions and measures a user wants to see in the business language.
Having stakeholders define key performance indicators forces them to not only think about the data
they want to see, but also the data points they want to compare against. If the user needs forecasts
or goal target data, then the developer also needs to add those data sources to the data model as
well. These KPI definitions will also be captured in the business glossary for reference during testing
and utilization.
3. What would the users do after they viewed the information?
Any BI project should be aligned with improving business outcomes by driving action by the user.
This question improves the chances that one the solution is deployed it will have the intended
impact on the business. Having requesters think about what action they expect to see data may also
change the data points they need to see to make the intended impact on the business.
Medium - what is the expected output of this data and in what format
1. Are users looking for at-a-glance information or wanting to do in-depth data analysis?
A developer will need to get an idea of what level of information a user will need to answer their
business question. Some users just need a snapshot of business performance while others need drill
features to explain root causes to performance. The more research features included in the report
influences how functionality is defined in a report. The developer will also need to test interaction
features during development to confirm features impact the reporting views as they were intended.
2. Does the user want to view the dashboard often or just be alerted to an anomaly?
Sometimes a user wants to spend the least amount of time in a report possible because they are
busy running the business. They only want to be alerted when processes or performance are
behaving unexpectedly. Alerting features need to be built into a report so a user is alerted to a
critical business issue. The developer will want to test during development that the alert feature is
working as intended.
3. Referencing other reports the department uses, what do they like/dislike about them?
Users will gladly tell you what reports they like or don’t like and why. The features they like from
other reports should be available in the design. Features that frustrate users in other reports should
be redesigned or not added. A simpler solution that delights the user will improve the chances a BI
tool will be used once deployed.
Time - when should this information be available to make which decisions
1. What period do you need to see the information for?
Users have a good idea of how they like to see the data. Depending on the user, they may only need
daily information while others may need to see a trend. The developer will need to plan for
providing the timelines needed to answer the user’s business question. Additionally, the size of the
data model can impact the latency of the report. A developer needs to figure out during data
discovery how the size of the data model will impact the responsiveness of the report. Depending
on size, alternative options may need to be discussed with the requester to make sure the BI tool
renders data quickly.
2. Are there time periods that you'd like to compare against?
It is common that a user wants to see how the business changes compared to previous periods.
Comparison periods can be yesterday, last month, or last year for example. To provide these views
the developer will have to build additional measures in the model so visualizations can provide the
requested views. They will also want to test comp periods with report features so filters provide
accurate information.
3. How frequently will this report be referenced and used?
Users hope to have the data when they start their day or when they are attending critical meetings.
They may work across different time zones so the developer has to plan to have data ingested into
the data model by time the users day or meeting starts. Sometimes the data warehouse goes
through its own processes and may not have data available when needed. If data is not going to be
available, then users need to be aware and a alternative solution should be provided if possible.
Comments