Chapter 06 of 12 · Practical Leadership Handbook

Dry Run and Database Lock Readiness

How to turn the lock date into four checkable gates, so open decisions, late data and dry-run findings are dispositioned before lock instead of discovered during it.

Status
Author draft
Independent review
None yet · invited
Updated
2026-10-11
Reading time
about 9 min

Apply it nowBuild a database-lock readiness planTemplateReferences

The operational problem

Database lock is usually managed as a date on a plan. In practice it is the moment the analysis stops being able to absorb change. Whatever is still open at that moment, whether an analysis decision, a late data transfer, an unreconciled source or a dry-run finding nobody dispositioned, turns into one of three things: a lock blocker, a risk accepted without a record, or post-lock rework.

Three patterns show up often enough to plan for.

  1. Decisions arrive after implementation has started. How to handle a missing baseline value, which visit window applies, who is in a population: each is a small statistical decision, and each changes code, quality control (QC) and review.
  2. Data arrives in a state the programs have never run on. A final external transfer, a new coding dictionary version or a late protocol-deviation classification lands after the last dry run.
  3. Findings are seen but not owned. The dry run produced a list. Nobody was named to decide which items block lock, so the list is argued about on the last day.

The cost is more than delay. The team ends up making lock-day trade-offs with no evidence in front of it, and afterwards cannot show why a trade-off was reasonable.

Practical methodology

1. Work backwards from lock with four gates

A lock plan with one date invites one decision, made late. Four gates turn it into four earlier, smaller decisions. The offsets below match the database-lock plan in the Navigator; stretch or compress them for your study.

Four lock-readiness gates
GateDays before lockThe question it answersWhat it leaves behind
A. Baselineabout 15Which analysis decisions, data sources and standards are still open?Decision log with owners and latest acceptable dates; source list with final-transfer dates; specification status
B. Targeted checksabout 10Do the highest-risk derivations, populations and reconciliations hold on current data?Reconciliation results; derivation checks; QC status of priority outputs
C. Meaningful dry runabout 7On a representative cut, do the priority outputs run end to end, and are findings dispositioned?Dry-run log with triaged findings; timed rerun plan
D. Final checkpointabout 1Are the execution sequence, owners and escalation path agreed, and is every remaining item dispositioned?Sign-off record; final-run plan; open-item disposition

2. Give every open decision a latest acceptable date

A decision does not have a due date; it has a latest acceptable date: the last day it can land and still be implemented, independently checked and reviewed before lock. Calculate it backwards in working days:

latest acceptable date = lock date
    - (implementation + independent QC + review + buffer)

The buffer is the time you want to keep for one rerun, which is the idea behind protecting a plan with buffers rather than padding every task.[1] A decision that has passed its latest acceptable date is by definition a risk. There are only three honest responses: decide now, accept the risk in writing with a named owner, or move the date. "We are waiting on clarification" is not one of them.

3. Say what the dry run must prove, then size it

A dry run that shows the code runs proves little. Write a one-paragraph purpose before you plan it:

  • Representative cut. The latest data cut that contains every source in its final structure, even if some sources are not final in content.
  • Priority outputs. Primary and key secondary endpoints, safety summaries, and anything that feeds the clinical study report in-text tables.
  • What counts as a pass. Priority outputs run end to end; independent QC agrees on them; cross-source reconciliations hold; and the rerun path has been timed.

Population and handling decisions that depend on how intercurrent events are treated belong in the decision log at Gate A, not in the dry run.[2]

4. Triage findings into four classes, with a named decider

Finding classes
ClassDefinitionTypical exampleAction
Lock blockerCould change a primary or key result, or cannot be fixed after lockPopulation flag derived from a rule that has changedFix and re-verify before lock
Fix before lockDoes not change conclusions but is cheaper to fix nowLabel or ordering errors in a key tableFix; verify by targeted rerun
Accept with rationaleA known limitation with a documented, bounded impactA listing that truncates a long free-text fieldWritten rationale, approved by the named decider
Post-lockCosmetic or documentation items that do not touch locked data or resultsFootnote wordingBacklog item with an owner

The person who decides a finding's class is named in advance (typically the study statistician with the programming lead), and it is not the person who found it.

5. Reconcile external data against a cutoff, not a hope

For each external source (central laboratory, pharmacokinetics, ECG, ePRO, randomization system, imaging) record the final-transfer cutoff, the reconciliation check against the clinical database (subject and visit counts, key identifiers), and an owner. Decide in advance what happens to data that arrives after the cutoff: it is excluded and documented, or lock moves. Both are legitimate. Deciding on the day is not.

