Confirming the build before the first participant is randomized
You confirm, in a test environment, that the vendor’s randomization and drug-supply build does exactly what your specs say, before a single real participant is randomized.
Operations-only, synthetic, no PHI. We say participant, not subject.
The workbook does not connect to the IRT. You transcribe on purpose, so the record is attributable and stands alone for an auditor.
Conjunctive: all critical pass AND 0 open critical/major defects AND 100% traceability.
Every number here comes from the validated data, never from an assistant.
RAND-02, stratified allocation. A good test has a specific, verifiable expected result, not “works correctly”.
| Severity | Meaning | Blocks go-live? |
|---|---|---|
| Critical | Could break the blind, mis-randomize, mis-dose, or corrupt integrity | Yes |
| Major | Significant functional error in a key workflow (resupply, wrong kit, missing alert) | Yes, until fixed |
| Minor | Cosmetic / non-functional (label typo, missing site number) | No; fix or waive with rationale |
One open Critical or Major defect holds the gate. That is the whole point: severity, not count, decides.
The interactive tool is a real R Shiny app you own:
Mark a test Pass/Fail, close a defect, and the KPIs and go-live gate recompute live. The gate math lives in shiny/R/logic.R, shared by the app, these slides, and the unit tests. Change the CSV to your study’s tests and it is your tracker.
Synthetic data throughout. UAT sign-off is a named-human decision.