Cohort Definition Tool
Contents |
[edit]
High-Level Specification
[edit]
Overview
[edit]
Requirements
- FR1 - Ability to base analysis on different entities other than Patient (i.e. Encounter, Observation, Users, Orders)
- FR2 - Ability to base analysis on 1..n objects
- FR3 - Ability to define a cohort by applying analysis filters to the a cohort (i.e. all patients)
- Example filter = "OBS:CD4 COUNT < 200"
- FR4 - Ability to define a cohort by specifying a single primary key of a single entity (patient ID)
- FR5 - Ability to define a cohort by specifying many primary keys of a single entity (list of patient IDs)
- FR6 - Ability to store and label a "static" cohort definition (defined in FR4, FR5)
- FR7 - Ability to store and label a "dynamic" cohort definition (defined in FR3)
- FR8 - Ability to edit a stored cohort definition
- FR9 - Ability to delete a stored cohort definition
- FR10 - Ability to duplicate a stored cohort definition
- FR11 - Ability to retrieve a cohort based on a cohort definition
- FR12 - Ability to retrieve a cohort by applying set operations (union, intersection, complement) to at least two cohort definitions (static or dynamic)
- FR13 - Ability to easily add another entity to an existing cohort
NOTE: We may need to think of another name besides Cohort, since Cohort implies a set of Patients. We want this tool to be general enough to be used for all domain objects.
What about something like "Grouping" or "Sample", with class Cohort extends Sample and EncounterSample extends Sample? Unfortunately, words like "Collection" or "Set" would get confusing with the JDK classes -callen
[edit]
Example of Usage
[edit]
Functional Requirements
[edit]
Use Cases
[edit]
