Project Controls in the AI EraReporting, dashboards and data foundations · Lesson 18 of 22

Data foundations: integration, quality and tools

Article · 13 min · 8 min lecture

Video lecture

Data foundations: integration, quality and tools

9 chapters · about 8 min · full transcript

Coming soon

Chapter 1 of 9

Controls runs on data

  • The integration backbone
  • Six data quality dimensions
  • Governance, privacy and why it matters for AI

The narrated lecture is in production

Every chapter is scripted and ready. Browse the chapters and read the full transcript now — the video will appear here when it’s published.

Chapters

Controls runs on data

Every metric in this course depends on data from several systems: the schedule tool, the ERP/finance system, procurement, timesheets, document control and the risk register. Integration and quality determine whether reports are trusted and whether AI can be used safely.

The integration backbone

Three structures tie data together:

  1. WBS / control account codes used identically across schedule, cost and risk.
  2. Organisational breakdown structure (OBS) showing who is responsible; the intersection of WBS and OBS defines control accounts (the responsibility assignment matrix).
  3. Calendar and period definitions so every system closes on the same data date.

A typical data flow

Schedule tool  --> activities, dates, PV (time-phased budget), progress
ERP / finance  --> actual costs, accruals, commitments
Procurement    --> POs, delivery status
Timesheets     --> labour hours by code
Risk register  --> risks with WBS links and ranges
        \             |             /
         --> Controls data model (by control account and period) --> EVM, forecasts, dashboards

The controls data model is the single place where these join by code and period. It can be a database, a data warehouse or, for small projects, a well-structured spreadsheet.

Data quality dimensions

DimensionQuestionExample check
CompletenessIs everything there?Every control account has PV, EV and AC this period
AccuracyIs it right?Sample actuals traced to invoices; progress to evidence
TimelinessIs it current?All sources closed at the same data date
ConsistencyDo systems agree?Sum of control account budgets = BAC in both schedule and ERP
ValidityDoes it follow rules?Codes exist in the WBS; dates in logical order
LineageWhere did it come from?Every figure traceable to a source record

Monthly data quality checklist

  • Budgets in the schedule reconcile to the approved cost baseline.
  • Actuals reconcile to the finance ledger (with documented timing differences).
  • No costs posted to closed or invalid codes.
  • Accruals posted for work done but not invoiced.
  • Progress updates have evidence for milestone claims.
  • Schedule has no open ends or out-of-sequence progress beyond tolerance.
  • Change log approved changes reflected in the baseline.

Tooling in 2026

Organisations use a mix of enterprise scheduling tools, ERP systems, dedicated project controls platforms, business-intelligence dashboards and, increasingly, AI assistants built into these tools or accessed through approved enterprise AI services. Tool choice matters less than: consistent coding, a defined data model, clear ownership of each data source, and automated reconciliation checks.

Data governance basics

  • Data owners: each source has a named owner responsible for its quality.
  • Access control: commercial data (rates, margins, claims) is sensitive; restrict access appropriately.
  • Retention: keep period snapshots so history can be reconstructed. This is vital for claims and audits.
  • Privacy: timesheets and personnel data are personal data; follow applicable data protection laws (for example the UK GDPR, the UAE's federal data protection law, Saudi Arabia's PDPL and sector rules elsewhere) and company policy.

Worked example

Illustrative. A fictional EPC contractor in the UAE found that its CPI was swinging wildly month to month. Investigation showed three causes: accruals were not posted consistently, two cost codes existed in the ERP that were not in the WBS, and the schedule closed on the 25th while finance closed at month-end. After aligning the calendar, mapping codes and introducing an accrual checklist, CPI became stable and credible, and later a forecasting model trained on this cleaner data performed far better than an earlier pilot.

Common mistakes

  • Different coding in each system.
  • Manual copy-paste between systems every month without checks.
  • No snapshot history.
  • Treating data quality as IT's problem rather than the controls team's.

Why this matters for AI

AI models amplify whatever is in the data. Inconsistent codes, missing accruals and subjective progress will produce confident but wrong predictions. Investing in data foundations is the single most important prerequisite for AI in project controls.

Getting started on a small project

You do not need an enterprise platform to apply these principles. A small team can run a well-structured spreadsheet with one tab per source, a shared code list, a period column and a reconciliation tab that checks budget totals and actuals against finance. The discipline of consistent codes and dates matters far more than the tool, and it makes a later move to better systems much easier.

Hands-on: an automated reconciliation in Python

import pandas as pd

sched = pd.read_csv("p6_export.csv", dtype={"ca_code": str})   # ca_code, period, budget, PV, EV
erp = pd.read_csv("erp_export.csv", dtype={"ca_code": str})     # ca_code, period, budget, AC
ledger_total = 6_250_000                                        # from finance, same data date

codes = sched[["ca_code"]].drop_duplicates().merge(
    erp[["ca_code"]].drop_duplicates(), on="ca_code", how="outer", indicator=True)
orphans_erp = codes.loc[codes["_merge"] == "right_only", "ca_code"].tolist()
orphans_sched = codes.loc[codes["_merge"] == "left_only", "ca_code"].tolist()

latest = sched["period"].max()
checks = {
    "orphan ERP codes": not orphans_erp,
    "schedule codes without cost home": not orphans_sched,
    "budget totals agree": abs(sched.query("period == @latest")["budget"].sum()
                               - erp.query("period == @latest")["budget"].sum()) < 1,
    "AC reconciles to ledger": abs(erp.query("period == @latest")["AC"].sum() - ledger_total) < 1_000,
    "same data date": sched["period"].max() == erp["period"].max(),
}
for name, ok in checks.items():
    print(f"{'PASS' if ok else 'FAIL'}  {name}")
print("Orphan ERP codes:", orphans_erp)

Tolerances are illustrative; document timing differences (for example accruals posted after the ledger close) rather than widening tolerances. The same joins can be built in Power Query (Merge Queries → Full Outer) if your team works in Excel or Power BI.

Monthly data quality scorecard

DimensionCheckResultOwner
CompletenessEvery CA has PV, EV, ACControls
Accuracy10 actuals traced to invoicesCost controller
TimelinessAll sources closed at data dateEach data owner
ConsistencyBudgets = BAC in schedule and ERPControls
ValidityNo postings to closed or invalid codesFinance
LineageSnapshot saved with source file namesControls

How to measure success

  • All reconciliation checks pass before report production starts.
  • Number of orphan codes and manual adjustments falling month on month.
  • A snapshot exists for every period, reproducible on request.

Key takeaways

  • A shared WBS/control account code, OBS and common data date are the integration backbone.
  • Assess data on completeness, accuracy, timeliness, consistency, validity and lineage.
  • Run a monthly reconciliation checklist and keep period snapshots.
  • Clean, governed data is the most important prerequisite for trustworthy AI in controls.

Check your understanding

Quick questions to lock in the lesson. They don’t count towards your certificate.

  1. The schedule closes on the 25th and finance closes at month-end. What problem is most likely?
  2. Which data quality dimension asks whether every figure can be traced back to its source record?
  3. Why are period snapshots important?

Put it into practice

Map the data sources for a project you know: list each system, its owner, what it provides, its close date and the code that links it to the WBS.

Enrol for free to save your progress

Reading is always free. Enrol to keep your place, take the final assessment and earn a verifiable certificate.