6. Close with evidence that was built as you went

Define the closure set early: decision log, dry-run log with dispositions, final-run log, QC evidence and approvals. Assembling it afterwards from memory takes longer than keeping it current, and it is weaker evidence.

7. Escalate on triggers set in advance

Write the triggers into the plan. Examples: a decision reaches its latest acceptable date still open; a priority output has no independent QC started at Gate C; an external source is unreconciled at Gate C; the number of lock blockers has not fallen between two checkpoints. A trigger fires an escalation with options and a recommendation, covered in the chapter on dependency, risk and escalation management.

A realistic example

A fictional study, ZEPHYR-101 (a made-up Phase 3 trial; all names, dates and numbers are synthetic), has a planned lock on Friday 30 October. The team sets Gate A on Thursday 15 October, Gate B on Tuesday 20 October, Gate C on Friday 23 October and Gate D on Thursday 29 October.

Gate A: the decision log. Six decisions are open. Working days are counted back from the lock date.

Open decisions at Gate A (synthetic)
IDDecisionOwnerImpl. + QC + review + buffer (working days)TotalLatest acceptable date
D-01Handling of a missing baseline weight in the primary endpoint derivationStudy statistician3 + 2 + 1 + 17Wed 21 Oct
D-02Visit window for the Week 12 assessmentStudy statistician2 + 1 + 1 + 15Fri 23 Oct
D-03Population flag for participants with a major protocol deviationStatistician with clinical lead4 + 2 + 1 + 18Tue 20 Oct
D-04Coding dictionary version for adverse eventsData management2 + 1 + 1 + 15Fri 23 Oct
D-05Censoring rule for a key time-to-event secondary endpointStudy statistician3 + 2 + 1 + 17Wed 21 Oct
D-06Layout of the concomitant medication listingProgramming lead1 + 1 + 1 + 03Tue 27 Oct

The log already tells the team something no timeline did: D-03 has the longest chain and the earliest deadline. It is the one to chase first.

Gate B: the first trigger. On Tuesday 20 October D-03 is still open, and today is its latest acceptable date. The trigger fires. The programming lead sends the study statistician and clinical lead a short brief with three options:

  1. Decide today and keep the lock date.
  2. Keep the current population rule for lock, document the alternative as a pre-specified sensitivity analysis to run afterwards, and record the decision.
  3. Decide on Friday 23 October and move lock to Wednesday 4 November, because the eight-working-day chain would then end three working days late.

The team picks option 2. Because it was decided at the latest acceptable date, nobody had to compress independent QC to make it work.

Gate C: the dry run and a late transfer. The Gate C dry run on Friday 23 October ran on laboratory transfer 2. Final transfer 3 was due on Wednesday 21 October but arrives on Tuesday 27 October. The safety laboratory outputs from the dry run therefore do not reflect final data. The team classifies this as a lock blocker for those outputs, schedules a two-day rerun and reconciliation, and fits it before the planned final run on Thursday 29 October.

The dry run produced 14 findings. Triage gave 2 lock blockers, 5 fix-before-lock, 3 accepted with rationale and 4 post-lock.

Four of the 14 dry-run findings (synthetic)
IDFindingClassDeciderAction
F-03Week 12 responder count differs from the independent QC programLock blockerStudy statisticianResolve; rerun both programs; record
F-07Subjects in the laboratory transfer missing from the clinical databaseLock blockerData managementQuery; reconcile on transfer 3
F-09Table footnote refers to the wrong populationFix before lockProgramming leadFix; targeted rerun
F-12Listing column wraps in the PDF outputPost-lockProgramming leadBacklog item

Gate D: the final checkpoint. On Thursday 29 October both blockers are closed with rerun evidence, the three accepted findings have signed rationale, and the final-run plan names the order of execution and who runs it. The team can state exactly what it is relying on: the decision log, the dry-run log with dispositions, QC evidence for priority outputs and the sign-off record.

Common failure modes

