Protocol Management

From CaisisWiki

(Difference between revisions)
Jump to: navigation, search
(Protocol Admin)
(Specimen Tab (v6.x))
 
(12 intermediate revisions not shown)
Line 1: Line 1:
=Protocol Management=
=Protocol Management=
Documentation for the Protocol Management module is in progress.
Documentation for the Protocol Management module is in progress.
 +
 +
==Protocol Identifiers==
 +
Patients who are screened, eligible and put on study will received identifiers which are use to track accrual and scheduling information.
 +
 +
===Participant Id===
 +
An identifier in the PatientIdentifiers table called '''ParticipantID ''' representing a unique Patient in Caisis.
 +
====Format====
 +
This # is generated in sequence starting from 100,000.
 +
====Trigger====
 +
'''Every''' patient who is screened through the Protocol Manager will receive a unique Participant Id.
 +
 +
===Screening Id===
 +
An identifier in the PatientProtocols table representing a patient that a patient has been screened (pass or fail).
 +
====Format====
 +
This # starts from 1 and increases by 1 as each patient is screened.
 +
====Trigger====
 +
'''Every''' patient screened through the Protocol Manager will receive a non-unique Screening Id. i.e., Patient X on 3 differnt Protocols will have 3 differnt Screening Ids.
 +
 +
===Study Id===
 +
An identifier in the PatientProtocols table representing a patient on a trial. An identifier in the PatientIdentifiers table is also created in the format "ProtocolNum-StudyId"
 +
====Format====
 +
This # starts from 1 for each Protocol and increases by 1 for each patient who has a status  '''Screening Passed'''.
 +
A Patient Identifier is also created matching this #, in the format "ProtocolNum-StudyI"
 +
====Trigger====
 +
'''Only''' patients who have a '''Screening Passed''' status will receive a Study Id.
 +
 +
===Example===
 +
Patient X
 +
*Protocol A: failed screening
 +
** '''ParticipantId''': 100,001 (unique per Patient)
 +
** '''ScreeningId''': 1 (increment by 1 system wide)
 +
** '''StudyId''': NONE (only valid if screening passed)
 +
 +
Patient Y
 +
*Protocol A: passed screening
 +
** '''ParticipantId''': 100,002 (unique per Patient)
 +
** '''ScreeningId''': 2 (increment by 1 system wide)
 +
** '''StudyId''': 1 (unique per Patient per Protocol)
 +
*Protocol B: failed screening
 +
** '''ParticipantId''': 100,002 (unique per Patient)
 +
** '''ScreeningId''': 3 (increment by 1 system wide)
 +
** '''StudyId''': NONE (only valid if screening passed)
 +
 +
Patient Z
 +
*Protocol A: passed screening
 +
** '''ParticipantId''': 100,003 (unique per Patient)
 +
** '''ScreeningId''': 4 (increment by 1 system wide)
 +
** '''StudyId''': 2 (unique per Patient per Protocol)
 +
*Protocol B: passed screening
 +
** '''ParticipantId''': 100,003 (unique per Patient)
 +
** '''ScreeningId''': 5 (increment by 1 system wide)
 +
** '''StudyId''': 1 (unique per Patient per Protocol)
 +
==Protocol List==
==Protocol List==
Line 29: Line 82:
====Timeline====
====Timeline====
This is where the Admin will define how many visits will occur and what items will be collected at each visits. This allows the Admin schedule items in any combination of intervals such as Days, Weeks and Months. Visits can also be marked as recurring, which will generate visits for '''x''' weeks.
This is where the Admin will define how many visits will occur and what items will be collected at each visits. This allows the Admin schedule items in any combination of intervals such as Days, Weeks and Months. Visits can also be marked as recurring, which will generate visits for '''x''' weeks.
 +
 +
