next up previous contents
Next: AssessmentManagementAction Up: GAME Previous: GAME   Contents

AssessmentManagementHelper

The AssessmentManagementHelper class is responsible for preparing/querying meta data for the form handling by accessing/modifying the form bean via Java Reflection. The AssessmentManagementHelper class is a singleton discovering and keeping a cache of form bean metadata lazily initialized at the first time the singleton is accessed. The discovery and caching mechanism can be summarized as follows:
  1. From the package name, determine the full path of the class files for the form beans.
  2. For each form bean detected
    1. question the form bean class about its assessment data as stored in the database and form page variable mapping information.
The form bean package is currently set to clinical.web.game.forms. All the CALM generated form beans are stored under this package. For each form bean, its metadata is stored in an object of class type FormBeanInfo. This object groups metadata per form page. For an online assessment, each page of the paper form is mapped (by convention) to two JSPs (one for the online form and one for Tiles template engine) both generated by CALM and stored under $CLINICAL_HOME/web/pages/assessment directory. For each assessment there is a single form bean generated by CALM and put under $CLINICAL_HOME/src/clinical/web/game/forms directory.

A particular FormBeanInfo object holds PageVariableInfo objects for online form property name to database score name mapping, PageQuestionInfo objects for question related metadata and MandatoryFieldMetaData objects to hold metadata associated with mandatory fields in the form. The question types currently supported are as follows;

  1. single-answer, single score
  2. single-answer, multiple score
  3. multiple-answer, single score
  4. multiple-answer, multiple score
A PageVariableInfo object holds the form property name associated with the corresponding score in the database for the assessment, the corresponding score name as in the database, the page number on which the form property value displayed/retrieved and an optional lookup table for metadata associated with the form property(page variable) as name-value pairs.

A PageQuestionInfo object holds the question number as assigned by CALM, question type (single-answer or multiple-answer), list of score name(s) (as in the database) associated with this question, the minimum and maximum number of answers allowed if the question is a multiple-answer one, a lookup table for score name and corresponding ID association used for web form hidden field name generation if the question is a multiple-answer one, and the page number on which the question will be displayed. GAME numbers pages internally starting from one.

A MandatoryFieldMetaData object holds the mandatory field name and an optional lookup table for metadata associated with the mandatory field as name-value pairs. One usage scenario is for dynamic dropdown for the clinical rater to associate an SQL query with the mandatory field to dynamically populate the corresponding dropdown.


next up previous contents
Next: AssessmentManagementAction Up: GAME Previous: GAME   Contents
Burak Ozyurt 2008-03-28