Failure modes and countermeasures
Failure modeHow it shows upCountermeasure
Lock treated as a date, not a chainEveryone "has until lock" for their partLatest acceptable dates per decision (method 2)
Dry run on a stale or unrepresentative cutRun passes; final data breaks itPurpose statement and representative cut (method 3)
"Zero open items" as the goalItems are closed, hidden or renamed to hit the numberMeasure "dispositioned", not "zero" (method 4)
Findings with no deciderLast-day argument about what blocksName the class decider before the dry run
Specification changes after Gate B without regression scopeA "small" change reopens verified outputsDefine regression scope for every late change before accepting it
External cutoff not enforcedFinal transfer arrives after the dry runCutoff per source, with the exclusion-or-move rule decided up front
Independent QC squeezed to the endQC starts after programming finishes; same person programs and checksSchedule QC by output priority and protect independence
Evidence assembled after lockGaps found with nobody left who remembersKeep the closure set current from Gate A
One person holds a derivationAbsence stops the milestoneName a second person for each priority derivation
Escalation by hallwayProblems raised informally, late and without optionsTriggers written into the plan (method 7)
  1. This week: list every open analysis decision for your next lock and give each an owner and a latest acceptable date. Sort by the earliest date.
  2. At Gate A: list every data source with its final-transfer cutoff and decide the rule for late arrivals.
  3. Before the dry run: write its purpose in one paragraph and name the priority outputs and the finding-class deciders.
  4. At Gate B: check every decision against its latest acceptable date; escalate any that are at or past it, with options.
  5. At Gate C: triage every finding into a class with a named decider; time the rerun path.
  6. At Gate D: confirm the closure set exists, the execution sequence is written down, and each accepted item has a signed rationale.
  7. After lock: review which decisions arrived after their latest acceptable date and why, and adjust the lead times you use next time.
  8. Make it repeatable: build the Navigator's database-lock plan for your dates and keep the log in Workspace so the plan and the evidence stay together.

Standards and agency expectations for the data you are locking are set elsewhere, for example by the standards guides and technical specifications that govern your submission.[3, 4, 5] Good clinical practice also expects quality to be designed in and proportionate to risk, which is the spirit of gating the effort where it can change a result.[6]

Template

Lock decision and open-item log

A log that gives every open decision a latest acceptable date, a triage class and a closure record. Example rows come from the synthetic study in this chapter; the blank rows calculate the date for you.

Download CSV template

IDItemOwnerLatest acceptable dateStatus at gate
D-01Handling of a missing baseline weight in the primary endpoint derivationStudy statistician2026-10-21Open at Gate B
D-02Visit window for the Week 12 assessmentStudy statistician2026-10-23Open at Gate B
D-03Population flag for participants with a major protocol deviationStatistician with clinical lead2026-10-20Open at Gate B
D-04Coding dictionary version for adverse eventsData management2026-10-23Open at Gate B
D-05Censoring rule for a key time-to-event secondary endpointStudy statistician2026-10-21Open at Gate B
D-06Layout of the concomitant medication listingProgramming lead2026-10-27Open at Gate B

Preview of the first 5 of 16 columns and 6 synthetic example rows. The download has all 16 columns, blank rows with formulas, and no study data.

Apply it

Apply it in the Navigator

The Handbook explains why and how to decide. The Navigator turns the same logic into dated, owned actions for your milestone, in your browser, with no study data.

Supporting references

References

  1. Goldratt EM. Critical Chain. North River Press; 1997.
  2. ICH. E9(R1) Addendum on estimands and sensitivity analysis in clinical trials to the guideline on statistical principles for clinical trials. Step 4, 2019. database.ich.org ↗
  3. CDISC. Analysis Data Model Implementation Guide (ADaMIG) version 1.3. www.cdisc.org ↗
  4. CDISC. Study Data Tabulation Model Implementation Guide (SDTMIG) version 3.4. www.cdisc.org ↗
  5. U.S. Food and Drug Administration. Study Data Technical Conformance Guide: Technical Specifications Document. www.fda.gov ↗
  6. ICH. E6(R3) Guideline for Good Clinical Practice. International Council for Harmonisation; 2025. www.ich.org ↗

Links go to the publisher's page. Standards and guidance change: confirm the version in force for your study, sponsor and region before relying on any reference. The worked examples are synthetic and illustrative; they are not benchmarks.

Review status

This chapter has not yet been independently reviewed

It is an author draft written from statistical programming leadership practice. No practitioner has reviewed it yet, and nothing here should be read as validated or endorsed by anyone else. If you work in this area, a 45-minute review using a synthetic scenario is the most useful thing you can do for it.

Review this chapter

Suggested citation: Shiva Kumar. 2026. “Dry Run and Database Lock Readiness”, in Clinical Statistical Programming Operations: A Practical Leadership Handbook, working edition 0.1. Clinical Data Readiness Navigator. Accessed [date].