Diploma in Business Intelligence (Power BI)
Business Intelligence & Power BI
•
Diploma
Applied Power BI Capstone Project
Introduction and Context
A Power BI capstone project integrates the complete business-intelligence lifecycle. The student begins with an organisational question rather than a chart, examines the quality and meaning of raw data, transforms it, designs a semantic model, writes measures in DAX, creates decision-oriented reports, validates results, publishes the solution, and establishes governance. The final product is therefore not merely a dashboard. It is a controlled analytical service that connects data, business definitions, managerial decisions, and organisational accountability.
A successful capstone demonstrates both technical competence and professional judgement. A visually attractive report can still be unreliable if its relationships create double counting, its measures use the wrong filter context, or its source data is not reconciled with an approved financial report. Conversely, a technically correct model may fail if managers cannot interpret it or if it does not answer an important decision question.
This chapter presents an end-to-end method using an illustrative retail-performance project. The case is fictional, but the methods are transferable to sales, finance, operations, human resources, marketing, and service analytics.
Learning Objectives
By the end of this chapter, you should be able to:
Convert stakeholder needs into measurable analytical requirements.
Profile and transform raw data using Power Query.
Design a star schema and explain its grain and relationships.
Create reliable DAX measures and distinguish measures from calculated columns.
Design an accessible report that supports managerial decisions.
Validate data, calculations, interactions, and performance.
Publish a solution with appropriate workspace, security, refresh, and governance controls.
Present insights and defend design decisions using evidence.
1. From Business Problem to Analytical Specification
The first deliverable is a concise analytical specification. It should record the decision to be supported, users, measures, dimensions, data sources, refresh expectations, security requirements, and acceptance criteria.
A weak requirement is “create a sales dashboard.” A stronger requirement is “enable regional managers to identify weekly sales and gross-margin shortfalls by region, product category, and channel, and to investigate the underlying transactions.” The second statement identifies users, actions, measures, dimensions, time, and the required analytical depth.
Stakeholder discovery
Interview stakeholders and distinguish:
Decisions: What action will the report support?
Measures: What numerical outcomes matter?
Dimensions: By which categories should users analyse outcomes?
Grain: What does one row in each source represent?
Time: What is the reporting period and refresh frequency?
Authority: Which definitions and targets are officially approved?
Constraints: What privacy, performance, licensing, or security conditions apply?
A requirements matrix makes ambiguity visible.
Requirement
Business question
Measure or field
Dimension
Acceptance test
Revenue trend
How are sales changing?
Net Sales
Date
Monthly totals reconcile to finance
Margin control
Which products are unprofitable?
Gross Margin %
Product
Margin definition is documented
Regional action
Where is performance weak?
Variance to Target
Region
Region totals equal company total
Detail investigation
Which transactions explain an exception?
Order and line details
Customer, product
Drill-through shows source rows
A metric dictionary should define each measure before it is built. For example, “net sales” may mean invoice value after discounts and returns but before tax; it should not silently mean order value before returns.
2. Case Study: Northstar Retail Performance
Background and problem
Northstar Retail operates stores and an online channel. Executives believe revenue is increasing, but regional managers report inconsistent performance. The existing spreadsheet combines invoices, targets, product attributes, and regional names. It contains duplicated product rows, inconsistent spelling, missing dates, and returns recorded as positive sales. Management requests a Power BI solution for monthly review meetings.
The required questions are:
What are net sales, cost, gross profit, and gross-margin percentage?
How do actual sales compare with target by month and region?
Which categories and channels explain changes in performance?
Can an authorised manager see only the regions assigned to that manager?
Can the report be refreshed each morning and reconciled to the finance control total?
Source data and grain
The principal transaction file contains one row per sales-order line. Its grain is therefore “one product line within one order,” not one order and not one customer. Typical fields include OrderID, OrderDate, ProductKey, CustomerKey, RegionKey, Channel, Quantity, UnitPrice, DiscountAmount, UnitCost, and ReturnFlag. A product table contains one row per product; a date table contains one row per date; and a target table contains one row per month-region combination.
Grain must be documented because measures depend on it. If a product table accidentally contains two rows for the same ProductKey, a relationship to transactions may duplicate amounts. If targets are monthly while transactions are daily, the model must relate them through compatible Date and Region dimensions rather than directly to transaction rows.
Illustrative outcome
After implementation, Northstar discovers that total revenue is above target but online gross margin is below target because discounting is concentrated in a low-margin category. The decision is not simply “sell more”; management must review discount policy, category mix, and channel economics. This illustrates why a capstone should connect measures to decisions rather than celebrate isolated totals.
3. Data Profiling and Transformation
Power Query is used for extraction, profiling, cleaning, and reshaping. Transformations should be reproducible and documented rather than performed manually in the source workbook.
Profiling checklist
Inspect:
row counts and distinct-key counts;
null, blank, and error values;
duplicate keys;
data types and date formats;
negative quantities and returns;
outliers in price, quantity, or discount;
unmatched product, customer, region, and date keys;
inconsistent labels and leading or trailing spaces;
refresh duration and source stability.
A null value is not automatically zero. A missing discount may mean “no discount,” but a missing UnitCost may mean “unknown cost.” The transformation rule must follow the business meaning.
Recommended transformation sequence
Connect to the source and preserve a raw staging query.
Promote headers and assign explicit data types.
Standardise text using trimming, case rules, and approved mappings.
Remove technically duplicated rows only when duplication is proven to be accidental.
Separate valid, rejected, and exception records.
Replace or retain missing values according to documented rules.
Merge reference attributes using controlled keys.
Add calculated fields only when they belong to the row-level transformation logic.
Remove unused columns and load only necessary data.
Record row counts before and after each major step.
For a return recorded as a positive quantity with ReturnFlag = 1, the transformation may create a signed quantity. This is appropriate only if the source convention is confirmed. An alternative is to retain the original quantity and use a signed measure. The project documentation must state which convention is used so that returns are not reversed twice.
Data-quality controls
A robust solution creates an exception output. Examples include transactions with unknown ProductKey, dates outside the date dimension, negative prices, or missing regions. Exceptions should be counted and reviewed; silently deleting them weakens trust. A data-quality score can be reported as a management indicator, but it should not conceal the underlying issue.
4. Semantic Model Design
The star schema
The preferred model for this case is a star schema: a central fact table surrounded by descriptive dimensions.
Star schema for a retail Power BI model
Figure: Star schema for a retail Power BI model
Figure: A star schema with descriptive dimensions filtering a central sales fact table.
Dimensions generally contain descriptive attributes and unique keys. Facts contain additive or semi-additive events and foreign keys. Relationships should normally be one-to-many from dimension to fact, with single-direction filtering unless a documented requirement justifies another design.
Measures and additive behaviour
A fully additive measure can be summed across products, regions, and time. Revenue is commonly additive across these dimensions. Inventory balance is often semi-additive: it can be summed across warehouses but should not be summed across dates. Ratios such as gross-margin percentage should be calculated from components, not averaged from row percentages.
The basic financial relationships are:
Net Sales = Gross Sales − Discounts − Returns
Gross Profit = Net Sales − Cost of Goods Sold
Gross Margin % = Gross Profit ÷ Net Sales × 100
Here all monetary terms use the same currency and reporting scope. The percentage is meaningful when Net Sales is non-zero; a report should handle a zero denominator explicitly rather than displaying an error. For aggregated data, gross margin should be calculated as total Gross Profit divided by total Net Sales, not as the unweighted average of product-level percentages.
Date table
A proper date table should contain a continuous date column, year, quarter, month number, month name, and fiscal attributes where needed. Marking it as a date table and sorting month names by month number prevents alphabetical ordering. Time-intelligence results depend on a valid date relationship and an appropriate filter context.
5. DAX Design and Filter Context
DAX measures respond to filter context: filters supplied by slicers, visual axes, rows, columns, page filters, and relationships. A measure should express a business definition rather than repeat a visual-specific calculation.
The exact treatment of returns, taxes, and discounts must match the metric dictionary. If returned quantities are negative in the transformed fact table, the expressions must not subtract them again.
SUMX evaluates an expression row by row and then sums the results. It is appropriate when sales value must be computed from quantity and unit price. A calculated column may be appropriate for a stable row-level value needed for slicing, but a measure is generally preferable for aggregations because it responds dynamically to filters and does not unnecessarily enlarge the model.
A time comparison may use a previous-period function when the date table and filter context are valid. For example, a year-over-year percentage can be defined conceptually as:
YoY % = (Current Period Sales − Comparable Prior Period Sales) ÷ Comparable Prior Period Sales × 100
The denominator must be non-zero, and “comparable prior period” must be defined, especially for fiscal calendars, incomplete months, and leap-year comparisons.
Common DAX errors include using a column where a measure is required, removing filters unintentionally, relying on bidirectional relationships to solve an ambiguous model, and averaging ratios. Every measure should be tested at transaction, month, region, and company levels.
6. Report and Visual Design
The report should tell a decision story. A practical page structure is:
Executive overview: headline KPIs, target variance, trend, and a concise alert.
Performance analysis: decomposition by region, category, and channel.
Time analysis: monthly trend, prior-period comparison, and target line.
Diagnostic detail: product and transaction-level drill-through.
Data quality and definitions: refresh status, exceptions, metric definitions, and data date.
Use visual forms that match analytical tasks. A line chart supports trends; a bar chart supports category comparison; a matrix supports hierarchical detail; a card supports a small number of headline indicators. Avoid decorative pie charts with many categories, excessive colours, and dense pages.
Every visual should answer a question. Titles should be specific, such as “Net Sales by Region, Current Fiscal Year,” rather than “Sales.” Units, currency, period, and filter state should be visible. Conditional formatting must use accessible colour choices and should not communicate meaning through colour alone. Alt text, logical tab order, keyboard navigation, and readable contrast improve accessibility.
Drill-through, report-page tooltips, bookmarks, and decomposition trees can support investigation, but they should not obscure the core narrative. Interactions should be tested so that selecting a category filters intended visuals and does not create misleading blanks.
7. Validation and Quality Assurance
Validation is evidence that the solution is correct, not a final glance at the dashboard.
Reconciliation
Compare Power BI totals with an independent control total. If finance reports net sales of £12,400,000 and the model reports £12,150,000, the difference must be explained by period, currency, returns, tax, late postings, or an error. A reconciliation table should contain source total, model total, absolute difference, percentage difference, and explanation.
The percentage difference can be calculated as:
Difference % = (Model Total − Control Total) ÷ Control Total × 100
This formula assumes the control total is non-zero and both values use the same scope, currency, and sign convention.
Testing layers
Source tests: files exist, schemas are unchanged, and refresh credentials work.
Transformation tests: data types, row counts, key uniqueness, and exception counts are acceptable.
Model tests: relationships have the intended cardinality and filter direction.
Measure tests: known cases produce expected totals and ratios.
Interaction tests: slicers, drill-through, bookmarks, and cross-highlighting behave as intended.
Performance tests: pages load within an agreed time and queries do not cause unnecessary resource consumption.
User acceptance tests: representative users can complete defined tasks.
Create test cases with expected results. For example, a transaction with quantity 2, unit price £50, discount £10, and cost £30 per unit should produce net sales of £90, COGS of £60, and gross profit of £30. The margin is £30 ÷ £90 × 100 = 33.33% recurring, subject to rounding presentation. Such small test cases reveal sign and aggregation errors.
8. Publication, Security, and Governance
A professional deployment separates development, testing, and production environments where organisational scale justifies it. The workspace should have named owners, documented content, controlled permissions, and a defined support route.
Row-level security
If regional managers may view only assigned regions, create a security mapping table containing user identity and RegionKey, relate it appropriately, and test with representative accounts. Security must be validated in the service, not assumed because a slicer is present. A slicer changes display; it does not enforce authorisation.
Least privilege means users receive only the access required for their role. Export permissions, sharing links, workspace roles, and build permissions should be reviewed. Sensitive customer data should be minimised, masked, or excluded unless a legitimate purpose exists.
Refresh and lineage
Document data sources, owners, credentials, gateways where relevant, refresh schedule, failure notifications, retention, and dependencies. Incremental refresh may be useful for large historical fact tables, but it must be configured around reliable date fields and a justified policy. Refresh success does not prove semantic correctness; post-refresh validation remains necessary.
Governance includes a metric dictionary, naming conventions, endorsement or certification procedures, change control, version history, and an issue log. A report should display its data-as-of timestamp and important limitations.
9. Presenting and Defending the Solution
The capstone presentation should follow a decision narrative:
State the business problem and consequences.
Explain data sources, grain, transformations, and limitations.
Demonstrate the model and justify the star schema.
Show key measures and explain definitions.
Demonstrate the executive page and one diagnostic pathway.
Present validated insights and recommended actions.
Explain security, refresh, governance, and future improvements.
Respond to challenges with evidence rather than opinion.
A design defence might state: “The target table is kept separate from the transaction fact because its grain is month-region, whereas sales is order-line. Relating both through shared Date and Region dimensions prevents target duplication.” This is stronger than saying the model is “standard.”
Recommendations should distinguish observation, interpretation, and action. For example, observation is “online margin declined by four percentage points.” Interpretation is “the decline coincides with higher discounting in Category A.” Action is “review discount thresholds and test a margin floor.” The evidence and uncertainty for each step should be made explicit.
10. Challenges, Limitations, and Contemporary Practice
Power BI does not remove source-data problems. Ambiguous definitions, missing history, changing product hierarchies, currency conversion, late-arriving transactions, and inconsistent targets can limit conclusions. A dashboard can also create false precision when data quality is weak.
Performance may suffer from excessive columns, high-cardinality fields, complex measures, inefficient transformations, or poorly designed relationships. Model reduction, aggregation, query folding where supported, and performance analysis are preferable to indiscriminate hardware or capacity increases.
AI-assisted features may help users discover patterns or draft expressions, but generated DAX and narrative explanations require human review. AI can reproduce source bias, expose sensitive information through prompts, or present correlation as causation. It should be used under the same privacy, validation, and accountability rules as other analytical tools.
Ethically, the team should consider privacy, fairness, transparency, accessibility, and the consequences of automated decisions. A regional ranking may influence bonuses; therefore data completeness, target fairness, and contextual explanation matter. Governance is not bureaucracy added after development; it is part of analytical quality.
Capstone Deliverables and Assessment Criteria
A complete submission should include:
stakeholder brief and requirements matrix;
source inventory and data-quality report;
Power Query transformation record;
model diagram with grain and relationship documentation;
metric dictionary and DAX measure list;
published or demonstrable report;
validation and reconciliation evidence;
security, refresh, and governance plan;
executive presentation and recommendations;
limitations and future-development statement.
An assessment rubric can allocate marks to requirements and business relevance, data preparation, model design, DAX correctness, visual communication, validation, governance, and oral defence. Technical complexity should not compensate for an unanswered business question.
Chapter Summary
An applied Power BI capstone is an end-to-end BI product. It begins with stakeholder decisions and precise metric definitions, not with visual selection. Raw data must be profiled, transformed reproducibly, and accompanied by exception controls. A star schema with documented grain and appropriate relationships provides a reliable semantic foundation. DAX measures must respect filter context and calculate ratios from aggregated components. Reports should support a decision path through clear visuals, accessible interaction, and useful drill-through.
Validation requires reconciliation, test cases, interaction testing, performance checks, and user acceptance. Publication adds responsibilities for security, refresh, lineage, permissions, and governance. Finally, the analyst must communicate not only what the data shows but also what managers should do, what assumptions support the conclusion, and what limitations remain. The quality of the capstone is therefore measured by trustworthy decisions enabled, not by the number of pages or visual effects.
Key Terms
Analytical specification: A documented statement of users, decisions, measures, dimensions, sources, and acceptance criteria.
Calculated column: A row-level value computed and stored in a model table.
Data grain: The precise meaning represented by one row of a table.
Data lineage: The documented origin and movement of data through the BI solution.
Data dictionary: Definitions of fields, measures, types, owners, and business meaning.
Dimension: A descriptive table used to filter and group facts.
DAX: Data Analysis Expressions, the formula language used in Power BI models.
Drill-through: Navigation from a summary view to a filtered detail page.
Fact table: A table containing events, measurements, and foreign keys at a defined grain.
Filter context: The set of filters under which a DAX measure is evaluated.
Gross margin: Gross profit expressed as a percentage of net sales.
Measure: A dynamic DAX calculation evaluated in the current filter context.
Power Query: Power BI’s environment for connecting to and transforming data.
Reconciliation: Comparison of model results with an independent authoritative total.
Row-level security: A mechanism that restricts records according to the viewer’s identity or role.
Semantic model: The governed tables, relationships, measures, and definitions exposed for analysis.
Star schema: A model with a central fact table linked to surrounding dimensions.
Target table: A table containing planned or benchmark values at a specified grain.
User acceptance testing: Structured testing by representative business users against agreed tasks.
Review Questions
Short Answer Questions
Why must the grain of a fact table be documented?
Distinguish a measure from a calculated column in Power BI.
What is the purpose of a metric dictionary?
Why should ratios generally be calculated from aggregated components?
State two controls that should be included in a publication and governance plan.
Long Answer Questions
Explain how stakeholder requirements can be converted into a Power BI analytical specification.
Describe a suitable Power Query profiling and transformation process for a sales dataset.
Explain the structure and advantages of a star schema for the Northstar case.
Discuss the main layers of validation required before a report is released.
Explain how security, refresh, lineage, and metric governance contribute to trust.
Analytical / Application Questions
A target table contains one row per region and month, while the sales fact contains one row per order line. Design the relationships and explain how you would prevent target duplication.
Net sales are above target, but gross margin is below target in one channel. Propose a report investigation path and at least two management actions that could be tested.
Finance reports £5,000,000 net sales while Power BI reports £4,850,000. Develop a reconciliation plan, identifying the checks and possible explanations you would investigate before changing the model.
Multiple Choice Questions with Answers
Question 1
What is the most important reason for documenting the grain of a fact table?
A. It determines the report colour palette
B. It clarifies what one row represents and supports correct aggregation
C. It automatically creates row-level security
D. It eliminates the need for a date table
Correct Answer: B. It clarifies what one row represents and supports correct aggregation
Question 2
Which model structure is recommended for the Northstar sales solution?
A. A star schema with dimensions filtering a central fact table
B. A single flat table containing every field
C. Only many-to-many relationships between all tables
D. A report with no semantic model
Correct Answer: A. A star schema with dimensions filtering a central fact table
Question 3
Which expression correctly represents gross-margin percentage?
A. Gross Profit × Net Sales
B. Net Sales ÷ Gross Profit × 100
C. Gross Profit ÷ Net Sales × 100
D. COGS ÷ Net Sales × 100
Correct Answer: C. Gross Profit ÷ Net Sales × 100
Question 4
Why is SUMX useful when sales value is based on quantity and unit price?
A. It evaluates an expression row by row before aggregating
B. It changes a dimension into a fact table
C. It automatically applies row-level security
D. It sorts dates chronologically
Correct Answer: A. It evaluates an expression row by row before aggregating
Question 5
Which control verifies that a Power BI total agrees with an authoritative finance total?
A. Conditional formatting
B. Reconciliation
C. Bookmark navigation
D. A tooltip
Correct Answer: B. Reconciliation
Question 6
What does a slicer alone provide?
A. Guaranteed authorisation of records
B. A visual filter, but not security enforcement
C. Automatic source-data correction
D. A replacement for a relationship
Correct Answer: B. A visual filter, but not security enforcement
Question 7
If net sales are £90 and gross profit is £30, what is gross-margin percentage?
A. 3.00%
B. 30.00%
C. 33.33%
D. 60.00%
Correct Answer: C. 33.33%
Question 8
Which table should normally contain descriptive product category attributes?
A. The date fact table
B. The sales transaction fact table only
C. The product dimension
D. The security log
Correct Answer: C. The product dimension
Question 9
Which statement best describes a semi-additive measure such as an inventory balance?
A. It can always be summed across every dimension, including time
B. It may be summed across some dimensions but not meaningfully across time
C. It cannot be filtered by any dimension
D. It must always be stored as text
Correct Answer: B. It may be summed across some dimensions but not meaningfully across time
Question 10
Why should an AI-generated DAX expression be reviewed before use?
A. AI expressions cannot contain functions
B. Generated logic may be incorrect or inconsistent with approved business definitions
C. Reviewing it disables refresh
D. DAX does not support measures
Correct Answer: B. Generated logic may be incorrect or inconsistent with approved business definitions