Checklists for requirements/testing

Data Collection forms

  • Who should see the form? (roles/privileges? locations?)

  • What questions/answers should be on the form?

  • Order/grouping of questions?

  • display of historical data

  • After submission actions (e.g. program enrollment)

  • Field validations

  • Required fields

  • Precise labels for questions/answers/headings

  • Translations for labels

Lists/Tables in the EMR

  • Structure of the list (row-per-patient, per-order, per-referral etc…)

  • Criteria for inclusion on the list

  • Columns of the table

  • Filters

  • Sorting

  • Page defaults (sorting, filtering)

  • Pagination

  • actions from any rows (delete, cancel etc…)

  • Precise labels for all columns, buttons etc…

  • Any translations for labels, text etc…

  • Navigation to the page (how do users get to the page?)

  • Navigation from the page (should there be any links that navigate to other pages? patients? encounters? etc…)

Patient Program

  • Patient Workflows?

  • States within those workflows?

  • Patient outcomes?

  • labels/names for those

  • translations

  • Any automated enrollment?

  • Program-specific dashboard needed?

Data Warehouse “domain”

(considerations when designing new tables for a set of EMR data ) 

  • What is the nature of the data that needs to be reported?  (E.g. NCD Data, Patient demographics etc...) 

  • What tables/data structures would make it easy to report on this data?  

    • Patient-level tables (row-per-patient)

    • Encounter-level tables (row-per-form/encounter) 

    • Program-state-level tables (row-per-patient state change) 

    • Order-level tables (row-per-order tables) 

    • Combination of above 

  • Does this data exist already in the database? (e.g patient demographic data may already exist)  Would it be easier to duplicate this data in these new structures?  Is this logical? 

  • What data is better to be derived in the ETL and represented in the data vs derived in the downstream report?

    • How often is this derived data needed in reports?

    • Does this data always need to be derived in the same way or does the data vary? 

Data Warehouse Table

  • What do the rows represent?  (e.g. row-per-patient? row-per-encounter?  row-per-patient-state?  row-per-order etc...) 

  • What are the criteria for the rows?  (e.g. every patient enrolled in a certain program?  every encounter of a certain type? etc...) 

  • What are the columns? 

  • What are the columns named?  The name should be meaningful and also consistent with other tables in the database (e.g. there shouldn’t be both columns called “patient_birth_date” and “date_of_birth”) 

  • What are the allowable values for these columns?  Again, make sure they are consistent with other same-named columns.  (e.g. is_LTFU shouldn’t be yes/no on one table 1/0 on another and 1/null on a third...) 

  • What is the data definition of the columns? 

  • For columns with a direct source in the EMR, what is the precise source? 

    • From a certain form, set of forms, program attribute etc..? 

    • Is it from the latest version of the form?  The last time this question was answered?  On a specific form, set of forms or on any form?  

  • For derived columns what is the formula?