December 2 · Prove the inherited system is operable
MaDS Databases & SQL
One question will organize today
What evidence proves this is a transferred system—not merely a successful builder demo?
Course source and adaptation
Today’s acceptance test follows Alex Reinhart’s Project: Data Pipeline: schema design, runnable loaders, transactions, invalid-row handling, automated reporting, documentation, and paired handoff. Project requirements come from Professor McGovern’s July 6, 2026 brief.
By the end of class
You should be able to:
evaluate a pipeline from a receiver’s evidence,
distinguish reproducibility from a live demo,
test schema, load, query, and documentation contracts,
state client conclusions and evidence boundaries,
rehearse a concise builder/receiver readout.
Two projects; two roles
stint 1: build one client system ↓ November 13 knowledge transferstint 2: operate and extend the other system
From the handoff entry point, perform the smallest successful operation. Record only what the documentation told you before contacting builders.
Stop at the first undocumented dependency and classify it.
Classify transfer failures
Failure
Example
Access
role cannot see schema
Environment
dependency or secret name missing
Documentation
command/order ambiguous
Data contract
grain/unit/source unclear
Code
command fails in documented state
Evidence
result has no reproducible validation
Classification leads to a useful fix.
Reproduce one builder result
Require:
exact query/report version,
source snapshot or freshness time,
expected grain,
row count and date coverage,
one domain validation,
explanation of any discrepancy.
“Looks similar” is not reproduction.
Checkpoint 2 · Reproduction duel
Receiver runs one documented client result. Builder predicts its validation values before the run. Compare and explain every difference.
Schema acceptance
Can the receiver answer:
What does one row mean in each important table?
Which keys define identity?
Which values are raw, cleaned, or derived?
What are the units and geographic/time coverage?
Which constraints encode truth?
Pipeline acceptance
Can the receiver:
run a small safe refresh,
repeat it without duplicate damage,
find rejected records,
see step-level status,
recover from an intentional failure,
know when results are publishable?
Query/report acceptance
Does each important result state:
client question,
query parameters,
grain and denominator,
important exclusions,
source freshness,
uncertainty or proxy boundary?
Project-specific truth tests
Climate: distinguish frequency from severity; account for missing/encoded damage; avoid treating all event records as comparable exposure.
EV: do not infer measured transformer/substation capacity from public proxy data; label eGRID timing and site-context limits.
A useful extension changes behavior
Receiver extension should have:
client need → baseline → change → acceptance test → result → limitation
The second-half topic is a means, not the accomplishment.
Checkpoint 3 · Five-minute readout
Give a five-minute receiver readout: client decision, cold-start result, reproduced evidence, extension, and one unresolved boundary.
Listeners write the first claim they could not independently verify.
Final presentation · recommended shape
Client and decision · 1 minute
What we built · 2 minutes
How it transferred · 2 minutes
What we inherited and reproduced · 3 minutes
Receiver extension · 2 minutes
Limit and next decision · 1 minute
Keep backup slides for schema and technical detail.
Demo design
Pre-stage:
known-safe environment,
smallest-success command,
validation output,
one client query,
static backup evidence.
A backup is professionalism, not surrender.
What not to hide
source data gaps,
unverifiable proxy claims,
manual steps,
transfer failures,
queries that changed after handoff,
improvements not yet tested.
The course rewards honest system boundaries.
Final submission checklist
Professor McGovern Parts I and II
repository and artifact version
ER diagram and data dictionary
ingestion and validation evidence
eight-query library and Python entry point
runbook and known issues
KT evidence and cold-start log
receiver extension and acceptance test
final client readout
The pattern to keep
receive cold → reproduce exactly → classify transfer failures → extend for a client need → test changed behavior → state limits → hand off better next time
The final product is not only a database. It is a system another team can understand, operate, and question.