[[Protocol Management Development#Timeline|Developer Info]]
 +
 +
===Removing Patients===
 +
After a Patient has been screened, assigned on placed on a Protocol, they may be removed. If the patient has been put on study, their visits (only mapping, but not data already in the system) will be removed.
 +
# Patient has been screened, assigned for a Protocol (but not assigned to schema)
 +
## Navigate to Patient Data Section, and delete Patient Protocol record
 +
# Patient has been screened, assigned for a Protocol and has been scheduled (On Study)
 +
## Navigate to the Protocol
 +
## Navigate to Protocol's Admin Options
 +
## Navigate to Protocol Version
 +
### This will list all Protocol Schema and the number of Patients on the Schema
 +
### Click on this number, which will then list the Patients on the schema
 +
### From here, you can click delete on the Patient, which will remove all schema specific patient mappings
 +
#### All visits and items collected on visit
 +
#### Patient Protocol Registration
 +
#### Patient Protocol Schema
 +
#### NOTE: This will not remove actual patient data already in the system, i.e., Labs, Encounters, etc...
 +
## Repeat step list above for Patient not assigned
==Protocol Patient Portal==
==Protocol Patient Portal==
Line 49: Line 121:
===Baseline Data===
===Baseline Data===
-
Enter baseline data for this patient.
+
Enter baseline data for this patient. This interface is a specialized dynamic eform/workflow (Table: MetadataEForms) with the eform name "Baseline".
===Schedule===
===Schedule===
Line 59: Line 131:
===Response===
===Response===
Track patient response data for this patient.
Track patient response data for this patient.
 +
== Customizations ==
 +
=== Restrict Protocol by User's Organization (v6.x) ===
 +
You can restrict a User's list of Protocols by associating them with an Organization, then associating that Organization with a Protocol/Project.
 +
 +
==== Edit Modules Configuration ====
 +
You will need to edit the ModulesRegistry.xml file to enable this feature.
 +
 +
<code>
 +
  <module name="Protocol Management" description="Manage protocols" isTab="true" isCore="false">
 +
    ...
 +
    <configuration>
 +
        <RestrictByUserOrganization>True</RestrictByUserOrganization>
 +
    </configuration>
 +
    ...
 +
  </module>
 +
</code>
 +
 +
=== Specimen Tab (v6.x) ===
 +
To enable access to the Specimen data entry interface, you will need to enable it per Protocol in the App_Data/ModulesRegistry.xml file. You will then need to grant the User Group/Role "ProtocolSpecimenUser" permission to be able to view this tab.
 +
 +
NOTES:
 +
# The Specimen's Tab will only show if the Specimen's Tab is enabled for the Protocol (ModulesRegistry.xml).
 +
# '''Standard''' and '''Admin Users''' will see the Patient related interfaces (i.e., visit, scheduling and data entry), and the Specimen's Tab if enabled for the Protocol.
 +
# '''Specimen Users''' will never see Patient related interfaces, and only see the Specimen's Tab if enabled for the Protocol.
 +
 +
==== Edit Modules Configuration ====
 +
Add a <Protocol> node to the ModulesRegistry.xml file with the match expression, i.e., "ProtocolNum = '01-2345'". You may also add wildcard matches, i.e., "ProtocolNum LIKE '01-%'" for Protocols where ProtocolNum starts with "01-"
 +
 +
<code>
 +
  <module name="Protocol Management" description="Manage protocols" isTab="true" isCore="false">
 +
    ...
 +
    <permissions>
 +
    ...
 +
        <permission name="ProtocolSpecimenUser" description="..."></permission>
 +
    </permissions>
 +
    <configuration>
 +
          ...
 +
          <EditSpecimens>
 +
              <Protocol match="ProtocolNum = '01-2345'"></Protocol>
 +
          </EditSpecimens>
 +
    </configuration>
 +
  ...
 +
  </module>
 +
</code>
 +
 +
==== Edit Role Permission ====
 +
Next you will have to grant the User Group's Role the permission "ProtocolSpecimenUser".
 +
 +
=Developer Information=
 +
 +
==Relevant Source Folders and Files==
 +
 +
===Data and SQL Files===
 +
#Caisis.DataAccess\ProtocolMgmtDa.cs
 +
#*Contains all relevant inline SQL and Stored Procedure calls for the Protocol Manager.
 +
#Caisis.DataAccess\DiagnosticDa.cs
 +
#*Used to retrieve relevant patient imaging/scan information, such as CT/MRI and Bone Scans used for driving the Patient Outcome interfaces.
 +
 +
===Base Classes and Controllers===
 +
#Caisis.UI\App_Code\Modules\ProtocolMgmt\
 +
#*Contains all relevant classes, including base classes, which control the populating of forms and passing of query parameters passed throughout the protocol manager.
 +
#*Includes classes which drive Patient related visit information on the calendar.
 +
#*Also includes controller logic for driving patient statues, copying protocol versions and schemas.
 +
 +
===User Interface===
 +
#Caisis.UI\Modules\ProtocolMgmt\
 +
#*Contains all the UI files (aspx, ascx, html, css, js) files relevant to the protocol manager, including various lists, calendar and patient relevant interfaces.
 +
#Caisis.UI\Plugins\SurveyPlugin
 +
#*The Survey Wizard is used to aid in entering survey information as part of a visit or an unplanned event.

Current revision as of 21:38, 13 December 2012

Contents

Protocol Management

Documentation for the Protocol Management module is in progress.

Protocol Identifiers

Patients who are screened, eligible and put on study will received identifiers which are use to track accrual and scheduling information.

Participant Id

An identifier in the PatientIdentifiers table called ParticipantID representing a unique Patient in Caisis.

Format

This # is generated in sequence starting from 100,000.

Trigger

Every patient who is screened through the Protocol Manager will receive a unique Participant Id.

Screening Id

An identifier in the PatientProtocols table representing a patient that a patient has been screened (pass or fail).

Format

This # starts from 1 and increases by 1 as each patient is screened.

Trigger

Every patient screened through the Protocol Manager will receive a non-unique Screening Id. i.e., Patient X on 3 differnt Protocols will have 3 differnt Screening Ids.

Study Id

An identifier in the PatientProtocols table representing a patient on a trial. An identifier in the PatientIdentifiers table is also created in the format "ProtocolNum-StudyId"

Format

This # starts from 1 for each Protocol and increases by 1 for each patient who has a status Screening Passed. A Patient Identifier is also created matching this #, in the format "ProtocolNum-StudyI"

Trigger

Only patients who have a Screening Passed status will receive a Study Id.

Example

Patient X

  • Protocol A: failed screening
    • ParticipantId: 100,001 (unique per Patient)
    • ScreeningId: 1 (increment by 1 system wide)
    • StudyId: NONE (only valid if screening passed)

Patient Y

  • Protocol A: passed screening
    • ParticipantId: 100,002 (unique per Patient)
    • ScreeningId: 2 (increment by 1 system wide)
    • StudyId: 1 (unique per Patient per Protocol)
  • Protocol B: failed screening
    • ParticipantId: 100,002 (unique per Patient)
    • ScreeningId: 3 (increment by 1 system wide)
    • StudyId: NONE (only valid if screening passed)

Patient Z

  • Protocol A: passed screening
    • ParticipantId: 100,003 (unique per Patient)
    • ScreeningId: 4 (increment by 1 system wide)
    • StudyId: 2 (unique per Patient per Protocol)
  • Protocol B: passed screening
    • ParticipantId: 100,003 (unique per Patient)
    • ScreeningId: 5 (increment by 1 system wide)
    • StudyId: 1 (unique per Patient per Protocol)


Protocol List

The main entry point for the Protocol Manager, the protocol list contains a list of all active Protocols as well as the number of Treatment Arms/Schemas per Protocol.

Protocol Patient List

Lists all Patients currently assigned to the Protocol (including Failed screenings). This list can be filtered by Treatment Arm or Patient Protocol Statuses.

Protocol Patient Calendar

A calendar view of the schedules of ALL Patients on a Protocol. The schedules can be viewed month by month basis, allowing the user to view past and upcoming visits. This view can be filtered by Treatment Arm.

Protocol Admin

Administer a Protocol by adding/editing Protocol information, versions, treatment arms and eligibility. The section allows a Protocol Admin to edit a protocol by giving access to add new versions to a Protocol, as well as new treatment arms.

Protocol Versions

Each Protocol may have multiple versions, in which each versions may have multiple Treatment Arms.

Eligibility Questionnaire

For each Protocol Version, there is an associated Survey (Table: MetadataSurvey), which controls the generation of the eligibility questionnaire.

Treatment Arm

Each version of a Protocol may have multiple treatment arms. The treatment arm is where the Admin will define the items which are collected during a visits as well as the schedule of the trial.

Treatment Arm Info

Define the title as well as max patient accrual (optional).

Items

Defines the visit and which data entry items are collected during the visit. The Admin can choose which fields are collected, default values as well as if items should appear as data grid (for collecting multiple data entry items).

Timeline

This is where the Admin will define how many visits will occur and what items will be collected at each visits. This allows the Admin schedule items in any combination of intervals such as Days, Weeks and Months. Visits can also be marked as recurring, which will generate visits for x weeks.

Developer Info

Removing Patients

After a Patient has been screened, assigned on placed on a Protocol, they may be removed. If the patient has been put on study, their visits (only mapping, but not data already in the system) will be removed.

  1. Patient has been screened, assigned for a Protocol (but not assigned to schema)
    1. Navigate to Patient Data Section, and delete Patient Protocol record
  2. Patient has been screened, assigned for a Protocol and has been scheduled (On Study)
    1. Navigate to the Protocol
    2. Navigate to Protocol's Admin Options
    3. Navigate to Protocol Version
      1. This will list all Protocol Schema and the number of Patients on the Schema
      2. Click on this number, which will then list the Patients on the schema
      3. From here, you can click delete on the Patient, which will remove all schema specific patient mappings
        1. All visits and items collected on visit
        2. Patient Protocol Registration
        3. Patient Protocol Schema
        4. NOTE: This will not remove actual patient data already in the system, i.e., Labs, Encounters, etc...
    4. Repeat step list above for Patient not assigned

Protocol Patient Portal

After a Patient has been successfully screened for a Protocol, the Patient portal will be available to enter trial details for the specific patient. Any details relating to a patient's statuses, eligibility, visit information, will be viewable from this interface.

Summary

View a summary for this patient, including current status and recent and upcoming items.

Patient Statuses

List of all of a Patient's status for a Protocol (sorted by date ascending). Statuses will correspond to various stages in the registration process, such as eligibility and consent.

Patient Visits

Lists recent and upcoming visits for a Patient. Clicking on a visit navigates to data entry for that visit.

Registration

View and edit information regarding patient screening, consent, and registration.

Eligibility

Enter eligibility questionnaire for this patient. The questionnaire is a special Survey (MetadataSurvey) which is used for determining the eligibility of a Patient. Answering ineligible to a question does not restrict a Patient from being scheduled for the trial.

Baseline Data

Enter baseline data for this patient. This interface is a specialized dynamic eform/workflow (Table: MetadataEForms) with the eform name "Baseline".

Schedule

View scheduling calendar for this patient. This interface allows the user to navigate each month of a Patient's scheduled visits. Data entry items are lists on days which the Patient is scheduled. Clicking on these items will directly link to the date entry for that visit.

Patient Visit

Update statuses and enter data for patient visits.

Response

Track patient response data for this patient.

Customizations

Restrict Protocol by User's Organization (v6.x)

You can restrict a User's list of Protocols by associating them with an Organization, then associating that Organization with a Protocol/Project.

Edit Modules Configuration

You will need to edit the ModulesRegistry.xml file to enable this feature.

 <module name="Protocol Management" description="Manage protocols" isTab="true" isCore="false">
   ...
   <configuration>
        <RestrictByUserOrganization>True</RestrictByUserOrganization>
   </configuration>
    ...
 </module>

Specimen Tab (v6.x)

To enable access to the Specimen data entry interface, you will need to enable it per Protocol in the App_Data/ModulesRegistry.xml file. You will then need to grant the User Group/Role "ProtocolSpecimenUser" permission to be able to view this tab.

NOTES:

  1. The Specimen's Tab will only show if the Specimen's Tab is enabled for the Protocol (ModulesRegistry.xml).
  2. Standard and Admin Users will see the Patient related interfaces (i.e., visit, scheduling and data entry), and the Specimen's Tab if enabled for the Protocol.
  3. Specimen Users will never see Patient related interfaces, and only see the Specimen's Tab if enabled for the Protocol.

Edit Modules Configuration

Add a <Protocol> node to the ModulesRegistry.xml file with the match expression, i.e., "ProtocolNum = '01-2345'". You may also add wildcard matches, i.e., "ProtocolNum LIKE '01-%'" for Protocols where ProtocolNum starts with "01-"

 <module name="Protocol Management" description="Manage protocols" isTab="true" isCore="false">
   ...
   <permissions>
   ...
       <permission name="ProtocolSpecimenUser" description="..."></permission>
   </permissions>
   <configuration>
         ...
         <EditSpecimens>
             <Protocol match="ProtocolNum = '01-2345'"></Protocol>
         </EditSpecimens>
   </configuration>
 ...
 </module>

Edit Role Permission

Next you will have to grant the User Group's Role the permission "ProtocolSpecimenUser".

Developer Information

Relevant Source Folders and Files

Data and SQL Files

  1. Caisis.DataAccess\ProtocolMgmtDa.cs
    • Contains all relevant inline SQL and Stored Procedure calls for the Protocol Manager.
  2. Caisis.DataAccess\DiagnosticDa.cs
    • Used to retrieve relevant patient imaging/scan information, such as CT/MRI and Bone Scans used for driving the Patient Outcome interfaces.

Base Classes and Controllers

  1. Caisis.UI\App_Code\Modules\ProtocolMgmt\
    • Contains all relevant classes, including base classes, which control the populating of forms and passing of query parameters passed throughout the protocol manager.
    • Includes classes which drive Patient related visit information on the calendar.
    • Also includes controller logic for driving patient statues, copying protocol versions and schemas.

User Interface

  1. Caisis.UI\Modules\ProtocolMgmt\
    • Contains all the UI files (aspx, ascx, html, css, js) files relevant to the protocol manager, including various lists, calendar and patient relevant interfaces.
  2. Caisis.UI\Plugins\SurveyPlugin
    • The Survey Wizard is used to aid in entering survey information as part of a visit or an unplanned event.
Personal tools