Lesson map
Lesson 02 published. Map, example, EX008.
flowchart TD
N0["Learning outcomes"]
N1["2.1 The state of the field"]
N2["2.2 Measuring a register"]
N3["2.3 Rules are decisions"]
N4["2.4 Positioning the contribution"]
N5["Lab — Quality dimensions of a synthetic business reg"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5
N5 --> EX["Worked example"]
EX --> Q["Exercise EX008"]
Logical drawing
flowchart LR
N0["Learning outcomes"]
N1["2.1 The state of the field"]
N2["2.2 Measuring a register"]
N3["2.3 Rules are decisions"]
N4["2.4 Positioning the contribution"]
N5["Lab — Quality dimensions of a synthetic business reg"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX008"]
[Learning outcomes]
|
v
[2.1 The state of the field]
|
v
[2.2 Measuring a register]
|
v
[2.3 Rules are decisions]
|
v
[2.4 Positioning the contribution]
|
v
[Lab — Quality dimensions of a synthetic business reg]
|
v
[Worked example] --> [Exercise EX008]
Learning outcomes
You will (1) review current debates in data governance research; (2) measure data quality dimensions on a synthetic register; (3) identify a gap for original work.
2.1 The state of the field
Nadia reviews the literature. Early work treated data quality as accuracy alone; Wang and Strong showed that data consumers also care about timeliness, relevance, accessibility and interpretability. Batini and colleagues compared assessment methodologies and found that most define dimensions, measure them and propose improvements, but differ in which dimensions they choose and how they weigh them. ISO 8000-8 sets out concepts and prerequisites for measuring information and data quality. Nadia notes that measurement methods are well developed, while research on who decides quality rules is thinner.
2.2 Measuring a register
To ground her review, Nadia measures three dimensions on a synthetic register of 5,000 businesses. The lab reports completeness of 0.798, validity of 0.937 and uniqueness of 0.966. Completeness is lowest because many records lack a sector code or postcode. Validity failures come from postcodes with letters and an unknown sector code. Uniqueness falls below one because some registration numbers appear twice. Each figure depends on a rule someone chose, such as whether a blank sector counts as missing or as a legitimate value. Rules matter as much.
2.3 Rules are decisions
Nadia shows Prof. Eriksen how the completeness score changes if blank sectors are allowed for newly registered firms. The number rises, although no record has changed. She argues that quality scores are partly governance outputs: they reflect decisions about rules, thresholds and exceptions. DAMA-DMBOK2 places data quality management within a governance framework for this reason. Nadia's literature map shows few empirical studies that trace how such rule decisions are made and how they shift published figures, which is the gap she will address.
2.4 Positioning the contribution
Nadia writes a positioning statement: existing research measures quality and proposes governance structures, but rarely links the two quantitatively in an official statistics setting. Her contribution will be a method that records decision rights, applies alternative rules on a synthetic replica and measures the effect on outputs. Prof. Eriksen challenges her to show why this matters beyond Westmark. She answers that any organisation publishing indicators from administrative data faces the same question of who decides what counts as good enough data. Westmark is the test case.
Lab — Quality dimensions of a synthetic business register
"""Score completeness, validity and uniqueness of a synthetic business register (stdlib only)."""
import random, re
random.seed(3)
rows = []
for i in range(5000):
reg = f"BR{i:06d}"
if random.random() < 0.03: reg = f"BR{random.randint(0, i):06d}" # duplicate ids
post = f"{random.randint(1000, 9999)}" if random.random() > 0.08 else ""
if random.random() < 0.04: post = "ABCD" # invalid
sector = random.choice(["A", "C", "F", "G", "J", "M", ""]) if random.random() > 0.02 else "Z9"
rows.append((reg, post, sector))
n = len(rows)
complete = sum(1 for r in rows if r[1] and r[2]) / n
valid = sum(1 for r in rows if re.fullmatch(r"\d{4}", r[1] or "0000") and r[2] in {"A","C","F","G","J","M",""}) / n
unique = len({r[0] for r in rows}) / n
print(f"records {n}")
print(f"completeness {complete:.3f} validity {valid:.3f} uniqueness {unique:.3f}")
Run with python3 lab_quality.py. Verified output:
records 5000
completeness 0.798 validity 0.937 uniqueness 0.966
Worked example
Nadia reviews quality literature, measures completeness 0.798, validity 0.937 and uniqueness 0.966 on 5,000 synthetic records, shows that rule choices move scores and positions her contribution.
Synthetic case. The register is synthetic; Wang and Strong (1996), Batini et al. (2009), ISO 8000-8:2015 and DAMA-DMBOK2 are real.
Errors and limits
Dimension scores depend on rule definitions; publish the rules with the scores.
Exercises
- EX008 — Beyond accuracy. What did Wang and Strong add to accuracy?
Show marking criteria
Rubric: 3 = timeliness, relevance, accessibility, interpretability;; 2 = two;; 1 = one;; 0 = none. - EX009 — Completeness. What completeness score did the lab report?
Show marking criteria
Rubric: 3 = 0.798;; 2 = partly correct;; 1 = wrong;; 0 = none. - EX010 — Lowest cause. Why is completeness lowest?
Show marking criteria
Rubric: 3 = missing sector codes or postcodes;; 2 = mentions missing;; 1 = vague;; 0 = none. - EX011 — Uniqueness cause. Why is uniqueness below one?
Show marking criteria
Rubric: 3 = duplicated registration numbers;; 2 = partly correct;; 1 = vague;; 0 = none. - EX012 — Score change. Why did completeness rise without any record changing?
Show marking criteria
Rubric: 3 = the rule for blank sectors changed;; 2 = mentions rule;; 1 = vague;; 0 = none. - EX013 — ISO 8000 role. What does ISO 8000-8 provide?
Show marking criteria
Rubric: 3 = concepts and prerequisites for measuring data quality;; 2 = mentions measuring;; 1 = vague;; 0 = none. - EX014 — Research gap. What gap does Nadia address?
Show marking criteria
Rubric: 3 = how rule decisions are made and shift published figures;; 2 = mentions decisions;; 1 = vague;; 0 = none.